主要内容

改进型号可读性通过消除本地数据存储块

您可以使用模型工具的变压器更换,以提高模型的可读性数据存储内存数据存储读取, 和数据存储写与任一一个直接信号线,一个块延迟块,或合并堵塞。对于总线信号,该工具还可以添加公共汽车创造者或者总线选择块作为替换的一部分。替换这些块通过制作数据依赖性显式来提高模型可读性。模型变换器创建具有这些替换的模型。新模型具有与现有模型相同的功能。

模型变压器可以替换这些数据存储:

  • 对于不是公交车,如果信号数据存储读取前一个块执行数据存储写块,该工具替换这些块用延迟堵塞。

  • 对于不是公交车,如果信号数据存储写前一个块执行数据存储读取块,该工具替换直接连接这些块。

  • 对于总线信号,如果写入总线元素在读取总线之前执行,则该工具将替换数据存储读取数据存储写块用的直接连接和总线创作者块。

  • 对于总线信号,如果写入总线在读取总线元素之前执行,则该工具将替换数据存储读取数据存储写与直接连接和块总线选择堵塞。

  • 对于有条件地执行子系统,刀具取代数据存储读取数据存储写与直接连接和块合并堵塞。对于其中的读/写一对交叉的模型如果子系统边界和写入块位于子系统内,该工具也可以添加else子系统块。

该型号变压器工具省去只有本地数据存储库数据存储内存块定义。该工具不消除全球数据存储。为了数据存储内存块,在信号属性在块参数对话框选项卡,您必须清除数据存储名称必须解析为Simulink信号对象金宝app范围。

示例模型

该模型ex_data_store_elimination包含两个本地数据存储:B.一种。对于数据存储B., 那里有两个数据存储读取块和一个数据存储写堵塞。对于数据存储一种, 有一个数据存储写块和一个数据存储读取堵塞。红色数字代表排序执行顺序。

替换数据存储块

确定数据存储块有资格进行更换。然后,创建了一个模型,直接信号线取代这些块,延迟块,或合并块。

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

    让addpath(完整文件(文档根, '工具箱',的Simulink',金宝app '实施例'))ex_data_store_elimination

  2. 将模型保存到工作文件夹中。

  3. 应用选项卡,单击型号变压器。可替换地,在MATLAB命令提示,输入以下命令:

    mdltransformer( 'ex_data_store_elimination')

  4. 在里面转换文件夹,选择消除数据存储块查看。

  5. 在里面重构模型的前缀字段中,指定重构的型号前缀。

  6. 点击运行此检查按钮。顶端结果表包含到的超链接数据存储内存块和相应的数据存储读取数据存储写有资格获得消除块。

  7. 点击重构模型按钮。底部结果表中包含一个超链接到新的模式。该工具创建一个m2m_ex_data_store_replacement文件夹。此文件夹包含gen_ex_data_store_replacement.slx模型。

对于本地数据存储一种gen_ex_bus_struct_in_code.slx包含延迟块地方数据存储写块和在地方的一个直接信号连接数据存储读取堵塞。对于本地数据存储B.gen_ex_bus_struct_in_code.slx包含来自一个直接信号连接偏见输出2

限制

该型号变压器不能替代满足这些条件的数据存储读写块:

  • 它们跨越有条件执行的子系统的界限,例如启用,触发或函数呼叫子系统和州流图表。

  • 他们没有完成IF-行动子系统的相互排斥的分支机构。

  • 他们跨越变种的边界。

  • 他们有一个以上的输入或输出。

  • 他们访问阵列的一部分。

  • 他们执行不同的利率。

  • 他们在里面库子系统的不同实例,并有不同的相对执行顺序。

相关话题