main memory system

MAIN MEMORY SYSTEM Mahdi Nazm Bojnordi Assistant Professor School - PowerPoint PPT Presentation

MAIN MEMORY SYSTEM Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture Overview Announcement Homework 3 submission deadline: Nov. 11 th This and the following lectures


  1. MAIN MEMORY SYSTEM Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture

  2. Overview ¨ Announcement ¤ Homework 3 submission deadline: Nov. 11 th ¨ This and the following lectures ¤ Dynamic random access memory (DRAM) ¤ DRAM operations ¤ Memory scheduling basics ¤ Emerging memory technologies

  3. Computer System Overview ¨ DRAM technology is commonly used for main memory

  4. Computer System Overview ¨ DRAM technology is commonly used for main memory CPU

  5. Computer System Overview ¨ DRAM technology is commonly used for main memory CPU Memory

  6. Computer System Overview ¨ DRAM technology is commonly used for main memory CPU ¨ SRAM is used for caches ¨ DRAM is used for main memory ¨ DRAM is accessed Memory on a TLB or last level cache miss

  7. Static vs. Dynamic RAM Static RAM (SRAM) Dynamic RAM (DRAM) ¨ Fast and leaky ¨ Dense and slow ¤ 6 transistors per bit ¤ 1 transistor per bit ¤ Normal CMOS Tech. ¤ Special DRAM process ¨ Static volatile ¨ Dynamic volatile ¤ Retain data as long as ¤ Periodic refreshing is powered on required to retain data

  8. DRAM Organization ¨ DRAM array is organized as rows × columns

  9. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline

  10. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline decoder

  11. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline decoder Sense Amplifier row buffer

  12. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline decoder Sense Amplifier row buffer multiplexer Data Block

  13. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline Row Address decoder Sense Amplifier row buffer multiplexer Column Address Data Block

  14. DRAM Organization ¨ DRAM array is organized as rows × columns bitline wordline Row Address decoder Sense Amplifier row buffer multiplexer All reads and writes are Column performed through the row Address buffer Data Block

  15. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense Reading a zero Reading a one

  16. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 0 Reading a zero ? Reading a one

  17. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 V/2 0 1 Reading a zero ? ? Reading a one

  18. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 V/2 V/2 + ℇ 0 1 1 Reading a zero ? ? 0 Reading a one

  19. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 V/2 V/2 + ℇ 0 1 1 Reading a zero ? ? 0 V/2 0 Reading a one ?

  20. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 V/2 V/2 + ℇ 0 1 1 Reading a zero ? ? 0 V/2 V/2 0 1 Reading a one ? ?

  21. Reading DRAM Cell ¨ DRAM read is destructive ¤ After a read, contents of cells are destroyed Precharge Activate Sense V/2 V/2 V/2 + ℇ 0 1 1 Reading a zero ? ? 0 V/2 V/2 V/2 - ℇ 1 0 1 Reading a one V ? ?

  22. DRAM Row Buffer ¨ All reads and writes are performed through RB DRAM Cell Row Access Data Array Strobe (RAS) Column Access Row Buffer (RB) Strobe DRAM (CAS) Sense Amp.

  23. 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 needed n ~40ns for an empty row n ~60ns for on a row conflict

  24. 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 refreshed n Avoid blocking memory for a long time bursts distributed m n time time

Recommend


More recommend