AAST-CC312-Fall 21-Lec 11
AAST-CC312-Fall 21-Lec 11
Fall 2021
Lecture 11
Memory Organization
(
• The memory unit is an essential component in any digital computer since it is needed for storing
programs and data.
• The memory unit that communicates directly with the CPU is called the main memory.
• Devices that provide backup storage are called auxiliary memory.
• They are used for storing system programs, large data files, and other backup information.
• Only programs and data currently needed by the processor reside in main memory.
• All other information is stored in auxiliary memory and transferred to main memory when
needed.
• A special very-high-speed memory called a cache is sometimes used to increase the speed of
processing by making current programs and data available to the CPU at a rapid rate.
Memory Hierarchy
(
Auxiliary memory
Magnetic
tapes I/O Main
processor memory
Magnetic
disks
CPU Cache
memory
Main Memory
(
It is a relatively large and fast memory used to store programs and data during the computer operation.
The principal technology used for the main memory is based on semiconductor integrated circuits.
Integrated circuit RAM chips are available in two possible operating modes:
The static RAM consists essentially of internal flip-flops that store the binary information.
The dynamic RAM stores the binary information in the form of electric charges that are applied to capacitors.
Access Methods
Random
e.g. RAM
Associative
e.g. cache
Block diagram of RAM
❑ For example, a 224 x 16 RAM contains 224 = 16M words, each 16 bits long.
The RAM would need 24 address lines.
The total storage capacity is 224 x 16 = 228 bits.
Many data-processing applications require the search of items in a table stored in memory.
memory (CAM).
When a word is to be read from an associative memory, the content of the word, or part of
The memory locates all words which match the specified content and marks them for reading.
Associative Memory
The block diagram of an associative memory is shown in Fig(30):
Example
• suppose that the argument register A and the key register K have the bit configuration shown below.
• Only the three left most bits of A are compared with memory words because K has l's in these
positions.
Cache Memory
If the active portions of the program and data are placed in a fast small memory, the average
memory access time can be reduced, thus reducing the total execution time of the program.
If the word is found in the cache, it is read from the fast memory.
If the word addressed by the CPU is not found in the cache, the main memory is accessed to read the
word.
The performance of cache memory is frequently measured in terms of a quantity called hit ratio.
When the CPU refers to memory and finds the word in cache, it is said to produce a hit.
If the word is not found in cache, it is in main memory and it counts as a miss.
Cache Read Flowchart
Cache and Main Memory
Cache and Main Memory
Year of
Processor Type L1 cache L2 cache L3 cache
Introduction
IBM 360/85 Mainframe 1968 16 to 32 KB — —
PDP-11/70 Minicomputer 1975 1 KB — —
VAX 11/780 Minicomputer 1978 16 KB — —
IBM 3033 Mainframe 1978 64 KB — —
IBM 3090 Mainframe 1985 128 to 256 KB — —
Intel 80486 PC 1989 8 KB — —
Pentium PC 1993 8 KB/8 KB 256 to 512 KB —
PowerPC 601 PC 1993 32 KB — —
PowerPC 620 PC 1996 32 KB/32 KB — —
PowerPC G4 PC/server 1999 32 KB/32 KB 256 KB to 1 MB 2 MB
IBM S/390 G4 Mainframe 1997 32 KB 256 KB 2 MB
IBM S/390 G6 Mainframe 1999 256 KB 8 MB —
Pentium 4 PC/server 2000 8 KB/8 KB 256 KB —
High-end server/
IBM SP 2000 64 KB/32 KB 8 MB —
supercomputer
CRAY MTAb Supercomputer 2000 8 KB 2 MB —
Itanium PC/server 2001 16 KB/16 KB 96 KB 4 MB
SGI Origin 2001 High-end server 2001 32 KB/32 KB 4 MB —
Itanium 2 PC/server 2002 32 KB 256 KB 6 MB
IBM POWER5 High-end server 2003 64 KB 1.9 MB 36 MB
CRAY XD-1 Supercomputer 2004 64 KB/64 KB 1MB —
Thank you