DDR SDRAM全称为Double Data Rate SDRAM,中文名为“双倍数据流SDRAM”。DDR SDRAM在原有的SDRAM的基础上改进而来。也正因为如此,DDR能够凭借着转产成本优势来打败昔日的对手RDRAM,成为当今的主流。本文只着重讲讲DDR的原理和DDR SDRAM相对于传统SDRAM(又称SDR SDRAM)的不同。
SDRAM的接口速度是133M,DDR1接口的速度是266M,DDR2接口的速度是533M,DDR3的接口速度是1066M。每提高一代,接口性能都提高了一倍,但是注意看,这四代接口的核心频率都是133M!!也就是说,DRAM存储单元的读写速度没有丝毫提高!!
这是怎么做到的???
核心技术点就在于:(1)双沿传输(2)预取
SDRAM是单沿传输的,核心频率133M,没有预取,也就是说,每个时钟只取1bit数据,时钟频率也是133M,接口速度还是133M(只有上升沿传数);
DDR1是双沿传输的,核心频率依然是133M,但是有2bit预取,也就是说每个时钟可以取出2bit,时钟频率是133M,但是接口速度是266M(注意接口时钟仍然是133M,但是其上升和下降沿都可以传数,所以接口速度翻倍);
DDR2是双沿传输的,核心频率依然是133M,但是有4bit预取,也就是说每个时钟可以取出4bit,时钟频率是266M,但是接口速度是533M(上升和下降沿都可以传数);
DDR3是双沿传输的。核心频率依然是133M,但是有8bit预取,也就是说每个时钟可以取出8bit,时钟频率是533M,但是接口速度是1066M(上升和下降沿都可以传数);
DDR的核心频率、时钟频率和数据传输频率:
核心频率就是内存的工作频率;DDR1内存的核心频率是和时钟频率相同的,到了DDR2和DDR3时才有了时钟频率的概念,时钟频率就是将核心频率通过倍频技术得到的一个频率。数据传输频率就是传输数据的频率。DDR1预读取是2位,DDR2预读取是4位,DDR3预读取是8位。
DDR1在传输数据的时候在时钟脉冲的上升沿和下降沿都传输一次,所以接口速度就是核心频率的2倍。DDR2内存将核心频率倍频2倍所以时钟频率就是核心频率的2倍了,同样还是上升边和下降边各传输一次数据,所以接口速度就是核心频率的4倍。
DDR3内存的时钟频率是核心频率的4倍,所以接口速度就是核心频率的8倍了。
RAS: Row Address Strobe,行地址选通脉冲;
CAS: Column Address Strobe,列地址选通脉冲;
tRCD: RAS to CAS Delay,RAS至CAS延迟;
CL: CAS Latency,CAS潜伏期(又称读取潜伏期),从CAS与读取命令发出到第一笔数据输出的时间段;
RL: Read Latency,读取潜伏期;
tAC: Access Time from CLK,时钟触发后的访问时间,从数据I/O总线上有数据输出之前的一个时钟上升沿开始到数据传到I/O总线上止的这段时间;
tWR: Write Recovery Time,写回,保证数据的可靠写入而留出足够的写入/校正时间,被用来表明对同一个bank的最后有效操作到预充电命令之间的时间量;
BL: Burst Lengths,突发长度,突发是指在同一行中相邻的存储单元连续进行数据传输的方式,连续传输所涉及到存储单元(列)的数量就是突发长度(SDRAM),在DDR SDRAM中指连续传输的周期数;
Precharge:L-Bank关闭现有工作行,准备打开新行的操作;
tRP: Precharge command period,预充电有效周期,在发出预充电命令之后,要经过一段时间才能允许发送RAS行有效命令打开新的工作行;
AL: Additive Latency,附加潜伏期(DDR2);
WL: Write Latency,写入命令发出到第一笔数据输入的潜伏期;
tRAS: Active to Precharge Command,行有效至预充电命令间隔周期;
tDQSS: WRITE Command to the first corresponding rising edge of DQS,DQS相对于写入命令的延迟时间;
SDRAM的内部是一个存储阵列,要想准确地找到所需的存储单元就先指定一个(row),再指定一个列(Column),这就是内存芯片寻址的基本原理;
芯片位宽
SDRAM内存芯片一次传输率的数据量就是芯片位宽,那么这个存储单元的容量就是芯片的位宽(也是L-Bank的位宽);
存储单元数量=行数*列数(得到一个L-Bank的存储单元数量)*L-Bank的数量也可用M*W的方式表示芯片的容量,M是该芯片中存储单元的总数,单位是兆(英文简写M,精确值是1048576),W代表每个存储单元的容量,也就是SDRAM芯片的位宽,单位是bit;
DDR SDRAM内部存储单元容量是芯片位宽(芯片I/O口位宽)的一倍;
DDR2 SDRAM内部存储单元容量是芯片位宽的四倍;
DDR3 SDRAM内部存储单元容量是芯片位宽的八倍;
DDR4 SDRAM内部存储单元容量是芯片位宽的八倍;