Monday, May 16, 2011

Memory Hierarchy

Memory Hierarchy

Memory unit is an essential component in any digital computer as it is needed for storing programs and data. A computer is equipped with a hierarchy of memory subsystems, some internal to the system (directly accessible by the processor), and some external (accessible by the processor via an I/O module).

External memory consists of peripheral storage devices, such as disk and tape, that are accessible to the CPU via I/O controllers. External memory can also be referred as secondary memory or auxiliary memory.

Internal memory is equated with main memory. But there are other forms of internal memory like CPU requires its own local memory in the form of registers. Internal memory is also called as main memory/Primary memory.

Main memory can be classified as:
  1. Volatile:
    • RAM (Random Access Memory);
    • RAM is working memory. Data can be read or written in RAM with the help of address location and when the data is no longer needed we can use the storage location for writing again;
    • Contents of volatile memory are vanished when power supply is switched off.
  2. Non Volatile:
    • ROM (Read Only Memory);
    • It is useful to have instructions that are used often , permanently stored inside the computer. Programs and data on the ROM are not lost if the computer is powered down.
There are three key characteristics of memory:
  • COST;
The relationship between them is as follows:
  • Greater capacity, smaller cost per bit;
  • Greater capacity, greater access time;
  • Smaller access time, greater cost per bit;
The overall goal of using a memory hierarchy is to obtain the highest possible average access speed while minimizing total cost of entire memory system.

Memory hierarchy

Memory hierarchy

Random-Access Memory (RAM)

Key features
  • RAM is packaged as a chip;
  • Basic storage unit is a cell (one bit per cell);
  • Multiple RAM chips form a memory;
  • It is possible to both read data from and write data to memory easily and rapidly.
Two additional forms of RAM are as follows:

Static RAM (SRAM)
  • Each cell stores bit with inverter, transistor circuit;
  • Retains value indefinitely, as long as it is kept powered;
  • Relatively insensitive to disturbances such as electrical noise;
  • Faster and more expensive than DRAM;
  • Access time is about 10 ns;
  • Used for cache memory.
Dynamic RAM (DRAM)
  • Each cell stores bit with a capacitor and transistor;
  • Because the capacitors have a natural tendency to discharge, value must be refreshed every 10-100 ms;
  • Sensitive to disturbances;
  • Slower and cheaper than SRAM;
  • Read and write operations are suspended when the refresh cycle is going on, this increases the effective access time to 50ns;
  • Used for main memory.
Advanced DRAM Organization
  • Enhanced DRAM;
  • Cache DRAM;
  • Synchronous DRAM;
  • Rambus DRAM.
Enhanced DRAM
  • Simplest of new DRAM architectures;
  • Developed by Ramtron;
  • Integrates a small SRAM cache onto a DRAM chip;
  • Refresh operation can be conducted in parallel with cache read operation;
  • It has separate read path and write path so it enables a subsequent read access to cache in parallel with the completion of write operation.
Cache DRAM
  • Developed by Mitsubishi;
  • Similar to EDRAM, includes a larger SRAM cache than the EDRAM;
  • SRAM on CDRAM can be used as either true cache or as a buffer to support the serial access to a block of data.;
  • Buffer stores most recently accessed data.
Synchronous DRAM
  • Jointly developed by no of companies;
  • It exchanges data with the processor synchronized to an external clock signal;
  • It runs at speed equivalent to that of processor/memory bus without imposing wait states;
  • Data moves in and out from DRAM under the control of system clock;
  • It has dual bank internal architecture;
  • SDRAM includes important key features like Mode register and associated control logic. It provides a mechanism to customize SDRAM according to system needs;
  • It performs best when transferring large blocks of data serially, e.g. in word processing, multimedia etc.
Rambus DRAM
  • Developed by Rambus;
  • RDRAM chips are vertical packages, with all pins on one side;
  • Fastest current memory technologies used by PCs. Normally SRAM can deliver data at a maximum speed of about 100 MHz, RDRAM transfers data at up to 800 MHz;
  • RDRAM is used with Pentium III Xeon processors and more recently it is being used with Pentium 4 processors.
Type of Main Memory

Semiconductor chips are used for main memory

Memory TypeCategoryErasureWrite MechanismVolatility
RAMRead-write memoryElectrically, byte levelElectricallyVolatile
ROMRead-only memoryNot possibleMasksNon- Volatile
EPROMRead-mostly memoryUV light, chip level
Flash memoryElectrically, block-level
EEPROMElectrically, byte level