ModelCoder介绍
在安全关键领域,基于模型的软件工程或者软件开发已逐渐进入了我国的装备研制过程中。使用Simulink或者SCADE等嵌入式软件建模工具对算法或者控制逻辑进行可视化建模,然后生成高可靠的二进制代码逐渐成为了安全关键领域的主流开发方式。
ModelCoder是一款支持多种嵌入式系统建模并可以自动生成高安全可靠的C代码的软件设计和开发工具。ModelCoder支持同步数据流以及状态机等嵌入式模型,其从模型生成代码的过程经过了形式化验证,保证生成过程的正确无误性,能够用飞控,航电,核电DCS等多个安全关键领域的嵌入式软件的设计和开发。
功能
- 模型搭建–以拖拽方式快速构建数据流模型
- 生成C代码–将同步数据流语言经过形式化方法生成可靠的C代码
- 仿真测试–将生成的C代码通过嵌入式编译器生成不同架构的嵌入式程序,测试运行结果的正确性
优势
- 代码生成全过程经过形式化验证,安全可靠
- 图形化方式建模,更直观
- 国产处理器和国产操作系统的支持
建模规则
- 特定的运算符用来支持特定的数据结构,例如Map用来支持对Array的操作。
- 控制模块的复杂度,尽量减少子模块的调用,生成的代码每调用一次函数,就会产生函数传参的开销,此时如果上层有较多循环,则传参的代价较高。
- 检查重复模块,尽量归并重复项,形成基础库。
- 所用模型的输入输出端口的类型与数量必须符合该模型要求。
- 对门电路,建模前应先优化,可降低模型的复杂度。
- 控制局部变量数量,减少不必要的局部变量,以防产生额外的堆栈产生和销毁的开销。
本文标题:ModelCoder国产化解决方案已逐步代替国外软件Matlab/Simulink
文本链接:http://www.digiproto.com