大数跨境

技术洞见 | DDR的核心技术

技术洞见 | DDR的核心技术 牛芯半导体
2025-07-25
0
导读:本文转载自CSDN论坛作者apple_ttt的博客,转载文章仅供学习和研究使用。

本文转载自CSDN论坛作者apple_ttt的博客,转载文章仅供学习和研究使用。

我们知道DDR区分于之前的SDRAM最大的点,就在于它可以做到“在时钟周期的上升沿和下降沿都能传输数据,这样它的传输速率就比SDRAM快了一倍”。
要做到这点,背后需要的技术突破体现在很多层面:


双边沿触发技术(Double Data Rate)


DDR内存利用时钟信号的上升沿和下降沿,分别触发数据传输。这不同于传统的SDRAM只在时钟信号的上升沿传输数据。通过这一设计,DDR在相同的时钟频率下,能够每个周期传输两倍的数据。
这项技术从诞生到现在也经历了很长时间演变,首先DDR作为最早的双边沿触发内存技术,时钟频率较低,但实现了数据传输速率的翻倍。之后的DDR2、DDR3、DDR4、DDR5,随着内存技术的发展,双边沿触发技术被保留下来并持续改进。这些技术在进一步提升时钟频率的同时,依然使用双边沿触发技术,使得数据传输速率越来越高。例如:DDR3的时钟频率为800 MHz,但由于双边沿触发,其数据传输速率可达到1600 MT/S。DDR5在时钟频率为3200 MHz 时,能够实现6400 MT/s的数据传输速率。


数据选通(Data Strobe, DQS)信号


但是,双边沿触发技术的引入在带来效率提高的同时,也引入了一部分挑战。首先就是信号完整性方面的考虑,在高频传输中,确保时钟和数据的同步非常重要,双边沿触发需要比单边沿更精确的时钟管理机制。DQS(数据选通信号)的引入可以确保在每个时钟周期的上升沿和下降沿准确采样数据。
它的主要作用是帮助内存控制器在读写操作时,正确采样数据,确保数据在高频率下能够稳定传输。DQS信号的工作机制与DDR的读写操作紧密相关。
我们知道DDR之前的SDRAM就是使用clock来同步的,因此理论上,DQ的读写时序完全可以由clock来同步。但是,由于速度提高之后,可用的时序余量越来越小,而引入DQS是为了降低系统设计的难度和可靠性,也就是可以不用考虑DQ和clock之间的直接关系,只用分组考虑DQ和DQS之间的关系,由于DQS和DQ是分组同步的,因此可以将同一组DQ数据线和DQS信号放在电路板上的同一层来走线。这有助于保持信号的时序一致性,减少信号传播中的延迟差异和误差。
DQ和DQS只是组成了源同步时序的传输关系,可以保证数据在接收端被正确的所存,但是IC工作时,内部真正的同步时钟是clock而不是DQS,数据要在IC内部传输存储同样需要和clock(内部时钟比外部时钟慢)去同步,所以就要求所有的DQ信号还是同步的,而且和clock保持一定的关系,所以就要控制DQS和clock之间的延时了。在写入时,以DQS的高/低电平期中部为数据周期分割点,而不是上/下沿,但数据的接收触发仍为DQS的上/下沿。
DQS在读操作中的作用
当DDR内存执行读操作时,DQS信号与内存发送的读数据(DQ)同步。DQS与读数据边沿对齐,这样内存控制器可以准确地在时钟周期的上升沿和下降沿采集到内存传输的有效数据。
DQS边沿对齐:意味着DQS信号的上升沿和下降沿与数据的变化点一致。控制器通过检测DQS信号的边沿来决定何时进行数据采样。每一颗芯片都有一个DQS信号线,它是双向的,在写入时它用来传送由芯片发来的DQS信号,读取时,则由内存生成DQS向芯片发送,因此可以认为DQS就是数据的同步信号。
DQS在写操作中的作用
在写操作时,数据是由控制器发送给内存的。在这种情况下,DQS信号会由内存控制器产生并与写数据(DQ)中心对齐,帮助内存模块在正确的时机接收写入的数据。
DQS中心对齐:DQS的上升沿和下降沿分别位于两个数据比特之间,确保内存能够在时钟周期的中间采样数据。由于时钟周期的中间区域波动最小,中心对齐可以提高写操作的稳定性。
DQS与DDR的突发传输
DDR内存采用突发传输模式,数据在短时间内连续传输多个比特。DQS信号在突发传输中扮演着同步器的角色,确保每个时钟周期的数据都能准确传输与接收。DQS在突发模式下,帮助控制器和内存模块保持数据的传输节奏一致,从而提高了DDR的数据吞吐量。


