主要内容

管理AMI参数

这个例子展示了如何添加、删除、修改、重命名和隐藏AMI IBIS-AMI模型参数建立并行转换器工具箱。这些AMI参数可以使用现有的datapath公司块,用户创建的MATLAB函数块或优化控制回路,可以传递或返回的AMI模型可执行文件(dll)由并行转换器工具箱。

示例设置

这个例子将添加一个新的InOut参数计数与直通datapath公司的块。这个参数将计数的数量通过AMI_Init(应该是1),然后将结果传递给AMI_GetWave将继续计数的总数。虽然这可能不是特别有用的功能为AMI模型开发,它将展示新的AMI参数被添加在模型生成和使用。

检查模型

这个例子从一个简单的接收机模型只使用一块直通。

open_system (“serdes_add_param.slx”)

这个模型并行转换器系统包括配置、刺激、Tx,模拟通道和Rx块。

  • Tx子系统有FFE datapath公司块模型的时域部分AMI模型和一个初始化块模型统计部分。Tx子系统将不会在这个例子中使用。

  • 模拟通道块的参数值为目标频率、丧失、阻抗和Tx / Rx模拟模型参数。

  • Rx子系统有直通datapath公司块和一个初始化块模型的统计部分AMI模型。

运行模型

运行模型来验证编辑前的基本配置是按预期工作。生成两个情节。首先是生活时间域(GetWave)眼图模型运行时更新。

第二个情节包含视图的统计结果(Init)和时域仿真(GetWave)。

如何添加一个新的参数

打开配置块的参数对话框,然后单击开放并行转换器IBIS-AMI经理按钮,选择AMI-Rx选项卡。

1。突出了PTdatapath公司块和新闻添加参数…

2。改变参数名称:

3所示。验证当前值被设置为0(这将是我们计算的起点)。

4所示。在描述类型:初始值的迭代计算

有四种可能的值使用:

  • :需要这些参数输入到AMI可执行。

  • AMI_Init:这些参数是输出和/或AMI_GetWave函数和返回到EDA工具。

  • InOut:这些参数需要输入AMI可执行文件,也可以从AMI_Init返回值和/或AMI_GetWave EDA工具。

  • 信息:这些参数信息为用户和/或仿真工具和不使用的模型。

5。设置使用:InOut

有六个可能的参数类型:

  • 浮动:一个浮点数。

  • 整数:没有小数或十进制整数数字组件。

  • 用户界面:单位时间(数据速率频率的倒数)。

  • 利用:一个浮点数为Tx FFE和Rx DFE延时线。

  • 布尔:真假值,没有引号。

  • 字符串:一个ASCII字符括在引号的序列。

6。设置类型:整数

有三种可能的参数格式:

  • 价值:一个数据值。

  • 列表:一组离散的值,用户可以选择一个值。

  • 范围:一个连续范围的用户可以选择任何之间的最小和最大价值。

7所示。设置格式:价值

8。点击好吧创建新的参数,然后你会看到新的块自动放置在画布上。

访问一个新的参数的初始化函数

新访问参数初始化函数(统计分析)通过impulseEqualization MATLAB函数块。本例中增加了一个InOut参数。使用新的AMI_Init InOut参数“计数”:

1。在Rx子系统,双击Init块打开面具。

2。按下刷新Init按钮来传播新的AMI参数初始化子系统(s)。

3所示。点击好吧关闭面具。

4所示。再次点击初始化块和类型Ctrl-U看看Init面具下面,然后双击打开的初始化块初始化函数。

impulseEqualization MATLAB函数块是一个自动生成的函数提供并行转换器系统的脉冲响应处理块(IBIS-AMI Init)。

注意,新的计数参数被自动添加为一个输出的MATLAB函数作为数据存储块写。不需要数据存储读取,因为输入参数传递的PTSignal Simulink.Parameter。

