主要内容

PCIe4发射机/接收机IBIS-AMI模型

这个例子展示了如何使用SerDes Toolbox™中的库块创建通用的PCIe Generation 4 (PCIe4)发射器和接收器IBIS-AMI模型。生成的模型符合IBIS-AMI和PCI-SIG PCIe4规范。

在SerDes设计器应用程序中安装PCIe4 Tx/Rx IBIS-AMI模型

本例的第一部分使用SerDes Designer应用程序中的PCIe4所需的模块设置目标发射器和接收器AMI模型体系结构。然后将模型导出到Simulink®进行进一步定制。金宝app

本示例使用SerDes Designer模型pcie4_txrx_ami.在MATLAB®命令窗口中输入以下命令,即可打开模型:

> > serdesDesigner(“pcie4_txrx_ami”)

一个符合PCIe4的发射机使用3.-抽头前馈均衡器(FFE),带有一个预抽头和一个后抽头,以及10个预置。接收器模型使用连续时间线性均衡器(CTLE)与七个预定义设置,和一个2抽选决策反馈均衡器(DFE)。为了支金宝app持这个配置,SerDes系统设置如下:

配置设置

  • 符号时间被设置为62.5ps,因为PCIe4允许的最大工作频率为16GHz

  • 系统被设置为1 e-12

  • 每个符号样本调制,信号保持默认值,分别是16NRZ(不归零),以及微分

发射机模型设置

  • Tx FFE区块被设置为一个预点击和一个后点击,包括三个点击重量。当模型被导出到Simulink时,将在示例的后面添加特定的tap预置。金宝app

  • Tx AnalogOut模型是这样设置的电压1.05V,上升时间12ps,R(输出电阻)50欧姆,C(电容)0.5pF根据PCIe4规范。

通道模型设置

  • 频道损失设置为15db。

  • 目标频率设置为奈奎斯特频率,8GHz。

  • 差分阻抗保持默认值One hundred.欧姆。

接收器模型设置

  • Rx Analogin模型是这样建立的R(输入电阻)50欧姆,C(电容)0.5pF根据PCIe4规范。

  • Rx CTLE块设置为7个配置。的GPZ(增益极点零)矩阵数据是由PCIe4行为CTLE规范中给出的传递函数导出的。

  • Rx DFE/CDR块设置为两个DFE水龙头。每个点击的限制已经根据PCIe4规范分别定义+ / -30mV为tap1和+ / -20tap2 mV。

情节统计结果

使用SerDes Designer图来可视化PCIe4设置的结果。

添加的误码率情节从添加图观察结果。

修改Rx CTLE配置选择参数值从06,并观察这如何改变数据眼。

修改Tx FFE的值利用权重(0 1 0)(-0.125 0.750 -0.125)观察结果。

修改Rx CTLE模式适应观察结果。在这种模式下,将扫描所有的CTLE值以找到最优设置。

在继续之前,请重新设置Tx FFE的值TapWeights(0 1 0)和Rx CTLEConfigSelect0.离开的处方CTLE模式在适应.在这里重新设置这些值将避免在模型导出到Simulink后再次设置它们。金宝app当生成最终的AMI模型时,这些值将成为默认值。

导出SerDes系统到Simulink金宝app

点击出口按钮将上述配置导出到Simulink,以便进一步定制和生成AMI模型可执行文件。金宝app

在Simulink中设置PCIe4 Tx/Rx IBIS-AMI模型金宝app

本例的第二部分采用SerDes Designer应用程序导出的SerDes系统,并根据Simulink中的PCIe4的要求对其进行定制。金宝app

回顾Simul金宝appink模型设置

导入Simulink的SerDes系统由Configuratio金宝appn、Stimulus、Tx、Analog Channel和Rx模块组成。从SerDes Designer应用程序的所有设置已经转移到Simulink模型。金宝app保存模型并检查每个块设置。

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

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

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

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

  • 双击Rx块查看Rx子系统的内部。子系统有从SerDes Designer应用程序中继承来的CTLE和dfdr块。还引入了一个Init块来对AMI模型的统计部分建模。

运行模型

运行该模型来模拟SerDes系统。

生成了两个图。第一个是实时时域(GetWave)眼图,在模型运行时更新。

第二个图包含统计(Init)和时域(GetWave)结果的视图,类似于SerDes Designer应用程序中提供的内容。

更新Tx FFE块

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

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

  • 请取消模式参数从AMI文件中删除该参数,有效地硬编码当前值模式在最终的AMI模型固定

检查Rx CTLE Block

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

  • 获得极零该数据来自PCIE4 Behavioral CTLE规范中给出的传递函数。

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

更新Rx DFECDR块

  • 在Rx子系统内部,双击dfdr块,打开dfdr块参数对话框。

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

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

生成PCIe4 Tx/Rx IBIS-AMI模型

本示例的最后一部分使用定制的Simulink模型,修改PCIe4的AMI参数,然后生成符合IBIS-AM金宝appI的PCIe4模型可执行文件、IBIS和AMI文件。

