主要内容

DDR5控制器发射器/接收器IBIS-AMI模型

本示例展示了如何使用SerDes Toolbox™中的库块创建通用的DDR5发射器和接收器IBIS-AMI模型,并已通过Intel®验证。由于DDR5 DQ信号是双向的,本例为控制器创建Tx和Rx模型。生成的模型符合IBIS-AMI规范。

DDR5控制器Tx/Rx IBIS-AMI模型设置在SerDes设计器应用程序

本示例的第一部分使用SerDes Designer应用程序中DDR5所需的块设置和探索目标发射器和接收器架构。然后SerDes系统导出到Simulink®,用于进一步定制和IBIS-AMI模型生成。万博1manbetx

在MATLAB®命令窗口中键入以下命令以打开ddr5_controller模型:

> > serdesDesigner(“ddr5_controller”)

控制器有一个DDR5发射器(Tx),使用4抽头前馈均衡(FFE)。控制器还具有DDR5接收器(Rx),使用具有8个预定义设置的连续时间线性均衡器(CTLE)和带有内置时钟数据恢复的4点决策反馈均衡器(DFE)。

配置设置

  • 符号时间设置为208.3Ps,因为目标开工率是4.8Gbps的DDR5-4800。

  • 系统设置为100年e-18

  • 信号设置为单端

  • 每个符号的样本而且调制均保持默认值,分别为16而且NRZ(不归零),分别。

发射机模型设置

  • Tx FFE块设置为一个预tap,一个主tap和两个后tap,包括四个tap权重。这是使用数组[0 1 0 0]完成的,其中主点击由数组中最大的值指定。当模型导出到Simulink时,点击范围将在后面的示例中添加。万博1manbetx

  • Tx AnalogOut模型是这样设置的电压1.1V,上升时间One hundred.ps,R(输出电阻)为50 o号,C(电容)0.65最终模型中使用的实际模拟模型将在本例后面生成。

渠道模型建立

  • 单端阻抗设置为40欧姆。

  • 目标频率设置为2.4GHz,也就是4.8 GHz的奈奎斯特频率

  • 频道损失设置为5Nyquist的dB,这是典型的DDR通道。

接收机模型设置

  • Rx AnalogIn模型是这样建立的R(输入电阻)为40欧姆,C(电容)0.65最终模型中使用的实际模拟模型将在本例后面生成。

  • CTLE块设置为8配置。的规范设置为直流增益和交流增益直流增益设置为[0 -1 -2 -3 -4 -5 -6 -7]dB。峰值频率设置为2.4GHz。所有其他参数保持默认值。

  • DFECDR块设置为四个DFE水龙头,包括四个初始丝锥重量设置为0。的最小抽头值设置为[-0.2 -0.1 -0.1 -0.1]V和最大抽头值设置为[0.2 0.1 0.1 0.1]V。

  • 注意:DFECDR提供了“2X开关”选项。选中此选项以使脉冲响应值与JEDEC使用的约定匹配。取消选中此选项可直接从图中使用脉冲响应值。

统计结果

使用SerDes设计器添加图按钮以可视化DDR5控制器设置的结果。

添加的误码率图添加图并观察结果。

添加脉冲响应图添加图放大脉冲区域观察结果。

导出SerDes系统到Simulink万博1manbetx

点击保存然后点击出口按钮将配置导出到Simulink,以便进一步定制和生成AMI模型可执行文件。万博1manbetx

DDR5控制器Tx/Rx IBIS-AMI模型在Simulink设置万博1manbetx

本例的第二部分采用SerDes Designer应用程序导出的SerDes系统,并根据需要在Simulink中对DDR5进行定制。万博1manbetx

回顾Simulink模万博1manbetx型设置

导入Simulink的SerDes System由Configu万博1manbetxration、Stimulus、Tx、Analog Channel和Rx块组成。SerDes Designer应用程序中的所有设置都已转移到Simulink模型。万博1manbetx保存模型并检查每个块的设置。

  • 双击配置块,打开块参数对话框。的参数值符号时间每个符号的样本系统调制,而且信号都是从SerDes Designer应用程序转过来的。

  • 双击刺激块打开块参数对话框。您可以设置伪随机位序列(伪随机二进制序列)的顺序和符号的数量来模拟。这个块不是从SerDes Designer应用程序转移过来的。

  • 双击Tx块查看Tx子系统内部。子系统有来自SerDes Designer应用程序的FFE块。还引入了Init块来建模AMI模型的统计部分。

  • 双击模拟通道块,打开块参数对话框。的参数值目标频率损失阻抗和Tx / Rx模拟模型参数从SerDes Designer应用程序中携带。

  • 双击Rx块查看Rx子系统的内部。子系统有来自SerDes Designer应用程序的CTLE和DFECDR块。还引入了Init块来建模AMI模型的统计部分。