5。双击impulseEqualization MATLAB功能块打开在MATLAB函数。“% %开始:”和“%结束:“行这个功能块中表示可以输入自定义的用户代码的部分。数据在本节中,将不会书写过度运行Init刷新时:

% %开始:自定义用户代码区(保留当“刷新Init”按钮熨平)
%:自定义用户代码区(保留当“刷新Init”按钮熨平)

刷新Init运行,我们的新参数添加到自定义用户代码区域,根据需要可以使用:

% %开始:自定义用户代码区(保留当“刷新Init”按钮压)PTCount = PTParameter.Count;%的用户添加AMI参数并行转换器IBIS-AMI经理%:自定义用户代码区域(保留“刷新Init”按钮熨平)

6。添加自定义代码,向下滚动到自定义用户代码部分,然后输入PTCount = PTCount + 1;自定义用户代码部分应该是这样的:

% %开始:自定义用户代码区(保留当“刷新Init”按钮压)PTCount = PTParameter.Count;%的用户添加AMI参数并行转换器IBIS-AMI经理PTCount=PTCount+1;%计算每个迭代通过函数。%:自定义用户代码区域(保留“刷新Init”按钮熨平)

7所示。保存更新后的MATLAB函数,然后运行仿真软件项目测试新代码。检查员使用仿真数据,验证计算的价值后,Init现在是' 1 '。

注意,最后一个值计数是写入PTSignal数据存储在AMI_GetWave所以现在可用。

使用如何影响参数初始化

取决于使用选择、参数显示在自定义的用户代码区域impulseEqualization MATLAB功能块以不同的方式:

信息参数

信息参数信息的用户或仿真工具和不通过,或者所使用的模型,因此他们不会出现在初始化代码。

在参数

在参数模型。参数的对象显示为一个常数,可以根据需要使用。例如,一个在名为“InParam”参数,添加到VGA块会显示如下:

VGAParameter.InParam;%的用户添加AMI参数从并行转换器IBIS-AMI经理

输出参数

参数模型。信号显示的对象作为参数的初始值定义在IBIS-AMI经理。例如,一个参数命名为“OutParam”是添加到VGA块' 2 '的当前值会显示如下:

VGAOutParam = 2;%的用户添加AMI参数从并行转换器IBIS-AMI经理

输出参数使用数据存储块写入存储值传递Init的EDA工具(通过AMI_Parameters_Out字符串)和用于GetWave(如果需要)。在上面的例子中,一个数据存储写块名叫“OutParam”是自动添加到初始化功能:

InOut参数

InOut参数使用仿真软件。参数对象和一个模型。信号对象。例如,InOut参数命名为“InOutParam”添加到VGA块会显示如下:

VGAInOutParam = VGAParameter.InOutParam;%的用户添加AMI参数并行转换器IBIS-AMI经理

输入的值是通过使用仿真软件访问。VGAParameter参数参考。InOutParam, while the output value uses a Data Store Write block to store values. In the above example, a Data Store Write block named 'InOutParam' was automatically added to the Initialize Function for passing values out of Init to the EDA tool (via the AMI_Parameters_Out string) and for use in GetWave (if desired):

访问一个新的参数从GetWave函数

新参数自动创建块类型的常数,数据存储读或写数据存储和datapath公司块添加到画布。本例中增加了一个InOut参数。使用新的GetWave InOut参数“计数”:

1。Rx子系统内,点击直通datapath公司块和类型Ctrl-U看下直通面具。

2。添加一个模型/数学操作总和块画布上。

3所示。添加一个模型/来源常数块画布,将值设置为1

4所示。连接的每一个元素,这样通过块现在看起来像下面的:

7所示。保存,然后运行仿真软件项目测试新代码。

通过添加标签值和块的输出端口,看到GetWave后计数的值是3.2 e + 04(样品每个符号*符号)的数量。生成可执行文件AMI模型后,计数的值可以在AMI模拟器的参数字符串。

使用如何影响参数GetWave吗

