主要内容

验证一个浮点嵌入式模型

您可以使用数据类型覆盖模式来临时切换模型中的数据类型。此功能允许您维护一个模型,但使用多个数据类型模拟您的模型,并验证每种类型的数值行为。例如,如果实现使用双精度数据类型的算法,并希望检查该算法是否也适合单精度使用,则可以对浮点数据类型应用数据类型重写,以将所有双精度数据替换为单精度数据,而不会永久影响模型中的任何其他数据类型。

对浮点数据类型应用数据类型重写

若要应用数据类型覆盖,必须指定要应用的数据类型和要替换的数据类型。

可以使用以下方法设置数据类型覆盖。此示例将所有浮点数据类型更改为单个。

例如:

set_param (gcs,“DataTypeOverride”“单一”...“DataTypeOverrideAppliesTo”“浮点”);

有关数据类型覆盖设置的详细信息,请参见控制数据类型覆盖

验证单精度模型

本例使用ex_single_validation模型来展示如何使用数据类型覆盖。证明了实现双精度数据类型的算法同样适用于单精度嵌入式应用。

关于模型

  • 输入In2而且In3是双精度输入总和而且产品块。

  • 的输出总和而且产品的数据输入多端口切换块。

  • 输入三机一体控制输入是多端口切换块。这个控件输入的值决定了它的其他输入的和In2而且In3或者是In2而且In3,传递到输出端口。因为三机一体是控件的输入,其数据类型是int8

  • 关系操作符块的输出进行比较多端口切换In4,输出一个布尔信号。

运行示例

打开模型

  1. 打开ex_single_validation模型。在MATLAB中®命令行输入:

    目录(fullfile (docroot,“工具箱”“金宝app模型”“例子”) ex_single_validation

用单点覆盖浮点数据类型

  1. 在命令行中,用单个变量覆盖模型中的浮点数据类型

    set_param (gcs,“DataTypeOverride”“单一”...“DataTypeOverrideAppliesTo”“浮点”);
  2. 在模型中,在建模选项卡上,单击更新模型

    数据类型重写将替换所有浮点()模型中的数据类型数据类型,但不影响整数或布尔数据类型。

运行Model Advisor检查

  1. 从模型,在建模选项卡上,单击模型的顾问

  2. 在“系统选择器”对话框中,单击好吧

    打开模型顾问。

  3. 在Model Advisor中,展开按照任务节点和,在单精度系统建模,选择为严格的单精度设计识别有问题的操作检查。

  4. 在右侧窗格中,单击运行此检查

    通过检验,表明该算法适合单精度使用。要确保生成的代码中没有双精度数据类型,请在生成用于单精度嵌入式使用的代码之前使用单精度转换器。有关更多信息,请参见入门单精密转换器(定点设计师)

支持单一精度的块金宝app

识别Simulink金宝app®支持单一精度的块,在命令金宝app提示符处输入showblockdatatypetable.在模型中,要查找不支持单一精度的块,请使用model Advisor检查金宝app为严格的单精度设计识别有问题的操作

另请参阅

|

相关的话题