运行模型

运行模型来模拟SerDes系统。

生成两个图。第一个是实时时域(GetWave)眼图,随着模型的运行而更新。

模拟完成后,第二个图包含统计(Init)和时域(GetWave)结果的视图,以及为每个结果报告的眼部指标。

审查Tx FFE块

  • 在Tx子系统中,双击FFE块以打开FFE块参数对话框。

  • 利用权重都是从SerDes Designer应用程序转过来的。

回顾Rx CTLE Block

  • 在Rx子系统中,双击CTLE块,打开CTLE块参数对话框。

  • 直流增益交流获得,峰值频率都是从SerDes Designer应用程序转过来的。

  • CTLE模式设置为适应,这意味着内置于CTLE系统对象中的优化算法在运行时选择最优的CTLE配置。

更新Rx DFECDR Block

  • 在Rx子系统中,双击DFECDR块,打开“DFECDR块参数”对话框。

  • 初始丝锥重量最小DFE抽头值,而且最大抽头值RMS设置从SerDes设计器应用程序自适应增益而且自适应步长设置为3 e-06而且1 e-06,分别为基于DDR5控制器期望的合理值。

  • 扩大IBIS-AMI参数以显示IBIS-AMI模型中包含的参数列表。

  • 取消选择相抵消而且引用偏移量从AMI文件中删除这些参数,有效地将这些参数硬编码为它们的当前值。

生成DDR5控制器IBIS-AMI模型

本例的最后一部分采用定制的Simulink模型,修改DDR5控制器的AMI参数,然后生成符合IBIS-A万博1manbetxMI的DDR5控制器模型可执行文件、IBIS和AMI文件。

打开Configuration块的块参数对话框,单击打开SerDes IBIS-AMI管理器按钮。在宜必思选项卡在SerDes IBIS- ami管理器对话框中,模拟模型值被转换为任何行业标准模拟器可以使用的标准IBIS参数。

更新发射机(Tx) AMI参数

打开AMI-Tx选项卡中的SerDes IBIS-AMI管理器对话框。保留参数首先列出,然后是遵循典型AMI文件格式的特定于模型的参数。

设置预强调丝锥

  • 突出TapWeight 1

  • 单击编辑……,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.2,马克斯0.2

  • 点击好吧保存更改

设置主丝锥

  • 突出TapWeight 0

  • 单击编辑……按钮,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ1最小值0.6,马克斯1

  • 点击好吧

设置第一个后强调点击

  • 突出TapWeight1

  • 选择编辑……按钮,以启动添加/编辑参数对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.2,马克斯0.2

  • 点击好吧

设置第二个后强调点击

  • 突出TapWeight2

  • 选择编辑……按钮,以启动添加/编辑参数对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.1,马克斯0.1

  • 点击好吧

添加Tx抖动参数

要为Tx模型添加抖动参数,请单击保留参数…按钮打开Tx添加/删除抖动和噪声对话框,选择Tx_Dj而且Tx_Rj框,然后单击好吧将这些参数添加到Tx AMI文件的“保留参数”部分。以下抖动值可以调整,以满足特定控制器的DDR5掩码要求。

设置Tx确定抖动值

  • 选择Tx_Dj,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变类型用户界面

  • 改变格式价值

  • 设置当前值0.0500

  • 点击好吧以保存更改。

设置Tx随机抖动值

  • 选择Tx_Rj,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变类型用户界面

  • 改变格式价值

  • 设置当前值0.0025

  • 点击好吧以保存更改。

Update Receiver (Rx) AMI参数

打开AMI-Rx选项卡中的SerDes IBIS-AMI管理器对话框。保留参数首先列出,然后是遵循典型AMI文件格式的特定于模型的参数。

设置第一个DFE轻按重量

  • 突出TapWeight 1。

  • 单击编辑……按钮,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.2,马克斯0.05

  • 点击好吧

设置“第二DFE轻拍权重”

  • 突出TapWeight 2

  • 单击编辑……按钮,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.075,马克斯0.075

  • 点击好吧

设置第三个DFE轻拍权重

  • 突出TapWeight 3

  • 单击编辑……按钮,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.06,马克斯0.06

  • 点击好吧

