Memory Technology
CS1251 Computer Organization Carl Hamacher
4/3/2014
Department of Information Technology
Memory Connections
MEM
k
ADDRESS
MAR
REG
DATA_OUT DATA_IN Enable_Out CLK Enable_In
RAM
Write Enable_In1 DATA_IN1 Enable_Out2 DATA_OUT2 DATA_IN2 Enable_In2
Read MFC CLK
DATA_OUT
n
DATA_IN
REG_2PORT
DATA_OUT1 Enable_Out1 CLK
MDR
2k addressable locations n-bit words
MFC = Memory-Function-Completed 4/3/2014 Department of Information Technology 2
Byte Addressability
Word address 0 4
0 4
Byte address
1 5 2 6 3 7
Word address 0 4
3 7
Byte address
2 6 1 5 0 4
. . .
2k-4
2k-4 2k-3 2k-2 2k-1
. . .
2k-4
2k-1 2k-2 2k-3 2k-4
Big-endian assignment (Morotola)
4/3/2014
Little-endian assignment (Intel)
3
Department of Information Technology
Step
Clock
MAR_En_In Address MEM_Read MDR_En_In1 Data_Out MFC MDR_En_Out2
Memory Speed
Memory Access Time
Initiation to completion of an operation
e.g. Read to MFC
Memory Cycle Time
Minimum delay between two successive operations Usually slightly longer than the access time Bottleneck of a computer system
4/3/2014
Department of Information Technology
Memory Speed
Memory Latency
Time to transfer a word of data to or from the memory Rate of transfer of blocks of data Product of data rate and width of data bus
Memory Bandwidth
4/3/2014
Department of Information Technology
Memory Types
Random Access Memory (RAM)
Read and Write Fixed time independent of address
Magnetic disks Magnetic tapes Contents (not) lost when power is interrupted
Department of Information Technology 7
(Partly) Serial Access Storage Devices
(Non) Volatile Memory
4/3/2014
Memory Organization
Cache Memory (Lsn 19)
Small, fast memory Between (larger, slower) main memory and processor Holds currently active segments of program and data
4/3/2014
Department of Information Technology
Memory Organization
Virtual Memory (Lsn 20)
Data stored in physical locations that have addresses different from those specified in the program Memory control circuitry translates logical address into physical address Used to increase the apparent size of physical memory (using magnetic disks) Pages of words swapped between disk and main memory (RAM)
Department of Information Technology 9
4/3/2014
Semiconductor RAM
4/3/2014
Department of Information Technology
10
Static RAM
SRAM
Two inverters cross-connected to form a latch Two transistors connect latch to two bit lines CMOS implementation requires 6 transistors per cell (expensive) Very low power consumption Very fast Used mostly in cache memories
4/3/2014
Department of Information Technology
11
Asynchronous Dynamic RAM
DRAM
Info stored as charge on a capacitor Charge maintained for only tens of milliseconds Periodic refresh required (adds complexity) Higher density Lower cost Predominant in main computer memories
4/3/2014
Department of Information Technology
12
Synchronous DRAM
SDRAM
Synchronized with a clock signal Address and data connections buffered with registers e.g. PC133 SDRAM (133 MHz bus)
4/3/2014
Department of Information Technology
13
Double-Data-Rate SDRAM
DDR SDRAM
Transfers data on both clock edges
Latency same as SDRAM Bandwidth doubled
Cells arranged in two (independent) banks
Consecutive words stored in different banks (interleaving)
4/3/2014
Department of Information Technology
14
Memory Modules
Single In-line Memory Module (SIMM)
30-pin (8-bits)
1 MB to 16 MB
72-pin (32-bit)
1MB to 64 MB
Dual In-line Memory Module (DIMM)
168-pin (64-bits)
8 MB to 4 GB
4/3/2014
Department of Information Technology
15
Memory Module Organization
4/3/2014
Department of Information Technology
16
Read-Only Memories
ROM
Cell (not) connected to ground stores a (1) 0
Programmable using fused connection (UV) Erasable via programmable transistor Electrically erasable
Department of Information Technology 17
PROM
EPROM
EEPROM
4/3/2014
Flash Memory
Flash Cell
Single transistor controlled by trapped charge Read single cell, Write block of cells
Flash chips mounted on small card Standard interface Emulate hard disk drives
Department of Information Technology 18
Flash Cards
Flash Drives
4/3/2014
Memory Hierarchy
Processor Registers
Increasing Size
Primary Cache
Increasing Speed
Increasing Cost
Secondary Cache
Main Memory
Secondary Memory
4/3/2014 Department of Information Technology 19
Questions?
4/3/2014
Department of Information Technology
20