主要内容

优化系统的定点数据类型使用定点工具

这个例子显示了如何定义仿真场景和使用定点通过运行仿真工具来收集范围使用这些场景。然后您可以使用定点工具来优化系统的定点数据类型。

在优化过程中,通过模拟软件建立一个基线原始模型。然后构造不同的定点版本的模型和运行模拟来确定行为使用新的数据类型。最小化目标函数的优化选择模型,同时会议指定的行为约束。包括一个金宝appSimulink.SimulationInput对象设置允许您定义额外的模拟场景中考虑优化。一组全面的输入信号可以帮助确保你的设计的全部工作范围是在优化过程中锻炼。

打开模型并定义仿真场景

打开模型。在本例中,您优化控制器子系统的数据类型。模型设置为使用一个斜坡输入,或一个随机输入。

模型=“ex_controllerHarness”;open_system(模型)

创建一个金宝appSimulink.SimulationInput对象包含不同的场景。同时使用斜坡输入和随机输入的四种不同的种子。

如果= S金宝appimulink.SimulationInput。空(5,0);%为随机输入扫描4种不同的种子rng (1);种子=兰迪(1)e6, [1 - 4]);sIndex = 1:长度(种子)si (sIndex) = Simulin金宝appk.SimulationInput(模型);si (sIndex) = si (sIndex) .setVariable (“源”2);% = = 2对应的随机输入来源si (sIndex) = si (sIndex) .setBlockParameter([模型“随机/ uniformRandom”),“种子”num2str(种子(sIndex)));%扫描通过种子si (sIndex) = si (sIndex .setUserString (sprintf ()“random_ %我”、种子(sIndex)));结束%设置= = 1对应于斜坡输入来源如果(5)= S金宝appimulink.SimulationInput(模型);如果(5)= si (5) .setVariable (“源”1);如果(5)= si (5) .setUserString (“斜坡”);

准备系统转换

优化的数据类型的模式,使用定点工具。

  1. 应用程序画廊的ex_controllerHarness模型中,选择定点的工具

  2. 在定点工具,工作流,选择优化定点转换

  3. 系统设计(SUD),选择您想要的子系统优化的数据类型。在本例中,选择控制器

  4. 范围收集模式中,选择模拟范围收集范围的方法。

  5. 模拟输入,您可以指定金宝appSimulink.SimulationInput对象来锻炼你的设计对其完整的操作范围。在这个例子中,使用仿真场景定义。集模拟输入如果

  6. 您可以指定公差对任何信号与信号模型中启用日志表中信号公差。在这个例子中,信号公差部分表明,模型不包含记录信号。因为这个模型使用一个断言块从模型验证库来验证数值系统的行为在优化过程中,指定信号公差是可选的。有关更多信息,请参见指定行为的约束

    如果你有一个fxpOptimizationOptions对象保存之前从命令行优化,例如,如果你以前优化后数据类型在这个模型的例子优化数据类型使用多个仿真场景,您可以导入fxpOptimizationOptions对象下高级选项部分。的设置面板和将来发布设置菜单使用导入的值将被更新。如果一个优化选择对象不是进口,使用默认值,除非另有改变定点的手动工具。对于这个示例,您将指定设置手动程序。

  7. 在将来发布,点击准备。定点工具检查系统设计兼容转换过程和报告任何问题发现在模型中。在可能的情况下,不兼容的定点工具自动更改设置。有关更多信息,请参见使用定点工具准备转换的系统

