人在仿真软件金宝app

金宝app仿真软件和基于模型的设计

为每个子系统和代码生成

今天家伙卷轴是回生成的代码的介绍吗为每个子系统

代码生成器,家伙卷轴

我创建了一个例子在我的模型实现相同的功能以前的文章,但使用Stateflow。我喜欢使用Stateflow创建行为模型当我最感兴趣的表达系统的输入-输出关系。

Modulo-4计数器使用Stateflow

我把表为每个子系统。

为每个子系统Stateflow图表内

为这篇文章使代码更清晰,我配置了Stateflow图表生成可重用的功能在一个单独的文件。

配置Stateflow图表是一个可重用的子系统

现在让我们看看生成的代码:

将输入复制到一个连续的向量
点击图片放大。

我添加了颜色突出显示的不同部分的代码。第一部分(绿色),注意输入信号的组件被放在相邻的位置在内存中。为每个子系统需要这一步如果输入已经不是连续的。注意,这个步骤方面的优化设置循环展开阈值使用memcpy向量赋值

在FOR循环,用于存储一组结构的每个实例所需的信号和状态子系统。这些结构被传递到可重用Stateflow图表功能。当循环完成后,每个元素的输出信号分配给它的目的地。

可重用代码

所指出的我的同事Parasar Kodati,为每个子系统可以生成可重用的代码。假设我有这个相同的多个实例为每个子系统模型,用不同的迭代次数。

为每个子系统的多个实例

我配置为每个子系统生成一个可重用的功能相同的函数名和文件名。现在FOR循环位于一个单独的函数,以作为输入的迭代的数量。

为每个子系统的多个实例
点击图片放大。

请注意,我使用不同的向量长度强调如何对每个子系统的输入和输出的处理循环展开阈值使用memcpy向量赋值选项。

现在轮到你了

你已经为每个子系统使用吗?留下一个这里的评论和告诉我们你正在使用它。

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。