主要内容

在SerDes工具箱直通块中实现自定义CTLE

这个例子展示了如何自定义透传块在Simulin金宝appk®中实现一个具有用户定义的AMI参数的CTLE系统对象™。您可以使用这个示例作为修改利用系统对象的PassThrough块的指南。有关PassThrough块的用途以及在其中使用其他Simulink库块的示例的更多信息,请参见金宝app自定义数据路径构建块

在SerDes Designer App中创建SerDes系统

在MATLAB®,类型serdesDesigner启动并行转换器设计在接收器的模拟模型后面放置一个PassThrough块。将PassThrough块的名称改为PTMyCTLE

将SerDes系统导出到Simulink。金宝app

修改PassThrough Block实现CTLE

的自定义副本CTLE从SerDes工具箱™。首先修改PassThrough块的内容来引用一个新的系统对象,然后实现和连接它的参数。这解决了模型的时域(GetWave)函数。然后更新Init代码以反映统计分析中时域(GetWave)的功能。这个示例将引导您使用并行转换器。CTLE系统对象。

在Rx子系统内部,查看PassThrough块的掩码MyCTLE.选择PassThrough块,按Ctrl + U打开MATLAB系统的块参数对话框,并更改系统对象名称并行转换器。透传并行转换器。CTLE

点击好吧保存更改,您将看到块从Pass Through更改为一个CTLE:

注意:您也可以使用自己的自定义System对象。例如,如果你想创建一个自定义的CTLE,并在自适应算法中进行更改:

  1. 打开的源代码并行转换器。CTLE

  2. 在目录中保存源代码的本地副本。

  3. 在代码中进行所需的更改。

  4. 然后在MATLAB系统中参考定制代码。

正确地将CTLE链接到系统范围的参数SymbolTimeSampleInterval,您需要设置CTLE以使用这些参数作为变量,而不是硬编码的值。否则,模拟中可能包含不正确或意外的值,并导致无效数据。双击现在指向CTLE系统对象的PassThrough块,打开块参数对话框窗口。在“高级”选项卡中设置符号时间(年代)SymbolTime取样间隔(s)SampleInterval.点击好吧保存更改。

在直通块中添加AMI参数

打开“SerDes IBIS-AMI Manager”对话框。下Model_Specific参数AMI-Rx选项卡中,选择MyCTLE节点,并添加两个新参数,CTLEModeCTLEConfigSelect

添加CTLEMode参数,单击添加参数按钮,并设置变量:

  • 参数名称CTLEMode

  • 当前值0

  • 描述CTLE模式:0 = off, 1 = fixed, 2 = adapt

  • 类型整数

  • 格式范围

  • Typ1

  • 最小值0

  • 马克斯2

按Ok保存更改。你会看到参数自动添加到画布:

添加CTLEConfigSelect参数,选择MyCTLE节点,单击添加参数按钮,并设置变量:

  • 参数名称CTLEConfigSelect

  • 当前值0

  • 描述CTLE配置选择的范围从0到8

  • 使用InOut

  • 类型整数

  • 格式范围

  • Typ0

  • 最小值0

  • 马克斯8。

按Ok保存更改。同样,您将看到参数自动添加到画布中。

实现AMI参数

连接块MyCTLEParameter。CTLEMode模式输入和MyCTLESignal。CTLEConfigSelectreadConfigSelectPassThrough块的输入。连接ConfigSelect的PassThrough块的输出MyCTLESignal。CTLEConfigSelectwrite块。

有关更多信息,请参见管理AMI参数

您可以双击这些块来确认连接性。例如,双击块MyCTLESignal。CTLEConfigSelectread确认数据存储的连通性Read:

这就完成了时域(GetWave)模拟的设置。

验证代码的统计分析

双击Rx块中的Init子系统,打开块参数对话框。将AMI参数连接为MyCTLE块,点击刷新Init按钮。由于您使用了一个系统对象,因此这种连接性是自动生成的。要验证这一点,请单击显示初始化按钮打开Init子系统的MATLAB代码。控件包围的自定义用户代码区域中,应该可以找到与CTLE AMI参数连接相关的代码% %开始%结束语句。

验证定制CTLE的操作

运行仿真。

要评估CTLE对输出波形的影响,请打开SerDes IBIS-AMI管理器对话框。在AMI-Rx选项卡,设置当前值CTLEMode *参数1采用固定模式操作,并设置当前值CTLEConfigSelect *参数4.重新运行模拟。

另请参阅

|||

相关的话题