这个例子展示了如何使用定点工具为实现简单移动平均算法的模型提出单词长度。该模型已经使用了定点数据类型,但它们不是最佳的。对模型进行仿真,并根据仿真数据提出数据类型。要查看目标硬件如何影响字长建议,首先将目标硬件设置为嵌入式处理器并建议字长。然后,将目标硬件设置为FPGA并提出字长。
在“配置参数”对话框中,单击硬件实现窗格中,您可以指定设备供应商和设备类型你的目标硬件。定点工具在为模型中的对象提出定点数据类型时使用此信息。例如,如果您指定目标硬件为嵌入式处理器,那么工具将建议适合目标的标准字长。
打开ex_moving_average
的例子。
open_system (“ex_moving_average”)
确认目标硬件是嵌入式处理器。在“配置参数”对话框中,单击硬件实现窗格中,设置设备供应商来定制的处理器
.关闭“配置参数”对话框。
模型中的一些块已经指定了定点数据类型。
块 | 数据类型在块上指定 |
---|---|
Dbl2Fixpt |
fixdt(10) 1日16日 |
Gain1 |
fixdt(1, 32岁,17) |
Gain2 |
fixdt(1, 32岁,17) |
Gain3 |
fixdt(1, 32岁,17) |
Gain4 |
1) fixdt(16日 |
Add1 |
fixdt(1, 32岁,17) |
Add2 |
fixdt(1, 32岁,17) |
Add3 |
fixdt(1, 32岁,17) |
使用定点工具中的迭代定点转换工作流来查看目标硬件是如何影响单词长度建议的。
在模型中应用程序画廊,选择定点的工具.
在定点工具中,单击新,并选择迭代定点转换
.
在定点工具,下面设计中系统(SUD)中,选择ex_moving_average
作为系统转换。
下范围收集模式中,选择模拟范围作为距离收集的方法。这将配置模型以使用理想化的浮点数据类型收集范围。
在工具栏中,单击准备准备系统进行转换。
扩大收集范围按钮箭头并选择双精度
.点击收集范围开始模拟。
定点工具以标题为运行的形式存储模拟数据BaselineRun
.您可以在电子表格中检查模型中块的范围信息。
在转换部分中,您可以为块配置数据类型建议设置。单击设置按钮箭头。在设置对话框中,在提出中,选择字长
.
点击提出数据类型.
定点工具使用可用的范围数据,根据以下规则计算数据类型建议:
设计的最小值和最大值优先于模拟范围。
工具观察模拟范围,因为您选择模拟范围作为范围收集方法。
的模拟安全裕度最小/最大(%)参数指定与模拟范围定义的范围不同的范围。在本例中,使用的是默认安全裕度。
定点工具分析所有定点块的数据类型根据定点工具的更改锁定输出数据类型设置参数是清除。
对于模型中的每个对象,定点工具提出了最小单词长度,以避免收集范围信息的溢出。因为目标硬件是一个16位嵌入式处理器,所以Fixed-Point工具根据处理器对每个数据类型使用的位数提出单词长度。有关更多信息,请参见定点工具如何使用目标硬件信息.
该工具建议较小的单词长度Gain4
和Gain4:增益
.该工具计算出它们的理想字长小于或等于嵌入式处理器的字符位长(8
),因此该工具将单词的长度四舍五入到8
.
要查看目标硬件如何影响字长提议,请将目标硬件更改为FPGA/ASIC。
在“配置参数”对话框中,单击硬件实现窗格中,设置设备供应商来ASIC / FPGA
.
点击应用关闭“配置参数”对话框。
在定点工具中,单击提出数据类型一次。
因为目标硬件是FPGA,所以对于定点工具所建议的字长没有限制。的字长Gain4:增益
现在是2
.