主要内容

PCIe4发射器/接收器IBIS-AMI型号

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

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

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

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

> > serdesDesigner(“pcie4_txrx_ami”)

符合PCIe4标准的发射机使用3.-tap前馈均衡器(FFE),具有一个预tap和一个后tap,和十个预设。接收机模型使用连续时间线性均衡器(CTLE),具有七个预先定义的设置,和一个2-tap决策反馈均衡器(DFE)。为了支持此配置,SerDes系统设置如下:

配置设置

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

  • 系统被设置为1 e-12

  • 每个符号样本调制,信号都保持默认值,分别为16NRZ(不返回零),和微分

发射机模型设置

  • Tx FFE块设置为一个预tap和一个post tap,包括三个tap权重。当模型导出到Simulink时,具体的点击预设将在后面的示例中添加。

  • Tx类比模型的建立是这样的电压1.05V,上升时间12ps,R(输出电阻)50欧姆,C(电容)0.5pF按照PCIe4规范。

通道模型设置

  • 频道损失设置为15 dB。

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

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

接收器模型设置

  • Rx类比模型是这样建立的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之后再次设置它们的需要。在生成最终AMI模型时,这些值将成为默认值。

导出SerDes系统到Simulink

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

在Simulink中建立PCIe4 Tx/Rx IBIS-AMI模型

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

回顾Simulink模型设置

导入到Simulink中的SerDes系统由配置、刺激、Tx、模拟通道和Rx块组成。SerDes Designer应用程序中的所有设置都已转移到Simulink模型中。保存模型并检查每个块设置。

  • 双击Configuration块以打开块参数对话框。的参数值符号时间每个符号样本系统调制而且信号从SerDes Designer应用程序中继承下来。

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

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

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

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

运行模型

运行模型模拟SerDes系统。

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

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

更新Tx FFE块

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

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

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

回顾Rx CTLE块

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

  • 获得极零数据来自SerDes Designer应用程序。这些数据来自于PCIE4行为CTLE规范中给出的传递函数。

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

更新Rx DFECDR块

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

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

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

生成PCIe4 Tx/Rx IBIS-AMI模型

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

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

更新发射机AMI参数

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

Model_Specific参数,你可以用三种不同的方式设置TX FFE tap的值:

  • 保持Tx FFE tap值为默认配置,您可以为预/主/后tap值输入任何浮点值。

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

  • 直接指定PCIe4规范中定义的十个预设系数-如下例所示。

当您直接指定预设系数时,您将更改这三个系数的格式TapWeights并为每个预设指定要使用的确切值。只有这10个定义的预设是被允许的,并且所有三次点击都必须设置为相同的预设才能得到正确的值。

设置前冲丝锥

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

  • 设置当前值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.200 -0.125 0.000]

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

  • 点击好吧以保存更改。

添加Tx抖动参数

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

设置“发送DCD抖动值”

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

  • 设置当前值0.0

  • 改变格式范围

  • 设置Typ价值0

  • 设置最小值价值0

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

  • 点击好吧以保存更改。

设置“发送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选项卡中的SerDes IBIS/AMI管理器对话框。按照典型AMI文件的格式,首先列出保留参数,然后是特定于模型的参数。

增加Rx抖动参数

若要为Rx模型添加抖动参数,请单击保留参数…按钮打开Rx添加/删除抖动和噪声对话框,选择Rx_DCDRx_Dj而且Rx_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

  • 点击好吧以保存更改。

出口的模型

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

  • 更新Tx模型名称pcie4_tx

  • 更新Rx模型名称pcie4_rx

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

  • 验证二元模型在Tx和Rx AMI模型设置中都被选中。这将创建支持统计(Init)和时域(GetWave)分析的模型可执行程序。

  • 设置Tx模型位忽略值3.因为有三个水龙头在Tx FFE。

  • 设置Rx模型位忽略值20000年以便在时域模拟过程中有足够的时间让Rx DFE丝锥沉降。

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

  • 设置宜必思文件名pcie4_serdes

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

测试生成的IBIS-AMI模型

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

参考文献

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

另请参阅

|||

相关的话题

Baidu
map