DDR全称为 double data rate Synchronous Dynamic Random Access Memory 既DDR SDRAM。
顾名思义需要依次了解这些名词DRAM, SDRAM, DDR, DDR2, DDR3, DDR4。因为这些名词代表DRAM发展的不同阶段,它们是内存的同一条技术路线,核心都是使用一个晶体管和一个电容来所存一个bit的数据。
DRAM
DRAM相对于SRAM来说,DRAM要便宜很多,内部只需要一个晶体管和一个电容来保存数据,可以大规模制造。而SRAM是利用晶体管的特性来存储数据,保存一个数据数据需要7到8个晶体管。
下图是1个bit的DRAM的构造图, 一次只能从memory array中选出一个bit。(读写一个bit,需要先选中World Line,再在Bit Line上读出或者写入选中的bit数据)
如果想在同一时刻输出多位数据,就需要通过叠罗汉的方式使用多个Array构成一个Bank,下图分别为2bits, 4bits, 8bit的Bank。(Bank这个概念非常重要,是我们理解DDR的基础)
下图中的Bank由four arrays叠罗汉构成,8个Banks构成一个device(DRAM),也就是我们看到的黑色芯片,芯片的位宽就由一个bank是由几个Array叠在一起觉得的了。为啥会这样呢?因为这8个bank同一时间只有一个bank能占用i/o读写数据,另外7个bank在refluse或者是在precharge。这就是Dynamic的由来。
然后5个device芯片组成一个Rank,也就是我们看到的电脑中的内存条。
SDRAM
同DRAM相比,SDRAM只是多了clock信号,内部结构基本一致。clock信号是为了让数据传输的更快。
DDR SDRAM
DDR的全称为Double Data Rate SDRAM(双倍速率的SDRAM),就是我们平时说的 内存颗粒 ,也就是 内存芯片 。 DDR在原有的SDRAM的基础上改进而来,SDRAM在一个CLK周期传输一次数据,而DDR在一个CLK周期传输两次数据,分别在上升沿和下降沿各传输一次数据。
DDR2 SDRAM(Double Data Rate Two SDRAM),DDR2内存预读取能力为DDR的二倍。
DDR3 SDRAM(Double Data Rate Three SDRAM),DDR3内存预读取能力为DDR2的二倍。
DDR4 SDRAM(Double Data Rate Fourth SDRAM):DDR4提供比DDR3/ DDR2更低的供电电压1.2V以及更高的带宽。
我们从下图可以看出从DDR到DDR4核心频率并没有本质的提高,bank的结构没有本质的改变,依然保存着DRAM叠罗汉的架构。
具体分析一下DDR2的规格书和电路图:
我们看下DDR2的规格书,1Gb DDR2 SDRAM可以有三种4种不同封装的芯片:
32Mbit x 4 I/Os x 8banks (每个bank由4个memory array叠在一起,一个array保存32Mbit)
16Mbit x 8 I/Os x 8banks (每个bank由8个memory array叠在一起, 一个array保存16Mbit)
8Mbit x 16 I/Os x 8banks (每个bank由16个memory array叠在一起, 一个array保存8Mbit)
在电路图中BA0,BA1,BA2就是用来选择8个bank中的一个。DQ0…DQ7 对应的就是I/O数据位,也就是一个bank由几个array叠起的。nRAS有效时ADDR地址线用来选中World Line,nCAS有效时ADDR地址线用来选中Bit line。
上图中地址线为14位,所以World Line为16k(即2^14), Bit Line是1k. 可见array内部是非常复杂的,竟然有这么多条线!
DRAM的时序图
DRAM没有clock,不需要使用clock保持同步,因此称为异步。
DRAM发展的历史阶段图:
不同历史阶段DRAM的时序图,看图说话不解释,主要注意这时还没有clock:
下图是SDRAM和DDR SDRAM的时序图,可以看到都增加了Clock信号。但是DDR SDRAM又增加了DQS信号,可以在一个时钟周期内存储2bit数据。