使用定点工具自动缩放数据对象
定点工具根据通过模拟收集的范围、派生范围分析和模型对象上指定的设计范围为数据对象生成数据类型建议。定点工具还考虑模型对象施加的任何数据类型约束。
使用定点工具进行转换时支持这些类型的数据对象。万博1manbetx
以下部分描述该工具如何收集范围并分析约束。
数据对象的采集范围
模型中使用相同数据对象指定其类型的对象都必须共享相同的数据类型。定点工具收集模型中所有对象的范围。必须共享相同数据类型的对象被放置在数据类型组中。定点工具根据组中所有模型对象范围的并集为组生成一个数据类型建议。
参数对象的采集范围
只要有可能,最好在参数对象上指定设计范围信息。当参数对象的数据类型设置为汽车
,定点工具遵循与建议继承数据类型时相同的规则。定点工具根据以下规则确定用于参数对象的数据类型建议的范围:
情况下 | 如何确定范围 | ||
---|---|---|---|
设计范围在参数对象上指定 | 使用设计范围来提议数据类型 | ||
没有在参数对象上指定设计范围 | Non-tunable参数对象 | 使用参数值提出数据类型 | |
可调参数对象 | 在客户端块上指定设计最小值和最大值 | 使用客户端设计范围提出数据类型 | |
没有在客户端块上指定设计范围 | 使用参数值提出数据类型,但发出关于范围不可用的警告 | ||
客户端块上指定的设计范围冲突 | 使用参数值提出数据类型,但对冲突范围发出警告 |
当客户端块上指定的设计范围与参数对象的设计范围不匹配时,生成的代码中会有额外的移位和类型转换。
数据对象中的数据类型约束
共享数据类型组中的一些对象可能包含它们可以接受的数据类型的约束。例如,有些块只能接受签名数据类型。
自动定量参数对象
定点工具无法检测何时参数对象必须仅为整数,例如将参数对象用作维度、变量控制或布尔值的变量。在这些情况下,必须取消选择接受在将数据类型应用到模型之前,在定点工具建议阶段中的。
自动定量断点对象
断点数据必须始终严格地单调递增。尽管断点数据集在双格式中可能是严格单调的(由于饱和和量化),但在转换为定点数据类型后可能不是这样。定点工具解释了这种行为,并提出了一个足够大的数据类型,以满足转换后的单调性约束。在某些情况下,为了满足约束,数据类型非常大。在这种情况下,请考虑编辑断点数据,以便它可以有效地用定点表示。
使用数据对象的数据类型定义自动缩放模型
下面的模型使用几种不同类型的数据对象,包括万博1manbetx仿真软件。公共汽车
,万博1manbetx仿真软件。NumericType
,万博1manbetx仿真软件。LookupTable
,万博1manbetx仿真软件。断点
对象用于数据类型定义。使用定点工具将浮点模型(包括模型中使用的数据对象)转换为定点。
打开
ex_data_objects
模型。在MATLAB®命令行输入:目录(fullfile (docroot,“工具箱”,“fixpoint”,“例子”));ex_data_objects
从模型菜单中通过选择打开定点工具分析>数据类型设计>定点的工具.
在定点工具中,在准备系统部分的工具条,下面系统设计,选择要转换为不动点的子系统。在本例中,选择
针对嵌入式系统
.在收集范围部分中,选择模拟范围作为范围收集方法。
单击收集范围按钮
开始模拟。定点工具将收集的范围信息存储在一个名为
范围(双)
.在转换数据类型部分,单击提出数据类型按钮
.
定点工具检测模型中的数据对象,并提出满足数据对象约束的数据类型。您可以通过选择查看模型中使用的所有数据对象数据对象在模型层次结构窗格。
要了解关于特定结果的更多信息,请在电子表格中选择该结果。的结果细节Pane提供了关于建议的更多详细信息,并提供了使用特定数据对象突出显示模型中所有块的链接。
控件中显示所有结果的建议数据类型ProposedDT电子表格的列。
要查看结果所属的数据类型组,请添加DTGroup列。单击添加列按钮
.选择DTGroup在菜单。
按DTGroup列,单击列标题。现在可以看到必须彼此共享相同数据类型的结果。
单击应用数据类型按钮
将建议的数据类型写入模型。
定点工具将数据类型建议应用于定义处的数据对象。在本例中,数据对象是在基本工作区中定义的。在MATLAB命令行查看特定数据对象的详细信息。
errorDT
DataTypeMode: '定点:二进制点缩放'的NumericType: 'Signed' WordLength: 16 FractionLength: 11 IsAlias: 1 DataScope: 'Auto' HeaderFile: " Description: "