高速DRAM的training

本文讨论了随着接口和存储技术发展带来的数据采样挑战,特别是对数据中心业务至关重要的TrainingModes,如VrefTraining、CommandTraining等,它们在系统启动和稳定运行中的作用及设计挑战。
摘要由CSDN通过智能技术生成

随着每一代接口(Interface)和存储(memory)的频率和速率的提高,信号采样以及传输变得越来越困难,因为数据眼(data eyes)越来越小。 

为了帮助高速 I/O 握手,接口和存储支持越来越多的Training Modes,系统设计人员必须将这些Training Modes作为系统bring up和正常操作的一部分,以使系统能够按预期工作。 

e73190a508a18a32871a4c27a118273f.png

尤其是对于数据中心业务,这些training mode非常重要。

以下是 LPDDR5/DDR5 DIMM 等最新 DRAM 支持的最重要的training mode:

1. Vref Training 

这是内存子系统初始bring up的部分。Host通常会设置 DRAM 模式寄存器,该寄存器将用作command、chip select和 DQ 等信号的参考电压。由于DRAM 可能无法在完成 Vref training之前对 Host 命令进行采样,因此 Host 会分多个周期发送该命令,以确保 DRAM 能够接收该命令。 

2. Command Training 

这通常是Host必须执行的第一个功能Training,以确保 DRAM 设备能够理解它发送的命令。它涉及Host驱动 DRAM 的command总线, 然后DRAM对 DQ 信号进行采样并反馈回去。Host可以检查反馈并与它驱动 的内容进行比较。 如果反馈与驱动的内容不匹配,Host可以调整输入。 

3. Clock to Strobe leveling 

由于布线差异等其他因素,DRAM 使用的strobe信号通常不会与它接收的输入时钟对齐。Host必须通过Clock to Strobe leveling来调整此相位差。此training称为 DDR5 的 Write leveling。 

4. Strobe to DQ Training 

完成 Clock to Strobe training后, 下一步是确保 Host 和 DRAM 能够正确发送/采样写入和读取数据。这一步的目的是让 Host 知道strobe和data信号的时序关系,称为Strobe to DQ training。它通常涉及写入 DRAM 已知数据,然后从同一位置读取并比较两者以检查它们是否匹配。然后,Host将其调整strobe和data的相位关系,并再次执行相同的步骤,直到它能够正确地向 DRAM 写入/读取数据。 

5. Other Trainings 

通常在DIMM中还支持其他几项trainings,以帮助实现设备的特定调整。对于 DDR5 DIMM 等设备,trainings不仅涉及单个组件(RCD、DRAM、DB),还涉及信号如何从一个组件传播到另一个组件。Host需要training单个组件以及整个模块,例如一些 DDR5 LRDIMM 模块级trainings的示例(如 MRE、MRD、DWL、MWD 等)。 

总之,trainings是接口和存储系统启动和正常功能的重要组成部分。它也日益成为一个重要的设计和验证挑战,需要作为 SOC 规划的一部分加以考虑。

### 回答1: DDRtraining是指双数据速率(DDR)存储器训练,它是在一个DDR存储器系统中用来优化信号传输质量和保证稳定性的技术。DDR存储器系统是计算机内存中最常见的类型之一,它使用双倍速率在同一个时钟周期内进行两次数据传输,从而提高内存效率和带宽。然而,在高速传输时,存储器信号的时序和电气特性容易受到外界干扰和时序不稳定性的影响,从而导致传输错误和存储器故障。 DDRtraining的原理是通过对存储器控制器产生的不同训练序列和电气参数进行调整,来优化存储器系统的数据传输、时序校准和稳定性。DDRtraining包括两种模式:速度等级训练和时钟校准训练。在速度等级训练中,训练序列会探测存储器的延迟时间并自动调整数据传输的延迟来匹配存储器的速度等级。而在时钟校准训练中,训练序列会通过对时钟信号进行多次搭配和测试来确定最佳时钟周期,以确保传输稳定性。 DDRtraining可以帮助存储器系统实现更高的带宽、更低的延迟时间和更高的稳定性,同时也可以提高系统对外界电磁干扰的抗干扰能力。在实践中,DDRtraining能够通过减少存储器传输错误和故障,提高系统的数据可靠性和性能,从而得到较好的应用。 ### 回答2: DDR(Double Data Rate)是当前内存模块中最常用的技术,而DDR Training是用来调节DDR信号时序的技术。DDRTraining原理其实就是通过将信号时序移动若干单位,来调整内存控制器与内存模块之间的信号互动,以实现更为准确、更为稳定的数据通信。 DDR Training通常包括三个阶段: 第一阶段是Initial Training,即初始训练。这个阶段主要是用来检查内存控制器与内存模块之间的基本参数、匹配装置的最佳配对方向。这个阶段还会涉及到一些测试,如Bit Error Rate(比特误码率)、Address & Command Timing Margining(地址和控制时间余量)、Read/Write Leveling(读/写平衡)等。相关参数的调整可以参考特定的工具或软件。 第二阶段是System Training,即系统训练。这个阶段主要是用于测试内存模块与其他系统组件之间的最佳匹配规范,以达到最高数据通信速率。它还可以包括一些特殊测试,如Write Leveling and Deskewing、VTT and VREF Training等。这些测试可以用于发现任何引起通信信号不稳定的问题,并提供解决方案。 第三阶段是Product Training,即成品训练。这个阶段主要是用于测试内存模块整体性能,以确定其生产和出货的稳定性和可靠性。它可以涉及到一些特殊类型的测试,如DRAM Aging、Temp Cycle Test、High Temperature Burn-in等。 综上所述,DDRTraining原理是为了校准DDR信号时序,以实现更为准确、更为稳定的内存数据通信,一般包括初始训练、系统训练和成品训练三个阶段。 ### 回答3: DDR是动态随机存取存储器,是一种常见的计算机内存类型,DDRTraining是一种内存布线优化技术,它旨在校准内存子系统的时间和电气特性,以最大化数据传输速率和稳定性。 DDRTraining的原理是通过调整DDR的驱动器和终端电路器件以及引脚之间的配合关系来消除时序偏差和信号干扰,从而达到改善数据传输速率和稳定性的目的。DDRTraining通常由内存控制器和芯片厂商提供的软件算法来执行,它可以动态地调整DDR控制器的计时参数,以适配DDR内存模块的硬件特性,包括驱动强度和时钟偏差等。 DDRTraining的过程需要结合实测和测量来进行,首先需要在不同的工作条件下对DDR内存模块进行校准,获取适合的时钟延迟、时钟提前量和信号等特性信息,然后再进行驱动器和终端器件的调整,调整的目标是稳定的数据传输,通过不断迭代,不断优化DDR的发送和接收的时序参数,从而达到最优的数据传输效果。 总而言之,DDRTraining是一种内存布线的优化技术,通过软件算法和实际测试两种手段,调整内存子系统的时间和电气参数,以达到最大化DDR数据传输速率和稳定性的效果。它是现代计算机系统中内存性能的关键技术之一。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值