低电压差分信号传输(LVDS)


除了信号完整性方面的挑战,双边沿触发技术的引入还带来了数据传输延迟和误差控制方面的挑战。由于时钟频率较高,信号传输过程中可能会出现延迟和抖动,DDR内存使用了差分信号传输等技术来减小噪声干扰,保持数据传输的稳定性。这种信号传输技术可以减小电压摆幅,降低电磁干扰(EMI),并提高信号的抗噪声能力,从而保证在高频下的稳定性。


突发传输模式(Burst Mode)


DDR内存采用了突发传输技术。一次内存访问会触发一系列连续的数据传输(突发传输),大幅减少了时钟周期的开销。这样不仅提高了数据传输效率,还在双边沿传输下最大化利用了每个时钟周期。
什么是突发传输(Burst Mode)
突发传输是一种优化的数据传输方式,当DDR内存接收到一次读取或写入命令时,它不仅仅传输一个数据块,而是传输一系列连续的数据块。这使得内存可以更高效地利用时钟周期,减少了频繁的命令开销。每次突发传输的长度通常是4或8,也就是一次突发操作传输4个或8个数据块(单位通常为字节或位)。
突发传输的工作方式
当内存控制器向DDR发送读/写命令时,内存模块会根据预设的突发长度,在每个时钟周期的上升沿和下降沿连续传输多个数据块,而不是逐个周期发出一个数据传输请求。例如,如果设定了突发长度为8(BL8),那么DDR内存会在一个命令下连续传输8个数据块,而不需要为每个数据块单独发送命令。
双边沿传输(Double Data Rate,DDR)是DDR内存的一大特点,即数据在时钟的上升沿和下降沿都可以传输。结合突发传输技术,DDR内存能够在每个时钟周期的上升沿和下降沿连续传输多个数据块,最大限度地利用每个时钟周期。这种双边沿与突发传输的结合,显著提高了内存的数据吞吐量和传输效率。
从DDR的原理图中,我们可以注意到Column Address的A2,A1,A0被单独预留了出来。
这就是为了用于Burst Order功能,并且A3也被用于Burst Type功能。由于一般情况,我们采用的都是顺序读写模式(即{A2,A1,A0}={0,0,0}),所以此时的A3的取值并无直接影响。
突发长度的灵活性
不同的DDR版本可以支持不同的突发长度,比如常见的BL4和BL8,即每次传输4个或8个数据块。在一些高级的DDR版本中,突发长度可以动态调整,甚至支持按需截断(Burst Chop),从而在需要时截断突发传输长度以适应不同的应用需求。


多Bank并行处理


DDR内存内部分为多个独立的Bank,这些Bank可以并行处理多个操作。这种架构在双边沿触发技术下,进一步提高了内存的并发处理能力,提升了数据的吞吐量。


内部数据预取(Prefetch Buffer)


