---------------------------------------------------------- Permission is granted for article below to forward, reprint, distribute, use for ezine, newsletter, website, offer as free bonus or part of a product for sale as long as no changes are made and byline, copyright, and resource box below is included. ----------------------------------------------------------Understanding Computer Memory
By Stephen Bucaro
Understanding computer memory is important because your computer's memory is where action is. Sure your computer's central processing unit (CPU) may be computer's brain, but what good is a brain without memory?
Because memory is such an important part of computer, it has been redesigned and tweaked over years to make it store more data and work faster. That has resulted in all kinds of technical terms and contractions. In this article, I attempt to clear up some of these terms and give you a basic understanding of computer memory.
When you work with an application on your computer, it is loaded into "main memory". There are other kinds of memory besides main memory. For example, there is "flash BIOS" memory and "cache" memory. In fact, I could argue that a computer consists mainly of memory. Even CPU consists mainly of a type of memory called "registers". In this article, I focus on main memory.
Memory is actually an array of "cells". Each cell holds a binary bit, either 0 or 1. The cells are arranged in rows of 32 cells to store each "word". A word might contain bits to code a single number or a single character. Each word can be accessed by it's address. A computer does not have to access addresses in numerical order. It can store or retrieve a word from any address at random, hence term "random access memory" (RAM).
Because a computer needs millions of memory cells, they have to be cheap. The cheapest memory cell is an extremely tiny capacitor. In reality "0" means no electric charge is stored in cell and "1" means an electric charge is stored in cell.
A tiny capacitor can store an electric charge, but that charge dissipates off within a few milliseconds. To prevent loss of data, computer uses circuitry that repeatedly scans all memory cells and refreshes charge in any cells that contain a "1". This circuitry operates between accesses of memory by CPU and other components. This continuous recharging is referred to as "dynamic" refresh, hence term "dynamic" RAM (DRAM).
I am always surprised at how many people who work with computers don't understand what a "bus" is. It's very simple. You need a wire to connect to a memory cell. Instead of a wire, a circuit board uses a copper "trace" inside or on surface of circuit board. To access a word of data, you need 32 parallel traces. You also need a few traces to carry signals that control whether you are reading or writing memory. This describes "data bus".
To access a word of data, you need to provide address of word. It requires 64 parallel traces for "address bus". There are many other parallel groups of traces on circuit board that conduct various communication and control signals, each of them is referred to as a "bus". The most important signal tracing around circuit board is system clock.