这种技术会减少MATLAB实时车间编码器的编译时间吗?

Cra*_*aig 6 c compiler-construction matlab simulink mex

我的工作场所使用MATLAB和子产品Simulink,Realtime workshop(RTW),RTW Embedded Coder.我们有一个大型的simulink模型,它被编译成C然后到一个目标文件,以便加载到嵌入式目标上.整个编译过程需要大约3小时,这很长,主要是从simulink模型生成的C文件的编译和链接.

删除一个特定子系统会将编译时间缩短到30分钟,并且由于此子系统不会经常更改,我计划在C中编码,然后在MEX中编码,并在主模型中使用MEX文件.

该技术会缩短编译时间吗?我应该研究另一种技术吗?

编辑:我认为解决方案将是粗略的:从违规子系统生成C将此编译为某种对象,库将其包含在模型中(但我对模拟不感兴趣,它只有输入)在构建中包含此内容进程,可能是在编译其余代码后进行链接

Mik*_*keT 3

您可以尝试将有问题的子系统放入另一个模型中并使用模型引用。您可以使用Simulink.SubSystem.convertToModelReference将子系统转换为 Model 模块。

模型引用具有增量代码生成功能,因此只要模型不更改,Simulink 就不会重新生成或重新编译引用模型的代码。