MATLAB、Simulink 和 Polyspace 在嵌入式系统中的应用

对嵌入式系统进行设计、编码和验证

只需轻点按钮,您就可以使用 MATLAB 和 Simulink 生成代码并在硬件上运行。但编码只是其中一环。了解如何使用 MATLAB、Simulink 和 Polyspace,完成下一个嵌入式系统从原型构建到量产的设计、编码和验证。您可以:

  • 生成优化的 C、C++、CUDA、Verilog、VHDL结构化文本  
  • 使用浮点定点设计工具来进行成本与性能的权衡
  • 使用在环测试验证和分析生成的代码
  • 符合标准,如 AUTOSAR、ISO 26262、DO-178、MISRA C 和 CERT C
  • 使用硬件支持包附加功能,在从 Arduino® 到 Zynq®主流开发板上进行原型构建

“利用基于模型的设计,我们成功地进行了首飞,控制和集成方面都没有任何问题。我们使用 Embedded Coder 从 Simulink 模型生成控制律代码,不再因手动生成代码而拖慢进度,让团队有更多时间着眼于整个项目在更高层面的目标。”

从 MATLAB 生成代码

只需三个迭代步骤即可从 MATLAB 生成 C、C++、CUDA 和 HDL 代码。代码可随处运行和部署:从桌面端到移动设备,再到嵌入式系统。MATLAB Coder 可以随着设计的演化自动生成新代码,无需手动编码。这样可以加速并实现更多的设计迭代。

您可以将生成的代码作为源代码、静态库或动态库,集成到在 MATLAB 之外、于桌面端或云端运行的应用程序中。您也可以将生成的代码打包为 MEX 函数,直接在 MATLAB 中使用。

使用 MATLAB 和 Simulink 生成嵌入式代码
嵌入式系统评估套件

从 Simulink 生成代码

使用 Embedded Coder 将您的模型转换为高质量的源代码和可执行文件,用于原型构建和量产。您可以使用默认的 C/C++ 设置,也可以借助 SIMD 指令、数据存储类以及代码在内存区段中的布局来进一步优化性能。生成可直接集成到您的运行时系统中的 ANSI/ISO C/C++、MISRA-C 或 AUTOSAR 源代码。您也可以生成完整的即用型可执行文件,它会自动下载到您的自定义硬件设备上并运行。

使用双向可追溯性链接检查模型的生成代码,或生成包含代码、数据、函数接口和代码指标的报告。

定点

使用丰富的数据类型和工具,从双精度快速转向开发 8 位、16 位和 32 位定点及单精度算法。Fixed-Point Designer 提供数学、按位、数组和矩阵运算等函数,帮助您针对定点和浮点计算优化设计。

从您的 MATLAB 代码、Simulink 模型和 Stateflow 图轻松生成行为一致的 C/C++ 代码,以及可综合的 Verilog® 和 VHDL® 代码。

使用数据类型覆盖,您的嵌入式定点或单精度设计可以即时切换到双精度,以分析量化的影响。此外,相关工具还能帮助您快速定位溢出、精度损失以及范围或精度浪费的根源。

Fixed-Point Designer
Polyspace

验证设计和代码

编写和管理需求,并将其追溯到模型、生成的代码和测试用例。检查设计是否符合模型标准,例如 MAB。开发和执行基于仿真的测试(包括软件在环、处理器在环和硬件在环的测试)。使用 Embedded Coder,您可以通过任务级和函数级性能剖析来分析生成的代码。

Polyspace 产品支持手写代码和生成的代码。您可以通过它们来证明软件中不存在运行时错误、强制执行编码规则,并使用 CWE、CERT-C 和 ISO/IEC 17961 等标准检查安全漏洞。

支持的标准

使用 Embedded Coder 生成符合主流软件和安全标准(如 AUTOSAR 和 MISRA C)的代码。MathWorks 提供认证和鉴定套件,以确保在开发系统和鉴定工具时符合以下标准的要求:ISO 26262、IEC 61508、EN 50128、IEC 62304、DO-178、DO-254,以及针对汽车、医疗、铁路和航空航天嵌入式系统的其他行业标准。

了解更多

标准验证
Discovery 板

硬件支持

无论您的应用是信号处理、计算机视觉、图像处理还是控制系统,都可以快速生成代码并针对您的硬件进行编译。

生成代码并在嵌入式平台(如 Raspberry Pi™ 或 Arduino®)上进行原型构建。在移动平台上,您可以将生成的代码集成到自己的 App 中,并在 iPhone、iPad 或 Android™ 设备上运行,包括访问摄像头、麦克风和加速度计等设备内置传感器。将嵌入式系统部署到功能强大的微处理器。

此外,MathWorks 和 Connections 合作伙伴为主流硬件提供内置的即交即用式集成。

了解更多