Memory HierarchyMemory 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:
- 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.
- 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.
- ACCESS TIME;
- Greater capacity, smaller cost per bit;
- Greater capacity, greater access time;
- Smaller access time, greater cost per bit;
Random-Access Memory (RAM)
- 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.
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.
- 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.
- Enhanced DRAM;
- Cache DRAM;
- Synchronous DRAM;
- Rambus 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.
- 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.
- 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.
- 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.
Semiconductor chips are used for main memory
|Memory Type||Category||Erasure||Write Mechanism||Volatility|
|RAM||Read-write memory||Electrically, byte level||Electrically||Volatile|
|ROM||Read-only memory||Not possible||Masks||Non- Volatile|
|EPROM||Read-mostly memory||UV light, chip level|
|Flash memory||Electrically, block-level|
|EEPROM||Electrically, byte level|