Chapter 5 Memory Organization
Chapter 5 Memory Organization
Outline
• Memory Hierarchy
• Cache
• External Memory
Memory Hierarchy
• The memory unit is an essential component in any
digital computer since it is needed for storing
programs and data
• Not all accumulated information is needed by the
CPU at the same time
• Therefore, it is more economical to use low-cost
storage devices to serve as a backup for storing the
information that is not currently used by CPU
Memory Hierarchy
• The memory unit that directly communicate with
CPU is called the main memory
• Devices that provide backup storage are called
auxiliary memory
Tran. Access
per bit time Persist? Sensitive? Cost Applications
• The RAM have 128 byte and need seven address lines, where
the ROM have 512 bytes and need 9 address lines
Memory Address Map
Memory Address Map
• The hexadecimal address assigns a range of
hexadecimal equivalent address for each chip
Sync Sync
Byte Track Head Sector CRC Data CRC
Byte
• Foreground reading
– Find others
Characteristics
• Fixed (rare) or movable head
• Removable or fixed
• Single or double (usually) sided
• Single or multiple platter
• Head mechanism
– Contact (Floppy)
– Fixed gap
– Flying (Winchester)
Fixed/Movable Head Disk
• Fixed head
– One read write head per track
– Heads mounted on fixed ridged arm
• Movable head
– One read write head per side
– Mounted on a movable arm
Removable or Not
• Removable disk
– Can be removed from drive and replaced with
another disk
– Provides unlimited storage capacity
– Easy data transfer between systems
• Nonremovable disk
– Permanently mounted in the drive
Multiple Platter
• One head per side
• Heads are joined and aligned
• Aligned tracks on each platter form cylinders
• Data is striped by cylinder
– reduces head movement
– Increases speed (transfer rate)
Multiple Platters
Cylinders
Floppy Disk
• 8”, 5.25”, 3.5”
• Small capacity
– Up to 1.44Mbyte (2.88M never popular)
• Slow
• Universal
• Cheap
• Obsolete?
Winchester Hard Disk (1)
• Developed by IBM in Winchester (USA)
• Sealed unit
• One or more platters (disks)
• Heads fly on boundary layer of air as disk spins
• Very small head to disk gap
• Getting more robust
Winchester Hard Disk (2)
• Universal
• Cheap
• Fastest external storage
• Getting larger all the time
– Multiple Gigabyte now usual
Removable Hard Disk
• ZIP
– Cheap
– Very common
– Only 100M
• JAZ
– Not cheap
– 1G
• L-120 (a: drive)
– Also reads 3.5” floppy
– Becoming more popular?
• All obsoleted by CD-R and CD-R/W?
Speed
• Seek time
– Moving head to correct track
• (Rotational) latency
– Waiting for data to rotate under head
• Access time = Seek + Latency
• Transfer rate
• See timing comparison on p.173
– Sequential organization = .064 seconds to read 1.28
MB
– Random organization = 4.008 seconds to 1.28 MB
– Why periodic defragmentation is important!
Timing of Disk I/O Transfer
RAID
• Redundant Array of Independent Disks
• Redundant Array of Inexpensive Disks
• 6 levels in common use
• Not a hierarchy—but different design
architectures with 3 common characteristics:
– Set of physical disks viewed as single logical drive by
O/S
– Data distributed across physical drives of an array
– Can use redundant capacity to store parity
information, which guarantees data recoverability in
case of a disk failure (except RAID 0)
RAID 0
• No redundancy
• Data striped across all disks
• Round Robin striping
• Increase speed
– Multiple data requests probably not on same disk
– Disks seek in parallel
– A set of data is likely to be striped across multiple
disks
• disk striping: The procedure of combining a set of same-size disk partitions that reside on separate
disks (from 2 to 32 disks) into a single volume, forming a virtual "stripe" across the disks that the
operating system recognizes as a single drive. Disk striping enables multiple I/O operations in the
same volume to proceed concurrently, thus offering enhanced performance. Microsoft Press«
Computer and Internet Dictionary, 4th Edition, ©2000 Microsoft Corporation. All rights reserved.
RAID 0 Striping
RAID 0 Logical Disk
RAID 1
• Mirrored Disks
• Data is striped across disks
• 2 copies of each stripe on separate disks
• Read from either to speed up reads
• Write to both at the same time in parallel
• Recovery is simple
– Swap faulty disk & re-mirror
– No down time
• Expensive—two complete sets of drives
RAID 2
• Disks are synchronized
• Very small stripes
– Often single byte/word
• Error correction calculated across corresponding
bits on disks
• Multiple parity disks store Hamming code error
correction in corresponding positions
• Lots of redundancy
– Expensive
– Not commercially available
RAID 3
• Similar to RAID 2
• Only one redundant parity disk, no matter
how large the array
• Simple parity bit for each set of corresponding
bits
• Data on failed drive can be reconstructed
from surviving data and parity info
• Very high transfer rates
RAID 4
• Each disk operates independently
• Good for high I/O request rate
• Large stripes
• Bit by bit parity calculated across stripes on
each disk
• Parity stored on parity disk
• Not commercially available
RAID 5
• Like RAID 4
• Parity striped across all disks
• Round robin allocation for parity stripe
• Avoids RAID 4 bottleneck at parity disk
• Commonly used in network servers