优化数据类型在定点的工具

  1. 在优化,指定要使用的设置在将来发布,点击设置

    在这个例子中,使用以下设置。

    • 许用单词长度[32]

      这个设置定义了这个词的长度,可用于优化系统。使用这个设置目标邻域搜索的优化过程。最终结果的优化使用单词长度在十字路口设置和单词长度与硬件兼容约束中指定硬件实现你的模型的面板。

    • 马克斯迭代3 e2

      该设置指定的最大数量的迭代执行的优化。优化过程遍历不同的解决方案,直到找到一个理想的解决方案,达到最大迭代次数,或达到另一个停止条件。金宝搏官方网站

    • 耐心50

      这个设置定义的最大迭代数,没有新的找到最佳解决方案。继续优化只要算法最好继续寻找新的解决方案。金宝搏官方网站

    • 目标函数位宽度总和。使用这个设置指示优化最小化总宽度的最终设计,同时满足指定的约束。

    关于优化设置的更多信息,请参阅fxpOptimizationOptions

  2. 优化模型中的数据类型根据指定的设置,点击优化数据类型

    在优化过程中,软件分析范围的对象在你的系统设计和约束中指定的设置应用异构系统数据类型同时最小化目标函数。关于打印到优化过程的细节优化的细节窗格在定点的工具。

    你可以停止前的优化解算器优化搜索是通过点击完成停止在定点的将来发布工具。从你离开的地方,继续优化点击优化数据类型重新启动优化解算器。执行社区搜索必须被激活的简历优化。您也可以选择修改的停止标准优化解算器,包括马克斯迭代,最大时间(秒),耐心(迭代)。这可以帮助快速缩小优化搜索空间。

检查结果

优化完成后,定点工具显示一个表,其中包含所有的解决方案在优化过程中发现。金宝搏官方网站第一个解决方案表中对应于最低的解决方案成本(最小的总宽度)。

查看设置用于优化结果窗格中,单击视图的优化设置

检查对象的范围,收集您的模型在优化过程中,工作流的浏览器窗格中,选择BaselineRun

定点工具显示一个范围的对象模型的总结和每个对象所使用的比特的直方图。每一列的仿真数据的可视化窗格中表示一个直方图模型的一个对象。每本一个直方图对应于二进制字。

选择一列中相应的模型对象结果电子表格的定点工具和填充结果细节面板与更详细的信息关于选择的结果。

你可以使用数据类型可视化来看到一个范围的对象模型的总结和发现的来源溢出,下溢,低效的数据类型。使用探索定点工具的选项卡,您可以在工具基于排序和过滤结果附加标准。

可视化优化期间收集的范围

应用对模型优化的数据类型

  1. 应用优化的数据类型模型,解决方案表中,选择您想要应用的解决方案。金宝搏官方网站在探索将来发布的部分,点击应用和比较。定点工具适用于所选择的解决方案,其中包含优化定点数据类型检查员打开模型和仿真数据。

    在本例中,选择解决方案1,然后单击应用和比较

  2. 在控制器子系统,应用可以看出,优化定点数据类型。

提示

定点工具使用仿真数据检查工具绘图功能,让您绘制图形分析记录信号。因为这个模型不包含任何记录信号比较在本例中按钮仍然禁用。比较的结果的数据类型优化使用模拟数据检查,记录在您的模型中一个或多个信号。

出口优化工作流步骤MATLAB脚本

优化数据类型在定点工具之后,您可以选择出口MATLAB优化工作流步骤®脚本。这允许您保存当前优化工作流步骤,继续优化数据类型使用fxpopt在命令行中。

在将来发布,点击导出脚本。定点工具出口一个脚本调用fxpOptimizationScript.m当前工作目录:

模型=“ex_controllerHarness”;sud =“ex_controllerHarness /控制器”;选择= fxpOptimizationOptions ();选项。MaxIterations = 300;%最大数量的迭代执行。选项。耐心= 50;%的最大迭代数,没有新的找到最佳解决方案。选项。所有owableWordLengths = 2:32;%单词长度,可用于优化系统设计。savedOptions =负载(“fxpOptimizationScript”);options.AdvancedOptions。SimulationScenarios = savedOptions.simulationScenarios;结果= fxpopt(模型、sud选项);探索(结果);

金宝appSimulink.SimulationInput对象,如果,期间使用优化MAT-file叫出口fxpOptimizationScript.mat

另请参阅

|

相关的话题