新的参数以不同的方式从GetWave函数访问,这取决于选择使用。

信息参数

信息参数信息为用户或仿真工具和不能使用的模型。

在参数

在参数模型。所使用的参数对象添加一个常数。例如,一个在名为“InParam”参数,添加到Rx VGA块可以访问任何Rx块通过添加一个常数块是这样的:

有关更多信息,请参见定制并行转换器工具箱Datapath公司控制信号

输出参数

参数模型。信号使用数据存储块写入存储的对象的值传递出GetWave EDA工具(通过AMI_Parameters_Out字符串)或其他Rx块。例如,一个参数命名为“OutParam”是添加到Rx VGA块可以写入数据存储块这样写:

InOut参数

InOut参数使用仿真软件。参数对象和一个模型。信号对象。输入值可以与一个常数块或访问数据存储读取块,而输出值使用数据存储块写入存储值传递出GetWave EDA工具(通过AMI_Parameters_Out字符串)或其他Rx块。例如,如果一个InOut参数命名为“InOutParam”添加到Rx VGA,初始输入值可以访问任何Rx块通过添加一个常数块是这样的:

此外,更新后的输入值可以访问与数据存储读取块是这样的:

输出值可以写入数据存储块这样写:

如何重命名一个参数

使用的参数串并收发器工具箱内置系统对象可以被修改或隐藏但不能重命名。

更名为用户生成AMI参数如下。

更新AMI参数

1。打开配置块的参数对话框,然后单击开放并行转换器IBIS-AMI经理按钮。

2。去的AMI-TxAMI-Rx选项卡参数所在。

3所示。突出参数进行重命名和媒体编辑……

4所示。在参数名称字段中,根据需要改名。

5。点击好吧自动重命名,那么您将看到新的参数在画布上。

更新初始化

1。进军Tx或Rx子系统块参数的使用。

2。双击Init块打开面具。

3所示。按下刷新Init按钮AMI参数名称更改传播到初始化子系统。

4所示。点击好吧关闭面具。

5。再次点击初始化块和类型Ctrl-U看看Init面具下面,然后双击打开的初始化块初始化函数。

6。双击impulseEqualization MATLAB功能块打开在MATLAB函数。

7所示。向下滚动到一节:

% %开始:自定义用户代码区(保留当“刷新Init”按钮熨平)

8。你可以确认的所有实例的参数已经被重命名。

9。保存并关闭MATLAB功能块。

更新GetWave

进入每个datapath公司块使用命名参数和命名参数的每个实例。

验证结果

运行仿真来验证项目仍运行没有错误或警告。

如何删除一个参数

使用的参数串并收发器工具箱内置系统对象可以被修改或隐藏但不能删除。

删除用户生成AMI参数如下。

更新AMI参数

1。打开配置块的参数对话框,然后单击开放并行转换器IBIS-AMI经理按钮。

2。去的AMI-TxAMI-Rx选项卡参数所在。

3所示。强调要删除的参数和新闻删除参数

4所示。您将看到paramter块自动删除从画布上。

更新初始化

注意:参数自定义用户代码区域没有自动删除,所以你会评论或删除它们与下面的步骤:

1。进军Tx或Rx子系统块的参数使用。

2。双击Init块打开面具。

3所示。按下刷新Init按钮来删除任何删除或InOut参数初始化的数据存储子系统。

4所示。点击好吧关闭面具。

5。再次点击初始化块和类型Ctrl-U看下Init面具

6。双击打开的初始化块初始化函数。

7所示。双击impulseEqualization MATLAB功能块打开在MATLAB函数。

8。向下滚动到一节:

% %开始:自定义用户代码区(保留当“刷新Init”按钮熨平)

9。删除或注释掉所有实例的删除参数。

10。保存并关闭MATLAB功能块。

更新GetWave

推到每个datapath公司块删除参数和删除的每个实例使用参数。

验证结果

运行仿真来验证项目仍运行没有错误或警告。

