---------------------------------------------------------- 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.