DRAM用MOS(Metal-Oxide-Semiconductor,金属氧化物半导体)来存储一个二进制位数据。目前,常见的DRAM采用了1T1C的结构,如图2.16所示,即包括1个晶体管(Transistor)和1个电容(Capacitor)。数据被存储在MOS晶体管T源极的寄生电容C中,例如,用电容C中有电荷表示“1”,无电荷表示“0”。
DRAM的每个存储单元通过二维行列结构(2 m ×2 n )进行组织,如图2.17所示。DRAM读写请求的数据地址包含行地址( m )和列地址( n )。DRAM首先对行地址进行解析,选中DRAM中的一行(Row),也被称为一个页(Page),并通过读放大器(Sense Amplifier)将一行的数据从二维行列结构中读取到行缓存(Row Buffer)中。然后再对列地址进行解析,从行缓存中选择列地址对应的数据块进行传输。
图2.16 DRAM单元结构示意
图2.17 DRAM二维行列结构
上述DRAM的组织方式给出了一个DRAM路(Bank)中的读/写操作。在路之上依次组织成芯片(Chip)、秩(Rank)、DIMM(Dual In-line Memory Modules,双列直插式内存组件)和通道(Channel),然后与CPU连接。下面从CPU的角度,详细介绍DRAM内存的组织与结构,如图2.18所示。
(a)通道结构
(b)DIMM结构
(c)秩结构
(d)芯片结构
图2.18 DRAM结构层次
一个DRAM的芯片包含若干个路。同一个芯片中不同路共享控制线、地址线和数据线。因为芯片设计面积等方面的限制,芯片引脚的个数有限,因而每个芯片通常支持的数据位宽为4~16比特。
为了支持更大的位宽,DRAM将不同的芯片组织成秩的结构,每个秩内部的不同芯片同时进行读写,从而获得更大的位宽。在同一个秩中,不同芯片共享地址线和控制线,只是提供的数据不同。例如,对于8比特位宽的芯片,DRAM可以在一个秩中组织8个芯片同时读写,以支持64比特位宽的读写。
在DRAM的物理内存条上,如DIMM内存条,包含一个或多个秩。例如,在一个DIMM内存条上,看到正反两面,每面各8个芯片,每一面上的8个芯片各自组成一个秩,该内存条共包含两个秩。
物理内存条是可以直接插在主板上的物理设备,并通过总线与CPU相连。为了提高内存访问性能,CPU可以通过多套总线连接物理内存条。每套总线被称为通道。
CPU与DRAM的连接目前主要采用了DDR(Double Data Rate,双倍数据速率)同步内存接口。DDR的数据带宽与数据总线的频率与位宽相关。数据总线用于在计算机各功能部件之间传送数据,数据总线的位宽(总线的宽度)与总线时钟频率的乘积,与该总线所支持的最高数据吞吐(输入/输出)能力成正比。表2.2列出了DDR数据带宽。
表2.2 DDR数据带宽
注:MT/s即每秒百万次。