● 解决内存发展瓶颈4bit prefetch架构
虽然内存发展出很多的类型,但是它们都是基于原始的DRAM单元。实际上,DRAM是一个晶体管和一个电容的结合体,很简单但也很高效。换句话说,基本的DRAM架构仍然是现代内存类型的基础,因此,所有的现代内存类型都继承了DRAM的优点和缺点:它需要刷新(预充电,不然随着漏电,DRAM中的数据会消失),以及有操作频率的上限(这也是用电容充电来存储数据的弊病)。DRAM频率不能无限提升,只有在I/O上做文章。SDRAM采用管线架构,内部存储单元的频率和输出频率是一样的。DDR则采用数据预取的架构,同时预取2bit数据,因此输出数据传输率可以做到内部数据传输率的2倍,DDR2则是同时预取4bit数据,在内部存储单元频率不变的情况下,把数据传输率提高4倍。

SDRAM的管线突发结构和DDR的2bit Prefetch结构,以及DDR2的4bit Prefetch结构之间的区别。我们注意到这三种内存类型的内部存储单元,也就是Cell队列的工作频率都是100MHz,数据传输率之所以有差别,是通过不同的内部I/O位宽来实现的。DDR2用的4bit prefetch相当于同时预取四位,输出一位,也就是说输出数据传输率是内部Cell队列数据传输率的4倍。

DDR2内存架构示意图
目前DRAM内部采用4 bank的结构(1Gb DRAM采用8 bank结构),每个bank由存储单元(cell)队列构成,存储单元队列通过行(row)和列(column)地址定位。它们的工作流程是:首先是命令和地址信息输入,经过地址解码器分解成bank(段)和Word(字)选择,Word选择就是行(Row)选择,然后要对存储单元进行再存储(Restore)和预充电(Precharge)过程。我们知道DRAM是通过电容来存储数据的,而电容会放电,通过预充电来防止DRAM信息丢失。然后是Column(列)选择,到此为止存储单元(cell)已经被定位。存储单元的数据被放大然后输出到内部数据总线(Internal Data Bus)。内部总线通过4-bit prefetch结构处理传输到输出缓存。如上图所示的DRAM内部数据总线是128位,通过4bit-prefetch转换成32bit总线,通过提高频率和在时钟上升延及下降延传输数据,虽然输出总线位宽变窄,但是数据传输率是一样的。
通过4bit-prefetch结构可以在相同的Cell工作频率上把数据传输率倍增,有效的解决了内存发展所遇到的瓶颈。由于DRAM结构的限制,我们知道提升DRAM内部存储单元的频率是比较困难的,而且成本较高。DDR400的核心频率已经达到了200MHz,而DDR2 400的核心频率仅为100MHz,DDR2 533的核心频率为133MHz,可以看到引入DDR2把核心频率提升的空间又让出来了,让内存速度能够保证持续的发展。