RAM (Random Access Memory) Speaker: Lung-Sheng Chien Speaker: Lung-Sheng Chien Reference: [1] Bruce Jacob, Spencer W. Ng, David T. Wang, MEMORY SYSTEMS Cache, DRAM, Disk [2] Hideo Sunami, The invention and development of the first trench- capacitor DRAM cell, http://www.cmoset.com/uploads/4.1-08.pdf [3] JEDEC STANDARD: DDR2 SDRAM SPECIFICATION [4] John P. Uyemura, Introduction to VLSI circuits and systems [5] Benson, university physics
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
3 C A∝ since if we fix potential difference V and space d, then
0
is fixed is fixed due to V
E E Q A Ad
σσ σ
ε= ⇒ = ⇒ = ∝
Electric field is not uniform near edge, called fringe field
Capacitance [3]
Suppose we add an insulator into parallel metal plate, what happens on capacitor?
insulator
metal When charge is stored on capacitor, then electric field would separate positive and
+
−
d�
q+
q−
: dipole momentp qd=�
dipole
metal
No charge on capacitor, nothing happenselectric field would separate positive and negative charge inside insulator.
0 :E field produced by charge on capacitor
:iE field induced by separate charge of insulator:DE net field within insulator (dielectric)
Capacitance [4]
+
−
d�
q+
q−
: dipole momentp qd=� dipole moment
polarizationunit volume
P = =
Constitutive equation: 0 e totalP Eε χ= : electric susceptibility
eχ
0
1 1
1total ext total ext ext
e r
PE E E E E
ε χ ε= − ⇒ = ≡
+: dielectric constant
rε
material Dielectric constant Material Dielectric constant
vacuum 1 Benzene (苯) 2.28
Silicon dioxide 3.9 Diamond 5.7
Ta2O5 25 Salt 5.9
BST >200 Silicon 11.8
TiO2 (Titanium dioxide) 85 Methanol (甲醇) 33
ZrO2 23 SrZrO3 30
Al2O3 9.1 La2O3 (氧化鑭 ) 16
HfO2 (Hafnium oxide) 25 water 80.1
BaTiO3 (鈦酸鋇) 3000~8000 KTaNbO3 34000
+ + + + + + + + +
0
extEσ
ε=
− − − − − − − −
dC extV E d=
Capacitance [5]
+ + + + + + + + +
1ext
r
E Eε
=
− − − − − − − −
dCV Ed=
00
C
AQC
V d
ε= =
00r r
C
AQC C
V d
εε ε= = =
1 Keep all geometrical parameters, area A and height d, then we can add insulator to increase capacitance of capacitor
2 Insulator would induce polarization to cancel part of external field such that small voltage gap can store the same charge. In other words, capability of charge storage is increasing so that capacitance is also increasing
3 Design parameters of a capacitor are
Area of plate: A
Distance between two plate : d
Dielectric constant : rε
Insulator (dielectric)
RC circuit
R
CV
Kirchhoff’s voltage law:R CV V V= + ( )RV I t R= ⋅
( )C
Q tV
C= ( )
( )dQ tI t
dt=
dQ QV R
dt C= +First order ODE: ( ). . 0I C Q q=
Charging: ( )0 0Q =
1 expC
tV V
RC
= − −
1dQ Q
V Rdt C
= +with
R
C+ + + + +
− − − − −V
discharging: ( )0Q CV=
expC
tV V
RC
= −
2 0dQ Q
Rdt C
= +with
Typical time: T RC= (RC time constant)
For discharging case, when t RC= , then 0.37CV V=
CMOS inverter
x x
Logical symboltruth table
FET (Field-Effect Transistor, 場效電晶體)
0 1x x= ⇒ = 1 0x x= ⇒ =
current flow
MOSFET (Metal-Oxide-Semiconductor) [1]
top view
L: channel length, also called feature size, up to 45 nm so far
polysilicon (poly)
2SiO
side view
L: channel length, also called feature size, up to 45 nm so far
Dielectric film should be physically thin enough not fill up the trench.
F: feature size
Ti: dielectric film thickness
2 iT F<
A scaling limit of capacitor structure
Cross-section of storage node DRAM capacity (bits/die)
After K. Itoh, H. Sunami, K. Nakazato, and M. Horiguchi, ECS Spring Meeting, May 4, 1998
Objective: decrease feature size to increase density of DRAM cells
material Dielectric constant Material Dielectric constant
Silicon dioxide 3.9 Al2O3 9.1
Ta2O5 25 La2O3 (氧化鑭 ) 16
TiO2 (Titanium dioxide) 85 BaTiO3 (鈦酸鋇) 3000~8000
ZrO2 23 SrZrO3 30
HfO2 (Hafnium oxide) 25 KTaNbO3 34000
current flow out
Read operation in DRAM [1]
Suppose a DRAM cell is high voltage (data value is 1) in capacitor, when do read
operation, address line (word line) is selected and value of capacitor would be
extracted
capacitorSense amplifier
ddV
off
refV
1 Precharge to reference voltage
capacitorSense amplifier
ddV
open
refV
2 Open transistor (world line is selected)
V∆
0V∆ > Sense amplifier sets bit line as 1
(dis-charging)
capacitance of storage capacitor 1
capacitance of bitline 10=
Read operation in DRAM [2]
current flow in
(charging)
capacitorSense amplifier
ddV
off
4 Turn off transistor, complete one read operation
capacitorSense amplifier
ddV
open
ddV
3 Data restoration
Since when data is read out, then capacitor is discharging such that it can not be read again, hence data restoration is necessary.
Question 3: what do you think “if transistor is off,
then capacitor is isolated, no leakage current
flows out” ?
DRAM array structure
Open bitline folded bitline
Differential sense amplifier use a pair of bitlines to sense the
voltage value in DRAM cell
area per cell =26F
area per cell =28F
Functionality of sense amplifier
• Sense the minute change in voltage
- access transistor is turned on
- storage capacitor places its charge on the bitline
- sense amplifier compares voltage on that bitline against a reference
voltage on a separate bitline
• Restores the value of cell after the voltage on the bitline is sensed
• Temporary data storage, called row buffer
Basic sense amplifier circuit diagram
4 steps of amplifier operation [1]
Signal EQ activates tow transistors such that source2
ccref
VV = charges two drains (bitlines)
4 steps of amplifier operation [2]
• Signal EQ is deactivated such that equalization circuit is disable
• Storage capacitor is discharging till voltage of storage capacitor is equal to voltage of
bitline, a little bit larger than reference voltage
capacitorSense amplifier
ddV
open
refV
Open transistor (world line is selected)
V∆
0V∆ > Sense amplifier sets bit line as 1
current flow out
(dis-charging)
4 steps of amplifier operation [3]
refV V+ ∆
21 exceeds threshold such that transistor is turned on
1
2ref ccV V V+ ∆ >
0SAN =
refV ↘ 1
2
3
12
ref ccV V V+ ∆ >
2 signal SAN is set GND (ground)
3 current from bitline flows into SAN, then voltage of bitline isdecreasing till voltage is 0
ccSAP V=1
2ccV V<
refV V+ ∆ ↗
4 5
6
41
2ccV V< , its complement exceeds threshold such that
transistor is turned on
5 signal SAP is set Vcc (power line)
6 current from SAP flows into bitline, then voltage of bitline isincreasing till voltage is Vcc
4 steps of amplifier operation [4]
refV ↗ 8
7 current from bitline flows into capacitor, then
ccV
0SAN =
0V =
ccSAP V=
1addr =
Bi-stable circuit
7
7 current from bitline flows into capacitor, thencapacitor is charging (data restoration)
8 signal CSL (column-select line) is activated,then transistor is turn on, current flows intooutput. After voltage is stable in output, CSLis deactivated and turn off transistor, thendata is stored in output (row buffer)
Written into DRAM array
• Data written by memory controller is buffered by I/O buffer of DRAM device and used to overwrite sense amplifiers and DRAM cells.
• The time period required for write data to overdrive sense amplifiers and written through into DRAM cells is t_WR
• The row cycle time of DRAM device is write-cycle limited due to t_WR
OutLine
• Preliminary
• DRAM cell
• DRAM device- DRAM SPEC- DRAM SPEC
- input/output signal
- channel, rank, bank, row, column
• DRAM access protocol
• DRAM timing parameter
• DDR SDRAM
Typical 16Mbit DRAM (4M x 4)
: row address selectRAS
: column address selectCAS
( ): write enable write operationWE
( ): output enable read operationOE
[ ]0 :10 : address line, 11 bits, for row and columnA
[ ]0 : 3 : data line, 4 bitsD
: time to do refreshrefresh counter
packaging of 16Mbit DRAM (4M x 4)
[ ]0 :10 : address line, 11 bits, for row and columnA
Bandwidth is calculated by taking transfers per second and multiplying by eight. This is because DDR memory modules transfer data on a bus that is 64 data bits wide
from http://en.wikipedia.org/wiki/DDR_SDRAM
1 ns (nano second) = 910− second
64 data bits = 8 (chip per side) x 8 (bits per chip)
• A dual inline memory module (DIMM) consists of a number of memory components
(usually black) that are attached to a printed circuit board (usually green).
• Each 240-pin DIMM provides a 64-bit data path (72-bit for ECC or registered
modules).
• DIMM has 120 pins on the front and 120 pins on the back, for a total of 240 pins.
• Standard DDR2 DIMM has 8 chips (block) on one side, total is 16 chips.
• Fully buffered DDR2 DIMM has 9 chips on one size, total is 18 chips.
Configuration of DRAM [1]
DIMMs are built using "x4" (by 4) memory chips or "x8" (by 8) memory chips with 8(9)
chips per side. "x4" or "x8" refer to the data width of the DRAM chips in bits.
Example: a x4 DRAM indicates that DRAM has at least four memory array in a single
bank and a column width is 4 bits.
Configuration of DRAM [2]
Device configuration 64 M x 4 32 M x 8 16 M x 16
Number of banks 4 4 4
Number of rows 8192 8192 8192
Number of columns 2048 1024 512
Data bus width 4 8 16
256-Mbit SDRAM device configuration
Configuration = (number of addressable location, number of data bits per location)
11 256-Mbit = 64 M (locations) x 4 (bits per location)
2 64 M (locations) = 8192 (rows) x 2048 (cols) x 4 (banks)
1GB DDR2-800, 240 pins
From http://shopping.pchome.com.tw/
OutLine
• Preliminary
• DRAM cell
• DRAM device
• DRAM access protocol• DRAM access protocol- pipelined-base resource usage model
- read / write operation
• DRAM timing parameter
• DDR SDRAM
Basic DRAM Memory-Access Protocol
Command and data movement on a generic SDRAM device DRAM memory-access protocol defines commands and timing constraints that a DRAM memory controller uses to manage the movement of data between itself and DRAM devices
five basic DRAM commands
resource usage model : at any given instance, 4 operations exist in 4 phases, this
constitute 4-stage pipelined. Resources are not shared among these 4 phases.
Sometimes we call it as 4-stage pipelined.
five basic DRAM commands- row access command- column-read command- column-write command- precharge command- refresh command
Generic DRAM command format
1parametert measures duration of “phase 2” (spends in the use of selected bank)
2parametert measures duration of “phase 3” (spends in the use of resource to multiple banks of DRAM)to multiple banks of DRAM)
1parametert is minimum time between two commands whose relative timing is limited bythe sharing of resources within a given bank of DRAM arrays
2parametert is minimum time between two commands whose relative timing is limited bythe sharing of resources by multiple banks of DRAM arrays within the sameDRAM devices.
parameter description
t_CMD Command transport duration. The time period that a command occupies on the command bus as it is transported from the DRAM controller to the DRAM devices.
Row Access Command
Objective: move data from the cells in DRAM arrays to sense amplifiers and then
restore the data back into the cells in DRAM array.
parameter description
t_RCD Row to Column command Delay. The time interval between row access and data ready at sense amplifiers.
The time required between RAS (Row Address Select) and CAS (Column Address Select).
t_RAS Row Access Strobe latency. The time interval between row access command and data restoration in DRAM array. A DRAM bank cannot be precharged until at least t_RAS time after the previous bank activation.
Column-Read Command [1]
Objective: move data from array of sense amplifiers through data bus back to
memory controller
parameter description
t_CAS ( t_CL ) Column Access Strobe latency. The time interval between column access command and start of data return by DRAM devices.
Column-Read Command [2]
parameter description
t_BURST Data burst duration. The time period that data burst occupies on the data bus.
In DDR2 SDRAM, 4 beats of data occupy 2 full clock cycles.
• One beat burst means one-column data
• Each column of SDRAM is individually addressable and given a column address in the middle of 4 column burst , SDRAM will reorder the burst to provide the data of requested address first, this is called critical-word forwarding.
Column-Read Command [3]
parameter description
t_CCD Column-to-Column Delay. The minimum column command timing, determined by internal burst (prefetch) length. Multiple internal bursts are used to form longer burst for column read.
t_CCD is 2 beats (1 cycles) for DDR SDRAM
t_CCD is 4 beats (2 cycles) for DDR2 SDRAM
t_CCD is 8 beats (4 cycles) for DDR3 SDRAM
Column-Write Command [1]
Objective: move data from memory controller to sense amplifiers of targeted bank.
Clearly ordering of phases is reversed between column-read and column-write
commands.
parameter description
t_CWD Column Write Delay. The time interval between issuance of column-write command and placement of data on the bus by DRAM controller.
SDRAM: t_CWD = 0 cycle
DDR SDRAM: t_CWD = 1 cycle
DDR2 SDRAM: t_CWD = t_CAS – t_CMD cycles
DDR3 SDRAM : t_CWD = 5 ~ 8 cycles
Column-Write Command [2]
parameter description
t_WTR Write To Ready delay time. The minimum time interval between the end of a write data burst and the start of a column-read command. I/O gating is released by write command.
Write command � read command
t_WR Write Recovery time. The minimum time interval between the end of a write data burst and the start of a precharge command. Allows sense amplifiers to restore data to cells.
Wrtie command � precharge command
Precharge Command [1]
• Step1: row access command moves data from DRAM cells to sense amplifiers (data
is cached), then column access command moves data between DRAM device and
memory controller
• Step 2: precharge command completes the row access sequence as it resets the
sense amplifiers and bitlines and prepares them for another row access command to
the same DRAM array.
Data access in a typical DRAM device is composed of two-step process
Precharge Command [2]
parameter description
t_RP Row Precharge. The time interval that it takes for a DRAM array to be precharged (precharge bitline and sense amplifiers) for another row access.Switching between memory banks.
t_RC Row Cycle. The time interval between accesses to different rows in a bank.
t_RC = t_RAS + t_RP
Refresh Command [1]
• Non-persistent charge storage in DRAM cells means that charge stored in capacitor
will gradually leak out through access transistors.
• To maintain data integrity, DRAM must be periodically read out and restored before
charge decay to indistinguishable level.
parameter description
t_RFC ReFresh Cycle time. The time interval between refresh and activation commands.
One refresh command may refresh 1, 2, 4, 8 rows. The more rows are refreshed, the more time t_RFC is.
Refresh Command [2]
A refresh command refresh DRAM cells in all banks since all banks can operate independently
DRAM device family
capacity Number of rows
Refresh count Number of row per refresh command
t_RC t_RFC
DDR 512MB 8192 8192 1 55 ns 70 ns
DDR2 512MB 16384 8192 2 55 ns 105 ns
4096MB 65536 8192 8 ~ 327.5 ns
Suppose memory is DDR2-800 2GB, (memory clock = 200MHz, 5ns/clock), then
Row cycle time is limited by the duration of write cycle since data path of write is
memory controller data bus I/O gating MUX sense amplifier DRAM cells
( )RAS RCD CWD BURST WRt write t t t t= + + +
( ) ( )RAS RCD CAS BURST restoret read t t t remaining t= + + +
∨
Write Cycle [2]
I/O gating
data burst
row acc
data sense write data restore array precharge
RCDt
CWDt BURSTt
col write prec. row act
RAStRCt
RPt
time
cmd & addr bus
bank utilization
device utilization
data bus
row access column read precharge
WRt
data restorerow access column read prechargedata restore
Consecutive reads and writes to same open bank [1]
Two column-read commands to the same row are issued
Precharge is not necessary since one row of data has been latched in sense amplifier
I/O gating
data burst
CASt BURSTt
Read 0cmd & addr bus
bank “i” utilization
rank “m” utilization
data bus
row x open
Read 1
I/O gating
data burst
BURSTt
I/O gating
data burst
row acc
data sense data restore array precharge
RCDt
CASt BURSTt
col read prec. row act
RAStRCt
RPt
time
cmd & addr bus
bank utilization
device utilization
data bus
bank access
row access column read precharge
Precharge is not necessary since one row of data has been latched in sense amplifier
Consecutive reads and writes to same open bank [2]
I/O gating
data burst
row acc
data sense data restore
RCDt
CASt BURSTt
Read 0cmd & addr bus
bank utilization
device utilization
data bus
bank access
row access column read
Read 1
I/O gating
data burst
data restore
CASt BURSTt
bank access
column read
data restore for “read 0” and “read 1” can be done simultaneously
I/O gating
data burst
row acc
data sense data restore
RCDt
CASt BURSTt
Read 0cmd & addr bus
bank utilization
device utilization
data bus
bank access
row access column read
Read 1
I/O gating
data burst
data restore
N consecutive column-read needs time RCD CAS BURSTt t N t+ + ⋅ , not ( )RCD CAS BURSTN t t t+ +
I/O gating
data burst
row y open-data restore
RASt
row acc
RAS RPt t+
cmd & addr
bank “i” utilization
data bus
bank i precharge
rank “m” utilization
read 1
I/O gating
data burst
row accprec
data sense data sense
RPt
read 0
row x open -data restore
Consecutive reads to different rows of same bank
[ ][ ] [ ][ ]1A i j A i j→ + destroys spatial locality such that [ ][ ] [ ][ ], 1A i j A i j+ are on different rows.
The time to access [ ][ ]A i j or [ ][ ]1A i j+ require whole row cycle time RCt
I/O gating
data burst
data restore
CWDt WRtBURSTt
write 0
CWD BURST WR RP RCDt t t t t+ + + +
cmd & addr
bank “i” of rank
data bus
array precharge
rank “m” utilization
write 1
I/O gating
data burst
BURSTt
row accprec
data restore data sense
RPt RCDt
Consecutive writes to different rows of same bank
Consecutive reads to different banks (bank conflict)
bank i and bank j are open together but read request to bank j is different from
I/O gating
data burst
row y open-data restore
RPt
read 0
RP RCDt t+
cmd & addr
bank “i” of rank “m”
data bus
rank “m” utilization
read 1
I/O gating
data burst
bank i open
RCDt
bank “j” of rank “m”
prec row acc
row x open bank j precharge data sense
bank i and bank j are open together but read request to bank j is different from
active row in sense amplifier, hence bank j must precharge bitline first. This is
called “bank conflict”.
I/O gating
data burst
bank j open
CASt OSTtBURSTt
read 0
BURST RTRSt t+
time
cmd & addr
bank “i” of rank “m”
rank “m” utilization
data bus
bank i open
bank “j” of rank “n”
read 1
data burst sync
rank “n” utilization
BURSTt
Consecutive reads to different ranks
parameter description
t_RTRS Rank-To-Rank-Switching time. Used in DDR and DDR2 SDRAM system.1 full cycle in DDR SDRAM
I/O gating
t_RTRS Rank-To-Rank-Switching time. Used in DDR and DDR2 SDRAM system.1 full cycle in DDR SDRAM
I/O gating
data burst
bank j access
CWDtOSTtBURSTt
write 0
BURSTt OSTt
time
cmd & addr
bank “i” of rank “m”
rank “m” utilization
data bus
bank i access
bank “j” of rank “n”
write 1
I/O gating
data burst
rank “n” utilization
BURSTt
Consecutive writes to different ranks
I/O gating
data burst
data restore
CASt BURSTt
read 0
CAS BURST RTRS CWDt t t t+ + −
cmd & addr
bank “i” of rank “m”
data bus
rank “m” utilization
write 1
I/O gating
data burst
row x open
RTRSt
bank “j” of rank “m”
sync
CWDt
Write command following read command to open banks
I/O gating
data burst
row x open
CWDtBURSTt
write 0
CWD BURST WTRt t t+ +
cmd & addr
bank “i” of rank “m”
data bus
rank “m” utilization
read 1
I/O gating
data restore
WTRt
bank “j” of rank “m”
data burst
Read command following write command to open banks
DRAM protocol overheads for DDR and DDR2 SDRAM
prev next rank bank row scheduling distance between column access
commands (no command reordering)
R R s s t_BURST
R R s d t_BURST
R R s s d t_RAS + t_RP
R R d s/d t_RTRS + t_BURST
R W s d t_CAS + t_BURST + t_RTRS - t_CWD
R = read ; W = write ; s = same ; d = different
R W s d t_CAS + t_BURST + t_RTRS - t_CWD
W R s d t_CWD + t_BURST - t_WTR
W W s s t_BURST
W W s s d t_CWD + t_BURST + t_WR + t_RP + t_RCD
W W d s/d t_OST + t_BURST
Later on, we will determine value of timing parameter and calculate overhead explicitly
OutLine
• Preliminary
• DRAM cell
• DRAM device
• DRAM access protocol • DRAM access protocol
• DRAM timing parameter- CL value
- system calibration
• DDR SDRAM
value: CL RCD RP RASCL t t t t− − −
memory clock speed = 533
CL value of commodity DDRx SDRAM
From http://shopping.pchome.com.tw/
value: CL RCD RPCL t t t− −
memory clock speed = 533
memory clock speed = 400
from http://en.wikipedia.org/wiki/CAS_latency
• when DDR is read, a single read produces 64 bits of data from 8 chips, 8 bits per chip.
• when talking about the time between bits, it is referring to the time from the appearance of the first group of bits (8 bits a chip) until the appearance of the next group of bits
• CAS latency only specifies the delay between the request and the first bit.
• Remaining bits (7 bits) are fetched one bits per cycle.
CAS latency (CL value) [1]
type Data rate ns/bit Command rate ns/cycle CL first word (ns) 8 word (ns)
the JEDEC standards require certain parameters to be placed in the
lower 128 bytes of an EEPROM located on the memory module.
These bytes contain timing parameters, manufacturer, serial number
and other useful information about the module
Module has two sides, one rank per side, each rank has 8 SDRAM chips, 8 banks per chip
8 (bits per chip) x 8 (chips per rank)
parameter description Memory Clocks
t_CAS Column Access Strobe
latency.
5
t_RCD Row to Column command
Delay
5
t_RP Row precharge 5
t_RAS Row Access Strobe 18
t_RTRS Rank-To-Rank-Switching
time.
1
from EVEREST
Concrete timing parameter
t_BURST Data burst duration. 2
t_CMD Command transport
duration.
2
t_CWD Column Write Delay. t_CAS – t_CMD
= 3
t_WR Write recovery time 14
t_WTR Write to read delay same rank: 11
different rank: 5
t_OST ODT switching time. 1
t_WTP Write to precharge delay 14
t_RTP Read to precharge delay 5
DRAM protocol overheads for DDR2-800 SDRAM
prev next rank bank row scheduling distance between column access commands (no command reordering)
Memory clocks
CPU clocks
R R s s t_BURST 2 24
R R s d t_RP + t_RCD 10 120
R R s s d t_RAS + t_RP 23 276
R R d s/d t_RTRS + t_BURST 3 36
R W s d t_CAS + t_BURST + t_RTRS - t_CWD 5 60
W R s d t_CWD + t_BURST + t_WTR 16 192
R = read ; W = write ; s = same ; d = different
W R s d t_CWD + t_BURST + t_WTR 16 192
W W s s t_BURST 2 24
W W s s d t_CWD + t_BURST + t_WR + t_RP + t_RCD 29 348
W W d s/d t_OST + t_BURST 3 36
1 memory clock = 5 ns = 5 ns x (2.4 CPU cycle/ns) = 12 CPU cycle
Observation: different combination of commands reveals different overhead, we expect that false-sharing would have large overhead
219.6 CPU cycles
CAS latency, memory speed, and price
dual-channel (雙通道)
from http://shopping.pchome.com.tw/
5CLt = 7CLt =
tri-channel (三通道)
9CLt =8CLt =
Question: Is DDR3 faster than DDR2 ?
Objective: choose low CL-value and high clock speed memory module
OutLine
• Preliminary
• DRAM cell
• DRAM device
• DRAM access protocol • DRAM access protocol
• DRAM timing parameter
• DDR SDRAM- DDR2-SDRAM, DDR3-SDRAM
- dual-channel, tri-channel
- memory controller
SDRAM
1 data out per cycle
• SDRAM device operates data bus at the same data rate as the address and command buses.
• DDR SDRAM device operates data bus twice the data rate as the address and command buses.
DDR SDRAM [1]
DDR SDRAM
Two data out per cycle
DDR SDRAM [2]
SDRAM device architecture with 4 banksDDR SDRAM device I/O
The rate of internal data transfer in DDR SDRAM is not increased. DDR SDRAM use 2-bit prefetch to increase bandwidth I/O bus clock run twice faster than memory clock such that I/O bus can transfer 2N data at one time unit
The rate of internal data transfer in DDR2 SDRAM is not increased.
DDR2 SDRAM use 4-bit prefetch to increase bandwidth.
I/O bus clock run 2 times faster than memory clock and sample data at rising edge and falling edge of clock signal such that I/O bus can transfer 4N data at one time unit
1GB addressing
512MB addressing
DDR2 SDRAM SPEC [1]
DDR2 SDRAM SPEC [2] Simplified state diagram (not real)
DRAM controller
• Row-Buffer-Management Policy- open-page policy
- close-page policy
• Address Mapping Scheme- minimize bank address conflicts in temporal adjacent requests and maximize the
parallelism in memory system (parallelism of channels, ranks, banks, rows, and
columns)
- utilize dual-channel architecture
- flexibility for inserting/removing memory module
• DRAM Command Ordering Scheme• DRAM Command Ordering Scheme
Note: 外頻指的是 CPU 的外部頻率. 前端匯流排FSB則是用來作為CPU和晶片組Chipset之間連接用的這一段。 FSB速度是以CPU外頻為基準,利用倍頻技術,使FSB在每一週期傳輸一次資料提升到兩次或四次的資料,也就是兩倍頻或四倍頻,如266MHz(133x2)、333MHz(166x2).
Quad data rate (or quad pumping) is a communication signaling technique wherein data is transmitted at four points in the clock cycle: on the rising and falling edges, and at two intermediate points between them. The intermediate points are defined by a 2nd clock that is 90° out of phase from the first.