CAAL Chapter 4
CAAL Chapter 4
Cache Memory
• Location
• Capacity
• Unit of transfer
• Access method
• Performance
• Physical type
• Physical characteristics
• Organisation
Location
• CPU
• Internal
• External
Capacity
• Word size
— The natural unit of organisation
• Number of words
— or Bytes
Unit of Transfer
• Internal
— Usually governed by data bus width
• External
— Usually a block which is much larger than a word
• Addressable unit
— Smallest location which can be uniquely addressed
— Word internally
Access Methods
• Sequential
— Start at the beginning and read through in order
• Direct
— Individual blocks have unique address
— e.g. disk
Cont’d…
• Random
— Individual addresses identify locations exactly
• Associative
— Data is located by a comparison with contents of a
portion of the store
— Access time is independent of location or previous
access
— e.g. cache
Memory Hierarchy
• Registers
— In CPU
— “RAM”
• External memory
— Backing store
Memory Hierarchy - Diagram
Performance
• Access time
— Time between presenting the address and getting the
valid data
• Memory Cycle time
— Time may be required for the memory to “recover”
before next access
— Cycle time is access + recovery
• Transfer Rate
— Rate at which data can be moved
Cont’d…
• Semiconductor
— RAM
• Magnetic
— Disk & Tape
• Optical
— CD & DVD
• Others
— Bubble
— Hologram
The Bottom Line
• How much?
— Capacity
• How fast?
— Time is money
• How expensive?
Hierarchy List
• Registers
• L1 Cache
• L2 Cache
• Main memory
• Disk cache
• Disk
• Optical
• Tape
Cache
• Size
• Mapping Function
• Replacement Algorithm
• Write Policy
• Block Size
• Number of Caches
Size does matter
• Cost
— More cache is expensive
• Speed
— More cache is faster (up to a point)
• Cache of 64kByte
• Cache block of 4 bytes
— i.e. cache is 16k (214) lines of 4 bytes
• 24 bit address
• 2 bit word identifier (4 byte block)
• 22 bit block identifier
— 8 bit tag (=22-14)
— 14 bit slot or line
• No two blocks in the same line have the same Tag field
• Check contents of cache by finding line and checking Tag
Direct Mapping Cache Organization
Direct Mapping Example
Direct Mapping Summary
Direct Mapping pros & cons
• Simple
• Inexpensive
• Fixed location for given block
— If a program accesses 2 blocks that map to the same
line repeatedly, cache misses are very high
Associative Mapping
• No choice
• Each block only maps to one line
• Replace that line
Replacement Algorithms
Associative & Set Associative
• Random
Write Policy