此示例显示如何自定义a普通话Simulink®金宝app中的块以实现带有用户定义的AMI参数的CTL System Object™。您可以使用此示例作为修改杠杆系统对象的Passthrough块的指南。有关Passthrough块的目的的更多信息以及在其中使用其他Simulink库块的示例,请参阅金宝app自定义数据路径构建块。
在MATLAB®,类型serdesDesigner
推出并行转换器设计在接收器的模拟模型后面放置一个PassThrough块。将PassThrough块的名称改为Pt.
到MyCTLE
。
将SerDes系统导出到Simulink。金宝app
的自定义副本CTLE来自Serdes Toolbox™的Bloc。首先修改Passthrough块的内容以引用新系统对象,然后实现并连接其参数。这解决了模型的时域(GetWave)函数。然后更新init代码以在统计分析中镜像时域(getwave)的功能。此示例使用整个过程使用并行转换器。CTLE
系统对象。
在Rx子系统内部,查看PassThrough块的掩码MyCTLE
。选择Passthrough块,按Ctrl + U打开MATLAB系统的块参数对话框,并更改系统对象名称从serdes.passthrough.
到并行转换器。CTLE
。
点击好吧要保存更改,并且您将看到从传递到CTLE的块更改:
注意:您也可以使用自己的自定义系统对象。例如,如果您想创建具有改变的自适应算法的自定义CTL:
打开的源代码并行转换器。CTLE
。
保存目录中的源代码的本地副本。
在代码中进行所需的更改。
然后在MATLAB系统中参考定制代码。
正确将CTLE与系统范围的参数相互连接符号时间和SampleInterval,您需要设置CTLE以使用这些参数作为变量而不是硬编码值。否则,可以在模拟中包含不正确或意外值,并导致无效数据。双击Passthrough块,现在指向CTL System对象以打开“块参数”对话框窗口。在“高级”选项卡中,设置符号时间(年代)到符号时间
和取样间隔(s)到SampleInterval
。点击好吧保存更改。
打开Serdes Ibis-Ami Manager对话框。在下面model_pecific.
参数在AMI-Rx选项卡,选择MyCTLE节点,并添加两个新参数,CTLEMode和ctleconfigselect.。
添加CTLEMode参数,单击添加参数按钮并设置变量:
参数名称到CTLEMode
当前值到0.
描述到CTL模式:0 = OFF,1 =固定,2 =适应
类型到整数
格式到范围
典型到1
闵到0.
最大限度到2
。
按Ok保存更改。你会看到参数自动添加到画布:
添加ctleconfigselect.参数,选择MyCTLE再次点击“节点”添加参数按钮并设置变量:
参数名称到ctleconfigselect.
当前值到0.
描述到CTLE配置选择的范围从0到8
使用到InOut
类型到整数
格式到范围
典型到0.
闵到0.
最大限度到8。
按Ok保存更改。同样,您将看到自动添加到画布的参数。
连接块myctleparameter.ctlemode.
到了模式输入和myctlesignal.ctleconfigselect阅读
到了configselect.输入Passthrough块。连接configselect.Passthrough块的输出到myctlesignal.ctleconfigselect write.
堵塞。
有关更多信息,请参阅管理AMI参数。
您可以双击块以确认连接。例如双击块myctlesignal.ctleconfigselect阅读
要确认数据存储的连接读取:
这就完成了时域(GetWave)模拟的设置。
双击RX块内的Init子系统以打开“块参数”对话框。将AMI参数连接到内部MyCTLE
块,单击刷新init.按钮。由于您使用了系统对象,因此自动生成此连接。要验证此操作,请单击展示init.按钮打开Init子系统的MATLAB代码。控件包围的自定义用户代码区域中,应该可以找到与CTLE AMI参数连接相关的代码%% 开始
和% 结尾
语句。
运行模拟。
要评估CTLE对输出波形的影响,请打开Serdes Ibis-Ami Manager对话框。在里面AMI-Rx标签,设置当前值的CTLEMODE *参数到1
使用固定模式操作和设置当前值的CTLEConfigSelect *参数到4.
。重新运行模拟。