DDR内存使用了预取技术,内部数据预取(Prefetch Buffer)是DDR内存中的一个关键组件用于优化数据传输效率。它的作用是在时钟周期内一次性预取多个数据块,然后在后续时钟周期内逐步输出,从而减少内存访问延迟和提高数据带宽,下面是对Prefetch Buffer详细的解释:
Prefetch Buffer的基本原理
预取的意思是内存控制器一次性从内存阵列中读取多个数据块,并将这些数据暂时存储在Prefetch Buffer中,而不是每次只读取一个数据块。这些预取的数据将被存储在一个缓冲区中,等待传输。在随后的时钟周期内,内存可以通过双边沿传输技术,将这些预取的数据块逐一传输给控制器,从而提高内存的吞吐量。
Prefetch Buffer的工作机制
在DDR内存中,预取技术通常与突发传输相结合。每次数据请求时,DDR内存通过预取缓冲区一次性从内存阵列中读取多个数据块。预取数据存储在Prefetch Buffer中,控制器通过DQS(数据选通信号)在每个时钟周期的上升沿和下降沿读取这些数据。
预取深度(Prefetch Depth)
不同的DDR内存有不同的预取深度,这决定了每次内存访问可以预取多少数据:DDR1使用的是2n预取,即每次预取2个数据块。DDR2和DDR3使用的是4n或8n预取,可以一次性预取4或8个数据块。DDR4通常使用8n预取,即每次预取8个数据块。DDR5提升至16n预取,一次预取16个数据块。预取深度越大,意味着内存能够在一次读取中获取更多的数据,这对于提升高频率下的内存效率非常重要。
显然,通过使用Prefetch架构可以解决存储单元内部数据总线频率(核心频率)较低的瓶颈。8n预取,正是DDR3提升带宽的关键技术。同样的核心频率,DDR3能提供两倍于DDR2的带宽。总结:DDR SDRAM内部存储单元的核心频率提高比较困难目成本较高,为了解决外部数据传输率和核心速度之间的矛盾,DDR3引进了8n Prefetch(数据预取架构)技术,它能够提供比DDR2更高的数据传输率。
Prefetch Buffer与时钟频率的关系
DDR的频率可以分为:
  • 核心频率
  • 时钟频率(I/O频率)
  • 数据传输频率
核心频率就是内存的工作频率。DDR1内存的核心频率是和时钟频率相同的,到了DDR2和DDR3时才有了时钟频率的概念,就是将核心频率通过倍频技术得到的一个频率。数据传输频率就是传输数据的频率。DDR1预读取是2位,DDR2预读取是4位,DDR3预读取是8位。
随着DDR内存时钟频率的不断提升,直接从内存阵列中读取数据的速度很难跟上外部数据总线的需求。预取缓冲区通过提前从内存阵列中获取数据,能够在时钟频率较高的情况下,保持较高的带宽和数据吞吐量。通过这种机制,即便内存阵列访问速度相对较慢,DDR内存仍然可以通过预取技术保持较高的外部数据传输速率。
总结
内部数据预取(Prefetch Buffer)是DDR内存提高数据传输效率的重要技术之一。通过在每次内存访问时预取多个数据块,DDR内存可以减少内存访问延迟,提升数据传输带宽。预取技术结合突发传输和双边沿传输,使得DDR内存在高频率下仍然能够保持高效的传输能力,并通过不同的预取深度适应各种高性能应用场景。

往期推荐

01

牛芯半导体亮相ICDIA 2025展会,斩获“2025中国创新IC-强芯评选”生态贡献奖

▲ 点击阅读

02

牛芯半导体成功入围2024年度深圳高成长企业TOP100

▲ 点击阅读

03

牛芯DDR5 IP取得突破性进展

▲ 点击阅读


牛芯半导体(深圳)有限公司(简称“牛芯半导体”)成立于2020年,聚焦接口IP的开发和授权,并提供相关整体解决方案,致力成为全球领先的IP供应商。


牛芯半导体在主流先进工艺布局SerDes、DDR等中高端接口IP,产品广泛应用于消费电子、网络通信、数据存储、人工智能、汽车电子、医疗电子等领域。


未来,牛芯半导体持续响应IP市场需求,适应不断演进的接口技术和日益拓展的接口互联场景,赋能数智时代下的千行百业。

【声明】内容源于网络
0
0
牛芯半导体
牛芯半导体,专注于高速互联技术的研发和持续创新,拥有完全自主可控的知识产权,提供全栈式接口IP授权和高速互联芯片的定制方案,赋能芯片国产化;已服务客户超百家,涵盖智能驾驶、人工智能、特种计算等领域,致力成为全球领先的高速互联半导体公司。
内容 0
粉丝 0
牛芯半导体 牛芯半导体,专注于高速互联技术的研发和持续创新,拥有完全自主可控的知识产权,提供全栈式接口IP授权和高速互联芯片的定制方案,赋能芯片国产化;已服务客户超百家,涵盖智能驾驶、人工智能、特种计算等领域,致力成为全球领先的高速互联半导体公司。
总阅读0
粉丝0
内容0