main memory systembojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨charge based memory...
TRANSCRIPT
![Page 1: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/1.jpg)
MAIN MEMORY SYSTEM
CS/ECE 6810: Computer Architecture
Mahdi Nazm Bojnordi
Assistant Professor
School of Computing
University of Utah
![Page 2: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/2.jpg)
Overview
¨ Announcement¤ Homework 3 submission deadline: Nov. 11th
¨ This and the following lectures¤ Dynamic random access memory (DRAM)¤ DRAM operations¤ Memory scheduling basics¤ Emerging memory technologies
![Page 3: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/3.jpg)
Computer System Overview
¨ DRAM technology is commonly used for main memory
![Page 4: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/4.jpg)
Computer System Overview
¨ DRAM technology is commonly used for main memory
CPU
![Page 5: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/5.jpg)
Computer System Overview
¨ DRAM technology is commonly used for main memory
CPU
Memory
![Page 6: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/6.jpg)
Computer System Overview
¨ DRAM technology is commonly used for main memory
CPU
Memory
¨ SRAM is used for caches
¨ DRAM is used for main memory
¨ DRAM is accessed on a TLB or last level cache miss
![Page 7: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/7.jpg)
Static vs. Dynamic RAM
¨ Fast and leaky¤ 6 transistors per bit¤ Normal CMOS Tech.
¨ Static volatile¤ Retain data as long as
powered on
¨ Dense and slow¤ 1 transistor per bit¤ Special DRAM process
¨ Dynamic volatile¤ Periodic refreshing is
required to retain data
Static RAM (SRAM) Dynamic RAM (DRAM)
![Page 8: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/8.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columns
![Page 9: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/9.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columns
wordline
bitline
![Page 10: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/10.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columnsde
code
r
wordline
bitline
![Page 11: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/11.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columnsde
code
r
Sense Amplifier
row buffer
wordline
bitline
![Page 12: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/12.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columnsde
code
r
Sense Amplifier
row buffer
wordline
bitline
Data Block
multiplexer
![Page 13: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/13.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columnsde
code
rRow Address
ColumnAddress
Sense Amplifier
row buffer
wordline
bitline
Data Block
multiplexer
![Page 14: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/14.jpg)
DRAM Organization
¨ DRAM array is organized as rows×columnsde
code
rRow Address
ColumnAddress
Sense Amplifier
row buffer
wordline
bitline
Data Block
multiplexer All reads and writes are performed through the row
buffer
![Page 15: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/15.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
![Page 16: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/16.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
![Page 17: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/17.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
1V/2
?
![Page 18: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/18.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
1V/2
?
1V/2 + ℇ
0
![Page 19: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/19.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
1V/2
?
1V/2 + ℇ
0
0V/2
?
![Page 20: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/20.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
1V/2
?
1V/2 + ℇ
0
0V/2
?
1V/2
?
![Page 21: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/21.jpg)
Reading DRAM Cell
¨ DRAM read is destructive¤ After a read, contents of cells are destroyed
Precharge Activate Sense
Reading a zero
Reading a one
0V/2
?
1V/2
?
1V/2 + ℇ
0
0V/2
?
1V/2
?
1V/2 - ℇ
V
![Page 22: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/22.jpg)
DRAM Row Buffer
¨ All reads and writes are performed through RB
Data Array
Row Buffer (RB)
DRAM Cell
DRAMSense Amp.
Row Access Strobe (RAS)
Column Access Strobe (CAS)
![Page 23: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/23.jpg)
DRAM Row Buffer
¨ Row buffer holds a single row of the array¤ A typical DRAM row (page) size is 8KB
¨ The entire row is moved to row buffer; but only a block is accessed each time
¨ Row buffer access possibilities¤ Row buffer hit: no need for a precharge or activate
n ~20ns only for moving data between pins and RB
¤ Row buffer miss: activate (and precharge) are neededn ~40ns for an empty rown ~60ns for on a row conflict
![Page 24: MAIN MEMORY SYSTEMbojnordi/classes/6810/f18/slides/19... · 2018. 11. 7. · ¨Charge based memory cells may gradually lose their states due to current leakage ¨DRAM requires the](https://reader035.vdocuments.us/reader035/viewer/2022071422/611be6ead7d6437df45f60e9/html5/thumbnails/24.jpg)
DRAM Refresh
¨ Charge based memory cells may gradually lose their states due to current leakage
¨ DRAM requires the cells’ contents to be read and written periodically¤ Burst refresh: refresh all of the cells each time
n Simple control mechanism
¤ Distributed refresh: a group of cells are refreshedn Avoid blocking memory for a long time
n
time
bursts m
time
distributed