转换MATLAB功能块到定点
这个例子展示了如何使用定点工具转换包含MATLAB的模型®功能块到定点。
的最佳实践MATLAB定点工具中的功能块
不要编辑MATLAB函数块算法的定点变体。使用代码视图编辑MATLAB代码的浮点变体,并重新提出和应用数据类型。
要获得成功的转换,只使用自动定点转换支持的建模构造。万博1manbetx有关受支持的建模构造的列表,请参见万博1manbetx支持自动定点转换的MATLAB语言特性万博1manbetx.
在收集距离信息时,不要在MATLAB函数块中编辑MATLAB代码。如果您试图合并结果,编辑代码将导致问题。
在使用定点工具进行定点转换过程中,不要使用“另存为”选项以其他名称保存MATLAB函数块。如果这样做,您可能会丢失原始块的现有结果。
打开模型
将目录更改为模型所在的文件夹。在MATLAB命令行输入:
cd (fullfile (docroot,“工具箱”,“fixpoint”,“例子”))
复制ex_symmetric_fir.slx
文件到本地可写文件夹并打开模型。
的ex_symmetric_fir
模型采用对称FIR滤波器。模拟模型并检查模型输出。通过双击MATLAB函数块检查对称FIR滤波器算法。
要打开定点工具,请在应用程序选项卡,展开应用程序图库和选择定点的工具.
在“定点工具”中,展开新按钮箭头并选择
迭代定点转换
.下设计中的系统(SUD),选择
symmetric_fir
子系统,其中包含MATLAB函数块,作为系统的转换。下范围采集模式中,选择模拟范围作为范围收集的方法。这将模型配置为使用理想化的浮点数据类型收集范围。
在准备部分,单击准备.
收集靶场信息
收集用于数据类型建议的理想范围。扩大收集范围按钮箭头并选择双精度
.点击收集范围开始模拟。
定点工具将模拟数据存储在一个名为BaselineRun
.检查电子表格中MATLAB变量的范围信息。
建议数据类型
配置建议设置并建议模型的定点数据类型。
在转换部分,您可以配置MATLAB函数块变量的数据类型建议设置。
在本例中,使用缺省提议设置。
点击建议数据类型.
数据类型建议出现在ProposedDT电子表格的列。
请注意
的SpecifiedDT列总是空白的MATLAB函数块变量。
使用代码视图检查代码
要启动代码视图,请单击MATLAB函数按钮。
使用代码视图,您可以:
查看变量和表达式的详细信息。
调整建议设置,例如
fimath
设置。编辑建议的数据类型。
管理功能替换。
有关演示如何用查找表替换MATLAB函数的示例,请参见用查找表替换MATLAB函数块中的函数.
编辑代码。
建议定点数据类型。
将建议的数据类型应用到代码中。
单击,查看当前安全提议的配置设置.在这里您可以编辑fimath
函数的属性。对于本例,默认值为fimath
属性是足够的。
应用建议的数据类型
当您完成检查建议的类型、编辑建议设置和实现任何函数替换之后,将建议的数据类型应用到模型中。您可以从代码视图或从定点工具应用数据类型。
在代码视图窗口中,单击应用.左窗格显示了原始的浮点MATLAB函数块,以及新生成的定点变体MATLAB函数块。
右键单击左窗格中的MATLAB函数块节点。选择转到Block
导航到模型中的MATLAB函数块。
一个变种子系统现在在MATLAB函数块的地方。变体子系统包含MATLAB函数块的浮点和定点版本。活动版本由定点工具根据模型的数据类型覆盖设置自动控制。数据类型覆盖目前在模型上不是活动的,因此定点版本是活动的。
验证结果
返回到定点工具来验证转换的结果。
在验证工具条中的使用嵌入式类型进行模拟按钮,使用新应用的定点数据类型来模拟模型。该模型以定点变量作为主动变量进行仿真。