设置第四DFE抽头权重

  • 突出TapWeight 4

  • 单击编辑……按钮,启动“添加/编辑参数”对话框。

  • 确保格式设置为范围并设置Typ0最小值-0.045,马克斯0.045

  • 点击好吧

添加Rx抖动和噪声参数

要为Rx模型添加抖动参数,请单击保留参数…按钮,打开Rx添加/删除抖动和噪声对话框,选择Rx_Receiver_SensitivityRx_Dj Rx_Noise Rx_UniformNoise而且Rx_Rj框,然后单击好吧将这些参数添加到Rx AMI文件的“保留参数”部分。以下抖动和噪声值可以调整,以满足特定控制器的DDR5掩码要求。

设置Rx随机抖动值

  • 选择Rx_Rj,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变类型用户界面

  • 改变格式价值

  • 设置当前值0.00375

  • 点击好吧以保存更改。

设置Rx确定抖动值

  • 选择Rx_Dj,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变类型用户界面

  • 改变格式价值

  • 设置当前值0.0125

  • 点击好吧以保存更改。

设置“接收灵敏度值”

  • 选择Rx_Receiver_Sensitivity,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变格式价值

  • 设置当前值0.040

  • 点击好吧以保存更改。

设置“Rx高斯噪声值”

  • 选择Rx_Noise,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变格式价值

  • 设置当前值0.0015

  • 点击好吧以保存更改。

设置Rx均匀噪声值

  • 选择Rx_UniformNoise,然后按编辑……按钮,弹出“添加/编辑AMI参数”对话框。

  • 改变格式价值

  • 设置当前值0.0025

  • 点击好吧以保存更改。

出口的模型

打开出口选项卡中的SerDes IBIS-AMI管理器对话框。

  • 更新Tx型号名称ddr5_controller_tx

  • 更新Rx型号名称ddr5_controller_rx

  • 请注意,Tx和Rx角百分比设置为10.这将使模拟模型的最小/最大拐角值按+/-10%缩放。

  • 验证二元模型Tx和Rx AMI模型设置都被选中。这将创建支持统计(Init)分析和时域(GetWave)模拟的模型可执行万博1manbetx文件。

  • 设置Tx模型忽略比特到4,因为Tx FFE有四个水龙头。

  • 设置Rx模型忽略比特250000(10000够吗?-GK)使Rx DFE丝锥在时域模拟过程中有足够的时间沉降。

  • 验证Tx和Rx都被设置为导出,并且已选择要生成的所有文件(宜必思文件AMI文件(年代)而且DLL文件(年代)).

  • 设置IBIS文件名temp_ddr5_controller.ibs目录使示例文件ddr5_controller.ibs不会被覆盖。

  • 单击出口按钮在Target目录中生成模型。

更新DDR5模拟模型

为了适应不同的拓扑结构、加载配置、数据速率和传输,DDR5需要可变的输出驱动器强度和输入模上终止(ODT)。虽然使用相同的算法AMI模型,但需要多个模拟模型来覆盖所有这些用例。这些模拟模型的生成超出了本例的范围,因此在当前示例目录中可以获得包含以下模拟模型的完整IBS文件:

  • POD11_IO_ZO50_ODTOFF: 50欧姆输出阻抗,无输入ODT。

  • POD11_IN_ODT40_C:输入40欧姆ODT。

  • POD11_IN_ODT60_C:输入60欧姆ODT。

为了生成这个完整的IBIS文件,对ddr5_controller进行了以下更改。Ibs使用文本编辑器:

  • 创建了一个引脚,其signal_name为DQ1_controller, model_name为dq。

  • 将驱动程序Model_type改为I/O,并将其命名为POD11_IO_Z050_ODTOFF。

  • 增加了两个接收机型号,分别命名为POD11_IN_ODT40_C和POD11_IN_ODT60_C。

  • 所有上述模型都增加了VI曲线和算法模型部分。

  • 添加了一个引用上面提到的模型的模型选择器部分。

注意:始终建议验证.ibs文件中的vinl、vinh、c_comp和其他变量的值是否与您的设备数据表值匹配。

测试生成的IBIS-AMI模型

DDR5发射器和接收器IBIS-AMI模型现在已经完成,可以在任何行业标准AMI模型模拟器中进行测试。

参考文献

[1] IBIS 7.0规范,https://ibis.org/ver7.0/ver7_0.pdf

另请参阅

||||

相关的话题