Preview only show first 10 pages with watermark. For full document please download

Memory System Organization “mesh Topology” Dimm1 Dimm2 Dimm3 Dimm4

   EMBED


Share

Transcript

DRAM Memory System: Lecture 3 Spring 2003 Memory System Organization Bruce Jacob David Wang Dimm1 Dimm2 Dimm3 Dimm4 University of Maryland Single Channel SDRAM Controller “Mesh Topology” Addr & Cmd Data Bus Chip (DIMM) Select DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang DRAM System Organization Where is the data? University of Maryland Rank? Bank? Row? Column? CPU Request (Read) (Physical Address) (Cachline length = 64B) Data Data Magic Memory Controller Command Sequence Rank Address = ? Bank Address = ? Row address = ? Column Address ? DRAM Memory System: Lecture 3 Spring 2003 Rank Part 1 Bruce Jacob David Wang Bank Rank University of Maryland Magic Memory Controller It’s a “bank” of chips that responds to a single command and returns data. “Bank” terminology already used. DRAM Memory System: Lecture 3 Spring 2003 Rank Part 2 Bruce Jacob David Wang Rambus RIMM Rank Count is Number of Devices University of Maryland SDRAM Double Sided Dimm Two Ranks SDRAM Single Sided Dimm One Rank SDRAM/DDR SDRAM system: 4~6 ranks RDRAM system: <= 32 ranks DRAM Memory System: Lecture 3 Row, Bitlines and Wordlines Spring 2003 Bank Bank 2 Bruce Jacob David Wang Bank 3 Bank 1 University of Maryland Control Logic Bank 0 Array Bank 0 xArray (8196 512 x 16) Bank 0 (8196 xArray 512 x 16) Bank 0 Array (8196 x 512 x 16) (8196 x 512 x 16) Sense Amp Sense Amp Sense Amp Sense Amp I/O Gating “Banks” of indepedent memory arrays inside of a DRAM Chip SDRAM/DDR SDRAM system: 4 banks RDRAM system: “32” split or 16 full banks DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang University of Maryland Row and Column Revisited “Column” Defined Column: Smallest addressable quantity of DRAM on chip SDRAM*: column size == chip data bus width (4, 8,16, 32) RDRAM: column size != chip data bus width (128 bit fixed) SDRAM*: get “n” columns per access. n = (1, 2, 4, 8) RDRAM: get 1 column per access. 4 bit wide columns #0 #1 #2 #3 #4 #5 “One Row” of DRAM DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang University of Maryland Channel Part 1 Memory Controller DDR SDRAM Current “PC Class” memory system. 1 physical channel of DDR SDRAM Memory Controller DRDRAM DRDRAM Intel i850 DRDRAM memory system. 2 physical channel. 1 logical channel Memory Controller DDR SDRAM DDR SDRAM Intel “Granite Bay” memory system. 2 physical channel. 1 logical channel DRAM Memory System: Lecture 3 Spring 2003 Channel Part 2 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) DRDRAM Memory Controller DRDRAM DRDRAM DRDRAM DRDRAM Memory Controller DRDRAM DRDRAM DRDRAM Alpha EV7 DRDRAM memory system 8* physical channels. 2 logical channels DRAM Memory System: Lecture 3 Spring 2003 Address Mapping I Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) CPU Physical Address Magic Memory Controller Memory Address Variable numbers of rank, coumn, row. DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Address Mapping II Device config 64 Meg x 4 32 Meg x 8 16 Meg x 16 Configuration 16 M x 4 x 4 bks 8 M x 8 x 4 bks 4 M x 16 x 4 bks row addressing 8K (A0 - A12) 8K (A0 - A12) 8K (A0 - A12) bank addressing 4 (BA0, BA1) 4 (BA0, BA1) 4 (BA0, BA1) col addressing 2K(A0-A9,A11) 1K (A0-A9) 512 (A0- A8) “DRAM page size” differs with different configurations. 8 of the x8 devices form 64 bit wide data bus 4 of the x16 devices form 64 bit wide data bus DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang Address Mapping III 32 bit physical address (byte addressable) University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) no rank memory id 32 1413 12 11 31 29 28 27 26 row id Device config bank id column id 0 not used 16 Meg x 16 Configuration 4 M x 16 x 4 bks row addressing 8K (A0 - A12) bank addressing 4 (BA0, BA1) col addressing 512 (A0- A8) One Address Mapping Scheme for 512 M B of M em ory DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Where’s the data? Part 1 Read Request Physical Address: 0x0AC75C38 Magic Memory Controller 32 bit physical address (byte addressable) no rank memory id 32 1413 12 11 31 29 28 27 26 row id bank id column id 0 not used Rank id = 1 Bank id = 1 Row id = 0x0B1D Column id = 0x187 DRAM Memory System: Lecture 3 Spring 2003 Where’s the data? Part 2 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Bank id = 1 Rank id = 1 Column id = 0x187 Row id = 0x0B1D FPM / EDO / SDRAM / etc. DRAM Memory System: Lecture 3 Spring 2003 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Where’s the data? Part 3 c1 d1 d1 d1 d1 Col id 0x187 Col id 0x186 Col id 0x184 Col id 0x185 Given one column address, SDRAM bursts back “n” beats”, with critical word first. “n” is programmable. n = 4 for 32 byte cache line. n = 8 for 64 byte cache line. FPM / EDO / SDRAM / etc. DRAM Memory System: Lecture 3 Spring 2003 Memory Modules I Bruce Jacob David Wang Bare DIP’s shoved into sockets University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Put chips on PCB, make a module Data Address FPM / EDO / SDRAM / etc. Data DRAM Memory System: Lecture 3 Spring 2003 Memory Modules II Bruce Jacob David Wang Registered DIMM University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Latch Data Data Address One extra cycle to buffer and distribute address. More chips (load) can be placed on module DRAM Memory System: Lecture 3 Spring 2003 Memory Modules III Samsung CL2 Bruce Jacob David Wang Elpida CL3 Samsung CL2 University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) Magic Memory Controller tRAS ? tRP ? tCL ? Row count? Column count? 128 Mb *4 128 Mb *8 = 64 MB = 128 MB 256 Mb *4 = 128 MB How does the system configure itself? SPD. DRAM Memory System: Lecture 3 Spring 2003 SPD: Serial Presence Detect Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) SPD: Tiny EEPROM Contains Parameters - Speed settings - Configurations - Programmed by module maker DRAM Memory System: Lecture 3 Spring 2003 SDRAM Chip: 54 Pin TSOP 16M x 16 32M x 8 64M x 4 Bruce Jacob David Wang University of Maryland then the data is valid on the data bus ... depending on what you are using for in/out buffers, you might be able to overlap a litttle or a lot of the data transfer with the next CAS to the same page (this is PAGE MODE) VCC DQ0 VCCQ DQ1 DQ2 V SSQ DQ3 DQ4 VCCQ DQ5 DQ6 V SSQ DQ7 VCC DQML W E# CAS# RAS# CS# A 13 (B A 0) A 12 (B A 1) A 10 (A P ) A0 A1 A2 A2 VCC VCC DQ0 VCCQ NC DQ1 V SSQ NC DQ2 VCCQ NC DQ3 V SSQ NC VCC NC W E# CAS# RAS# CS# A 13 (B A 0) A 12 (B A 1) A 10 (A P ) A0 A1 A2 A2 VCC VCC NC VCCQ NC DQ0 V SSQ NC NC VCCQ NC DQ1 V SSQ NC VCC NC W E# C A S# R A S# C S# A 1 3(B A 0) A 1 2(B A 1) A 1 0(A P ) A0 A1 A2 A2 VCC 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 54 pin T SO P 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 V SS NC V SSQ NS DQ3 VCCQ NC NC V SSQ NC DQ2 VCCQ NC V SS R E S E RV E D DQM CLK CLKE A 14 A 11 A9 A8 A7 A6 A5 A4 V SS V SS DQ7 V SSQ NS DQ6 VCCQ NC DQ5 V SSQ NC DQ4 VCCQ NC V SS R E S E RV E D DQM CLK CLKE A 14 A 11 A9 A8 A7 A6 A5 A4 V SS VSS DQ15 V SSQ DQ14 DQ13 VCCQ DQ12 D Q 11 V SSQ DQ10 DQ9 VCCQ DQ8 VSS R E S E RV E D DQM C LK C LKE A14 A 11 A9 A8 A7 A6 A5 A4 VSS “Same pinout”, except for DQ - data pins DRAM Memory System: Lecture 3 Spring 2003 Kingston SDRAM DIMM Bruce Jacob David Wang University of Maryland 8 Chips. 128 Mbit each. (Infineon) PC133 CAS 3 Dual Inline Memory Module SPD