Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Memory Subsystem Organization 1.3.

2
MEMORY SUBSYSTEM ORGANIZATION
MEMORY HIERARCHY
A memory system is a hierarchy of storage devices with different capacities, costs, and access times.
CPU registers hold the most frequently used data. Small, fast cache memories nearby the CPU act as
staging areas for a subset of the data and instructions stored in the relatively slow main memory.
Memory is categorized into volatile and non-volatile memories, with the former requiring constant
power ON of the system to maintain data storage.
Furthermore, a typical computer system provides a hierarchy of different times of memories for data
storage.

Fig.3.5 Hierarchy of Memory

Different levels of the memory hierarchy


Cache (MB): Cache is the fastest accessible memory of a computer system. It's access speed is in the
order of a few nanoseconds. It is volatile and expensive, so the typical cache size is in the order of
megabytes.
Main memory (GB): Main memory is arguably the most used memory. When discussing computer
algorithms such as quick sort, balanced binary sorted trees, or fast Fourier transform, one typically
assumes that the algorithm operates on data stored in the main memory. The main memory is
reasonably fast, with access speed around 100 nanoseconds. It also offers larger capacity at a lower
cost. Typical main memory is in the order of 10 GB. However, the main memory is volatile.
Secondary storage (TB): Secondary storage refers to nonvolatile data storage units that are external to
the computer system. Hard drives and solid state drives are examples of secondary storage. They offer
very large storage capacity in the order of terabytes at very low cost. Therefore, database servers
typically have an array of secondary storage devices with data stored distributed and redundantly
across these devices. Despite the continuous improvements in access speed of hard drives, secondary
storage devices are several magnitudes slower than main memory. Modern hard drives have access
speed in the order of a few milliseconds.
Tertiary storage (PB): Tertiary storage refers storage designed for the purpose data backup. Examples
of tertiary storage devices are tape drives are robotic driven disk arrays. They are capable of petabyte
range storage, but have very slow access speed with data access latency in seconds or minutes.
Data movement
In order to perform computation, data must travel from the secondary storage to the CPU. Due to the
vast differences in access speed and storage capacity, the operating system performs a series of
sophisticated steps (both at the levels of hardware and the software).
Move data to and from secondary storage
The hard drive has a local data cache. Because the hard drive access speed is so much slower, disk
access is normally done asynchronously at the hardware level. The hard drive will be instructed to
fetch or save data from a physical location of a certain size. The hard drive controller will
acknowledge the instruction right away, and will take some time to populate the disk cache with the
requested data block, and then, at a later time, raise an interrupt to notify the interested party that the
data access is complete. This model of interrupt-based data transfer is asynchronous.
The data transfer speed (from memory to hard drive or vice versa) depends on:
Contiguousness of the accessed physical locations on the disk
The size of the accessed data per request
Performance characteristics
The mechanical design of the hard drive naturally leds itself to superior sequential access.
A hard drive consists of an (array of) rotating disk. Each disk has a head driven by a mechanical arm
which performs the bitwise read and write. If a sequential data block is accessed, all bits can be read
or written during a single rotation.
However, random access of the hard drive data may require multiple rotations for the head to reach all
the regions on the disk.
Homework (Assessment-MCQ Based)
Q1. If we want to perform memory or arithmetic operations on data in Hexa-decimal mode then we
use _________ symbol before the operand.
A. ~
B. !
C. $
D. *
Answer: C
Q2. When generating physical addresses from a logical address the offset is stored in __________
A. Translation look-aside buffer
B. relocation register
C. Page table
D. Shift register
Answer: B
Q3. The technique used to store programs larger than the memory is ____________
A. Overlays
B. Extension registers
C. Buffers
D. Both Extension registers and Buffers
Answer:A
Homework (Assessment-Theory Based)
Q1. A first-in-first-out (FIFO) has a memory organization that stores information in such a manner
that the item that is stored first is the first item that is retrieved. Show how a FIFO memory operates
with three counters. A write counter WC holds the address for writing into memory. A read counter
RC holds the address for reading from memory. An available storage counter ASC indicates the
number of words stored in FIFO. ASC is incremented for every word stored and decremented for
every item that is retrieved.
Q2. A computer has 32-bit instructions and 12-bit addresses. If there are 250 two-address instructions,
how many one-address instructions can be formulated?

References
Reference Books:

 J.P. Hayes, “Computer Architecture and Organization”, Third Edition.

 Mano, M., “Computer System Architecture”, Third Edition, Prentice Hall.

 Stallings, W., “Computer Organization and Architecture”, Eighth Edition, Pearson Education.
Text Books:

 Carpinelli J.D,” Computer systems organization &Architecture”, Fourth Edition, Addison


Wesley.

 Patterson and Hennessy, “Computer Architecture”, Fifth Edition Morgaon Kauffman.


Other References

 http://cms.gcg11.ac.in/attachments/article/93/Memory%20Organization.pdf
 https://www.slideshare.net/ishapadhy/memory-organization-73277070
 https://upscfever.com/upsc-fever/en/gatecse/en-gatecse-chp166.html
Video References

 https://www.youtube.com/watch?v=dCn9eGN9YvM

You might also like