如何隐藏一个参数

有时可能需要一个参数模型功能,但需要对用户隐藏。例如,防止用户改变企业模式,编辑FFE模式参数和检查“隐藏”复选框。

这将防止出现在这个参数.ami文件——实际上硬编码参数的默认值。换句话说,企业模式参数仍然存在这样的代码FFE继续正常工作,但用户可以不再改变的价值。

从Init和GetWave隐藏一个参数:

1。双击打开面具的datapath公司的兴趣。

2。扩大IBIS-AMI参数显示的列表参数被包含在IBIS-AMI模型。

3所示。取消选定的参数(s)是隐藏的。

几件事要记住关于隐藏参数:

  • 当隐藏参数,验证当前参数值(s)是正确的。当前值会作为默认值的参数。

  • 隐藏一个参数对模型执行没有影响。它只删除.ami文件生成的参数。

  • 如果隐藏或InOut参数是类型的,它仍然会出现在AMI_Parameters_Out字符串模型的可执行文件。

如何修改一个参数吗

修改所有参数用于并行转换器工具箱通过并行转换器IBIS-AMI经理对话框使用编辑……按钮。但是,可以修改的参数值取决于哪种类型的参数。

内置的系统对象,只能修改以下字段:

  • 当前值

  • 描述

  • 格式

  • 默认的

  • 列表值列表(格式)

  • Typ /最小/最大值范围(格式)

用户定义参数的所有字段可以修改。

为抖动添加保留参数,模拟缓冲建模和数据管理

保留AMI参数包括:

  • 抖动和噪声等参数Tx_Rj、Tx_Dj Tx_DCD, Rx_Rj, Rx_Dj, Rx_DCD, Rx_GausianNoise等等

  • 模拟缓冲建模参数,如Ts4file TX_V, RX_R

  • 数据管理使用DLL_ID

这些都是后处理参数使用IBIS-AMI兼容模拟器来修改相应的仿真结果。这些参数被添加通过并行转换器IBIS-AMI经理对话框使用保留参数…按钮AMI-TxAMI-Rx选项卡。

注意:保留参数AMI_Version将自动如果任何宜必思7.0变化到7.0保留参数启用IBIS-AMI经理。

注意:只保留的一些参数影响不包括出口IBIS-AMI模型和仿真软件仿真结果。有关更多信息,请参见定制AMI参数

例如,添加Rx_Receiver_Sensitivity和Rx_Dj接收器.ami文件,单击保留参数…按钮弹出Rx添加/删除Jitter&Noise对话框中,选择Rx_Receiver_SensitivityRx_Dj框,然后单击好吧这些参数添加到Rx AMI的保留参数部分文件。

设置这两个参数的值:

  • 选择Rx_Receiver_Sensitivity,然后单击编辑……按钮打开添加/编辑AMI参数对话框。

  • 设置当前值0.04

  • 改变格式价值

  • 点击好吧保存更改。

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

  • 设置当前值0.0

  • 改变类型用户界面

  • 改变格式范围

  • 设置Typ价值0.05

  • 设置最小值价值0.0

  • 设置马克斯价值0.1

  • 点击好吧保存更改。

这两个参数将出现在的Reserved_Parameters部分.ami文件如图所示:

(Rx_Receiver_Sensitivity(使用信息)(浮动型)(价值0.04))

(Rx_Dj(使用信息)(UI)型(范围0.05 - 0.0 - 0.01))

另一个例子,您可以使用试金石文件(也称为SnP文件)来定制模拟缓冲发射机或接收机的建模。这个选项可以使用保留参数启用Ts4file宜必思AMI的经理。

当你点击出口按钮宜必思AMI经理,会出现一个对话框,您可以选择为每个process-corner模型参数文件支持保留参数Ts4file

关于宜必思保留参数的更多信息见宜必思规范。

引用

宜必思7.0规范

另请参阅

||

相关的话题

Baidu
map