Memory

There are various types of computer memory all of which are used to hold binary strings of data to be manipulated by the CPU. These types of memory can be divided into two major classes of computer memory: non-volatile memory and volatile memory.

Non-volatile Memory is retained even if the power to the computer is shut off. Read Only Memory (ROM), generally installed by the vendor of the computer during the process of manufacturing the motherboard or secondary components that need to retain code when the machine is turned off is non-volatile memory. With the use of ROM, information that is required to start and run the computer cannot be lost or changed. In the modern computer ROM is used to hold the instructions for performing the POST routine and the BIOS information used to describe the system configuration.

Volatile Memory is lost when the computer loses power. Random Access Memory (RAM) is the form of volatile memory used to hold temporary instructions and data for manipulation while the system is running. The term random is applied because the CPU can access or place data to and from any addressable RAM on the system. If power to the system is lost, all data held in RAM is lost.

The most common forms of RAM used in the modern computer are dynamic RAM (DRAM) and the newer synchronous DRAM (SDRAM).

DRAM works by using a microscopic capacitor and a microscopic transistor to store each data bit. A charged capacitor represents a value of 1, and a discharged capacitor represents a value of 0.

A capacitor works like a battery in that it holds a charge and then releases it; but unlike a battery, the capacitors in DRAM hold their charges for only fractions of a second. Therefore, DRAM needs an entire set of circuitry to keep the capacitors charged. The process of recharging these capacitors is called refreshing. Without refreshing, the data would be lost.

When a block of code or data that is held in memory is directly accessible to the CPU for reference or manipulation, it is called active memory. When data is located outside the computer system’s active memory, it is said to be in storage. Storage devices include floppy disk and hard disk drives, optical media and tape units.

Active memory is faster than storage because the information is already on the system, there are fewer physical and no mechanical operations involved in obtaining the data, and the CPU has direct control over the memory.

All computer CPUs handle data in 8-bit blocks. Each block, known as a byte, denotes how many bits the CPU can move in and out of memory at one time. The number is an indication of how rapidly data can be manipulated and arranged in system memory. Each transaction between the CPU and memory is called a bus cycle.

The amount of memory that a CPU can address in a single bus cycle has a major effect on overall system performance and determines the design of memory that the system can use. The width of the system’s memory bus must match the number of data bits per cycle of the CPU.

Next: ROM