Computer memory is organized into a hierarchy. At the highest level (closest to the processor) are the processor registers. Next comes one or more levels of cache. When multiple levels are used, they are denoted L1, L2, etc… Next comes main memory, which is usually made out of a dynamic random-access memory (DRAM). All of these are considered internal to the computer system. The hierarchy continues with external memory, with the next level typically being a fixed hard disk, and one or more levels below that consisting of removable media such as ZIP cartridges(خراطيش), optical disks, and tape. As one goes down the memory hierarchy, one finds decreasing cost/bit, increasing capacity, and slower access time. It would be nice to use only the fastest memory, but because that is the most expensive memory, we trade off access time and cost by using more of the slower memory. The trick is to organize the data and programs in memory so that the memory words needed are usually in the fastest memory. In general, it is likely that most future accesses to main memory by the processor will be to locations recently accesses. So the cache automatically retains a copy of some of the recently used words from the DRAM. If the cache is designed properly, then most of the time the processor will request memory words that are already in the cache. 2. Computer Memory System Overview
Characteristics of Memory Systems
Location| • Processor• Internal – main memory• External – secondary memory| Capacity| * Word size – natural unit or organization * Number of words – number of bytes| Unit of Transfer| • Internalo Usually governed by bus width• Externalo Usually a block which is much larger than a word• Addressable unito Smallest location which can be uniquely addressedo Cluster on external disk| Access Methods| • Sequential – tapeo Start at the beginning and read through in ordero Access time depends on location of data and previous location• Direct – disko Individual blocks have unique addresso Access is by jumping to vicinity plus sequential searcho Access time depends on location of data and previous location• Random – RAMo Individual addresses identify location exactlyo Access time is independent of data location and previous location• Associative – cacheo Data is located by a comparison with contents of a portion of the storeo Access time is independent of data location and previous location| Performance| • Access time (latency)o The time between presenting an address and getting access to valid data• Memory Cycle time – primarily random-access memoryo Time may be required for the memory to “recover” before the next accesso Access time plus recovery time• Transfer rateo The rate at which data can be transferred into or out of a memory unit| Physical Types| • Semiconductor – RAM• Magnetic – disk and tape• Optical – CD and DVD• Magneto-optical| Physical Characteristics| • Volatile/non-volatile• Erasable/non-erasable• Power requirementsOrganization• The physical arrangement of bits to form words• The obvious arrangement is not always used|
*The most important characteristic of memory is capacity and performance
3. The Memory Hierarchy
The design constrain on computer’s memory can be summed by three questions • How much?
o If the capacity is there, applications will be developed to use it. • How fast?
o To achieve performance, the memory must be able to keep up with the processor. • How expensive?
o For a practical system, the cost of memory must be reasonable in relationship to other components There is a trade-off among the three key characteristics of memory: cost, capacity, and access time. • Faster access time – greater cost per bit
• Greater capacity – smaller cost per bit
• Greater capacity – slower access time
The way out of this dilemma is not to rely on a single memory component or technology. Employ a memory hierarchy. As...