Upload
flashdomain
View
1.342
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
EEL 5708
Memory technology
Lotzi Bölöni
Fall 2003
EEL 5708
Acknowledgements
• All the lecture slides were adopted from the slides of David Patterson (1998, 2001) and David E. Culler (2001), Copyright 1998-2002, University of California Berkeley
EEL 5708
Standing on shoulders of giants
“Ideally one would desire an indefinitely large memory capacity such that any particular… word would be immediately available… We are… forced to recognize the possibility of constructing a hierarchy of memories, each of which has a greater capacity than the preceding but which is less quickly accessible.”
A.W.Burks, H.H.Goldstine and J. von Neumann
Preliminary Discussion of the Logical Design of an Electronic Computing Instrument (1946)
EEL 5708
Elements of Memory Organization
• The technologies (SRAM, DRAM etc)• The components
– Cache (L1,L2)– Main memory– Virtual memory
EEL 5708
Main Memory Background• Random Access Memory (vs. Serial Access
Memory)• Different flavors at different levels
– Physical Makeup (CMOS, DRAM)– Low Level Architectures (FPM,EDO,BEDO,SDRAM)
• Cache uses SRAM: Static Random Access Memory– No refresh (6 transistors/bit vs. 1 transistor
Size: DRAM/SRAM 4-8, Cost/Cycle time: SRAM/DRAM 8-16
• Main Memory is DRAM: Dynamic Random Access Memory
– Dynamic since needs to be refreshed periodically (8 ms, 1% time)
– Addresses divided into 2 halves (Memory as a 2D matrix):» RAS or Row Access Strobe» CAS or Column Access Strobe
EEL 5708
Static RAM (SRAM)
• Six transistors in cross connected fashion– Provides regular AND inverted outputs– Implemented in CMOS process
Single Port 6-T SRAM Cell
EEL 5708
• SRAM cells exhibit high speed/poor density• DRAM: simple transistor/capacitor pairs in
high density form
Dynamic RAM
Word Line
Bit Line
C
Sense Amp
.
.
.
EEL 5708
DRAM Operations
• Write– Charge bitline HIGH or LOW and set wordline HIGH
• Read– Bit line is precharged to a voltage halfway
between HIGH and LOW, and then the word line is set HIGH.
– Depending on the charge in the cap, the precharged bitline is pulled slightly higheror lower.
– Sense Amp Detects change
• Explains why Cap can’t shrink– Need to sufficiently drive bitline– Increase density => increase parasitic
capacitance
Word Line
Bit Line
C
Sense Amp
.
.
.
EEL 5708
DRAM logical organization (4 Mbit)
• Square root of bits per RAS/CAS
Column Decoder
Sense Amps & I/O
Memory Array(2,048 x 2,048)
A0…A10
…
11
D
Q
Word LineStorage CellR
ow D
ecod
er…
EEL 5708
So, Why do I freaking care?
• By it’s nature, DRAM isn’t built for speed– Response times dependent on capacitive circuit
properties which get worse as density increases
• DRAM process isn’t easy to integrate into CMOS process
– DRAM is off chip – Connectors, wires, etc introduce slowness– IRAM efforts looking to integrating the two
• Memory Architectures are designed to minimize impact of DRAM latency
– Low Level: Memory chips– High Level memory designs.– You will pay $$$$$$ and then some $$$ for a good
memory system.
EEL 5708
So, Why do I freaking care?
• 1960-1985: Speed = ƒ(no. operations)
• 1990– Pipelined
Execution & Fast Clock Rate
– Out-of-Order execution
– Superscalar Instruction Issue
• 1998: Speed = ƒ(non-cached memory accesses)
• What does this mean for– Compilers?,Operating Systems?, Algorithms?
Data Structures?
1
10
100
1000
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
DRAM
CPU
EEL 5708
DRAM Performance
• A 60 ns (tRAC) DRAM can – perform a row access only every 110 ns (tRC)
– perform column access (tCAC) in 15 ns, but time between column accesses is at least 35 ns (tPC).
» In practice, external address delays and turning around buses make it 40 to 50 ns
• These times do not include the time to drive the addresses off the microprocessor nor the memory controller overhead!
• Can it be made faster?• Many techniques are trading higher
bandwidth, but have higher latency– The idea that the latency will be taken care of by the
cache.
EEL 5708
Synchronous DRAM
• Has a clock input.– Data output is in bursts w/ each element clocked
• Flavors: SDRAM, DDR
PC100: Intel spec to meet 100MHz memory bus designs. Introduced w/ i440BX chipset
Write Read
EEL 5708
RAMBUS
• “Intellectual property company”. – Located in Los Altos, CA– Designed a memory architecture– Licenced to manufacturers– They have no factories.
• Picked up by Intel, who signed an exclusive deal with them for Pentium 4 motherboards.
• Litigation regarding the intellectual property.
EEL 5708
RAMBUS (RDRAM)
• Protocol based RAM w/ narrow (16-bit) bus– High clock rate (400 Mhz), but long latency– Pipelined operation
• Multiple arrays w/ data transferred on both edges of clock
RAMBUS Bank RDRAM Memory System
EEL 5708
RDRAM Timing
EEL 5708
DRAM History
• DRAMs: capacity +60%/yr, cost –30%/yr– 2.5X cells/area, 1.5X die size in 3 years
• ‘98 DRAM fab line costs $2B– DRAM only: density, leakage v. speed
• Rely on increasing no. of computers & memory per computer (60% market)
– SIMM or DIMM is replaceable unit => computers use any generation DRAM
• Commodity, second source industry => high volume, low profit, conservative
– Little organization innovation in 20 years– Don’t want to be chip foundries (bad for RDRAM)
• Order of importance: 1) Cost/bit 2) Capacity
– First RAMBUS: 10X BW, +30% cost => little impact
EEL 5708
Read-only memory (ROM)
• Programmed at time of manufacture– Can not be written by the computer– It is not erased by loss of power– Some of them can be erased and rewritten by special
hardware (EEPROM)
• One transistor / bit.• Used in:
– BIOS of desktop computers– Embedded devices (also serves as a code protection
device)
EEL 5708
FLASH Memory
• Floating gate transitor– Presence of charge => “0”– Erase Electrically or UV (EPROM)
• Performance– Reads like DRAM (~ns)– Writes like DISK (~ms). Write is a complex operation