从内存的读操作中可以了解到内存工作的几个瓶颈,它们分别是内存单元的再存储和预充 电的延时,这个延迟属于bank内部的延迟,由于DRAM结构的限制这个延迟本身不太好解决。还有内部数据总线(Internal Data Bus)的频率限制,内部数据总线是连接DRAM颗粒中4个bank的总线,一个DRAM的瓶颈是输入/输出电路的延迟。
图为内存数据传输机理
对于内部数据总线频率较低的瓶颈,可以通过使用Prefetch(数据预取)架构来 解决,举例来说PC133 SDRAM采用了管线突发架构(Pipeline)或者说是1bit Prefetch,因此它内部数据总线的频率是133MHz和数据输出端的数据传输率是一样的。DDR内存采用了2bit Prefetch技术,因此它输出端的数据传输率是内部数据总线频率的2倍,以DDR400为例,它的内部数据总线的频率是200MHz,而输出端的数据 传输率达到了400MHz。
我们知道DRAM内部存储单元的频率提高比较困难且成本较高,DDR333的核心频 率已经达到了167MHz,为了解决外部数据传输率和核心速度之间的矛盾,DDR2采用了4bit Prefetch(数据预取架构),因此DDR2 400的核心频率仅为100MHz,DDR2 533的核心频率为133MHz,因此DDR2很好的解决了DRAM核心频率和外部数据传输频率之间的问题。
从SDRAM开始,内存就可以和时钟同步,初的SDRAM采用了管线架构 (Pipeline architecture),首先是地址信号(Add)和时钟(CLK)同步,地址信号经过译码选取内存队列中相应的单元,内存队列中选中的数据通过内部 数据总线输出到信号放大电路。SDRAM的信号输出部分也是和时钟信号同步的,这就好象一条连续的管线一样。由于全部操作都和时钟同步,因此也叫同步内 存。
DDR采用了2位预取(2-bit prefetch),也就是2:1的数据预取,2bit预取架构允许内部的队列(column)工作频率仅仅为外部数据传输频率的一半。在SDRAM中数 据传输率完全参考时钟信号,因此数据传输率和时钟频率一样。DDR2采了4位预取(4-bit prefetch),这就是DDR2提高数据传输率的关键,可以在不提高内部存储阵列频率的情况下提高数据输出带宽,未来的DDR3还有现在的RDRAM 采用了8位数据预取。