打开配置块的块参数对话框,单击打开SerDes IBIS/AMI管理器按钮。在宜必思选项卡中,模拟模型值被转换为标准IBIS参数,任何行业标准模拟器都可以使用这些参数。在AMI-Rx选项卡中,保留的参数首先列出,然后按照典型AMI文件的格式列出特定于模型的参数。

更新发射机AMI参数

打开AMI-Tx选项卡。按照典型AMI文件的格式,首先列出保留参数,然后是特定于模型的参数。

Model_Specific参数,您可以通过三种不同的方式设置TX FFE点击值:

  • 保留Tx FFE点击值在其默认配置,您可以为前/主/后点击值输入任何浮点值。

  • 创建一个新的AMI参数来自动选择预设值-参见管理AMI参数

  • 直接指定在PCIe4规范中定义的10个预置系数—如下例所示。

当您直接指定预设系数时,您将更改这三个系数的格式TapWeights并为每个预设值指定要使用的准确值。只有这十个预定义将被允许,所有三个水龙头必须设置为相同的预设,以获得正确的值。

设置前冲丝锥

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

  • 设置当前值0.000

  • 改变描述前冲利用价值

  • 改变格式范围列表

  • 改变默认值0.000

  • 列表值框中输入:[0.000 0.000 0.000 0.000 0.000 0.000 -0.100 -0.125 -0.100 -0.125 -0.166]

  • List_Tip值框中输入:[" P0”“P1”“P2”“P3”“P4”“P5”“P6”“P7”“P8”“票数”]

  • 点击好吧保存更改。

设置主要利用

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

  • 设置当前值0.750

  • 改变描述主要利用价值

  • 改变格式范围列表

  • 改变默认值0.750

  • 列表值框中输入:[0.750 0.833 0.800 0.875 1.000 0.900 0.875 0.700 0.750 0.834]

  • List_Tip值框中输入:[" P0”“P1”“P2”“P3”“P4”“P5”“P6”“P7”“P8”“票数”]

  • 点击好吧保存更改。

设置不强调利用

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

  • 设置当前值-0.250

  • 改变描述:不强调利用价值

  • 改变格式范围列表

  • 改变默认值-0.250

  • 列表值框中输入:[-0.250 -0.167 -0.200 -0.125 0.000 0.000 0.000 -0.200 -0.125 0.000]

  • List_Tip值框中输入:[" P0”“P1”“P2”“P3”“P4”“P5”“P6”“P7”“P8”“票数”]

  • 点击好吧保存更改。

添加Tx抖动参数

要添加Tx模型的抖动参数,单击保留参数…按钮打开Tx添加/移除Jitter&Noise对话框,选择Tx_DCDTx_DjTx_Rj框,然后单击好吧将这些参数添加到Tx AMI文件的保留参数部分。以下范围允许您微调抖动值,以满足PCIe4抖动掩码要求。

设置Tx DCD抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯值为3.0e-11

  • 点击好吧保存更改。

设置Tx Dj抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯值为3.0e-11

  • 点击好吧保存更改。

设置Tx Rj抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯价值2.0 e-12

  • 点击好吧保存更改。

更新接收机AMI参数

打开AMI-Rx选项卡。按照典型AMI文件的格式,首先列出保留参数,然后是特定于模型的参数。

添加Rx抖动参数

要为Rx模型添加Jitter参数,请单击保留参数…按钮打开Rx添加/删除抖动和噪声对话框,选择Rx_DCDRx_DjRx_Rj框,然后单击好吧将这些参数添加到Rx AMI文件的保留参数部分。以下范围允许您微调抖动值,以满足PCIe4抖动掩码要求。

设置Rx DCD抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯值为3.0e-11

  • 点击好吧保存更改。

设置Rx Dj抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯值为3.0e-11

  • 点击好吧保存更改。

设置Rx Rj抖动值

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

  • 设置马克斯值为1.0e-12

  • 点击好吧保存更改。

出口的模型

打开出口选项卡。

  • 更新Tx模型名称pcie4_tx

  • 更新Rx模型名称pcie4_rx

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

  • 验证二元模型为Tx和Rx AMI模型设置选择。这将创建支持统计(Init)和时域(GetWave)分析的模型可执行文件。金宝app

  • 设置Tx模型忽略值的比特3.因为在Tx FFE有三次点击。

  • 设置Rx模型忽略值的比特数20,000使Rx DFE分接器有足够的时间在时域模拟中稳定下来。

  • 模型出口作为Tx和Rx都有以便选择要生成的所有文件(IBIS文件、AMI文件和DLL文件)。

  • 设置宜必思文件名pcie4_serdes

  • 按下出口按钮以在Target目录中生成模型。

测试生成的IBIS-AMI模型

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

参考文献

[1]一种总线标准团体,https://pcisig.com

[2] SiSoft支金宝app持知识库文章:pci - gen4 Compliance Kit,https://sisoft.na1.team金宝appsupport.com/knowledgeBase/15488464

另请参阅

|||

相关的话题

外部网站