The goal of memory hierarchy is to achieve the highest possible access speed while minimizing the cost of the entire memory system.
Components of memory hierarchy include:
Main Magnetic Memory: Magnetic memory tapes used for data.
I/O Processors: Manage input/output operations for the CPU.
Cache Memory: Fast storage.
Magnetic CPU Disk Storage: Commonly used storage types with varying capacities (e.g., 1KB, 1GB).
Access speed is essential for performance.
Main Memory includes:
RAM (Random Access Memory) and ROM (Read-Only Memory) chips.
A typical setup may include chipselect (CSI ESI) which addresses data bits.
RAM configurations use various chips:
Dynamic RAM (DRAM) and Static RAM (SRAM)
PROM (Programmable ROM), EPROM (Erasable Programmable ROM), and EEPROM (Electronically Erasable Programmable ROM).
The connection to the CPU is crucial for the performance of the programs running on it.
Also known as backup storage, consists of devices like:
DVD, CD, floppy disks, and pendrives.
Features the use of tracks and read/write heads for magnetic disks.
Content Addressable Memory (CAM) allows for:
Fast data retrieval by specifying content rather than the address.
Key Registers such as Augment Register (A), Key Register (k), and Match Register (M) manage data matching during retrieval.
Block Diagram illustrates the structure of associative memory.
Designed for speed, typically with 32K x 12 data bits.
Cache memory improves access time by serving frequently used data from a faster, smaller retail memory.
Hit Ratio calculation: No. of hits / (No. of hits + No. of misses).
Miss: When requested data is not found in cache;
Hit: When the requested data is found in cache.
Associative Mapping:
Utilizes the address in the argument register (A).
Example: 15 bits for CPU address, transforming data into cache memory for quicker retrieval.
Direct Mapping:
Maps each block of main memory to a specific block of the cache.
Involves tag and index for efficient data fetching.
Set Associative Mapping:
Combines features of both associative and direct mapping to improve cache hits.
Virtual memory allows programs to act as if they have access to a large memory space despite actual physical constraints.
It enables the user to work with larger datasets by managing data between auxiliary and main memory.
Auxiliary Memory: Long-term storage where programs/data initially reside.
Physical Address & Virtual Address: Managing memory mapping to enhance performance.
Address space is determined based on the overall memory architecture (e.g., 32K, 1024K).
Structured with main registers and memory tables.
The virtual memory address mapping connects virtual addresses to physical memory locations through a table that includes lines for blocks of memory.
Each block in the virtual and physical addresses is correlated, providing efficient retrieval and use of memory resources.