SuperAPI AI 工具集

simulink-optimizing-embedded-code

通用与其它

查看项目

更新于 10-16 06:46

技能介绍

用途:针对 Simulink 模型生成的嵌入式 C/C++ 代码做迭代优化,通过建议配置、建模和架构层面的改动,并测量改动前后的指标影响。适用于用户要求降低生成代码的运行时间、RAM、ROM 或栈占用,或针对特定硬件目标优化 Embedded Coder 输出,或希望获得可量化前后对比的迭代优化流程。不适用于从零搭建 Simulink 模型、与代码生成无关的 MATLAB 脚本、仿真报错调试,以及手写 C/C++ 代码。

主要能力:整体流程分五个阶段——收集需求、建立基线(SIL/PIL 或 slbuild)、分批建议优化(Stage A/B/C/D)、应用并重新测量(含正确性门与目标轴门)、最终出报告。支持 codegen、SIL、PIL 三种验证模式;codegen 模式使用静态分析,不跑 SIL/PIL,且当目标为 speed 或 balance 时不允许使用 codegen。状态保存在 <project_path>/.eco_diagnostics/state.json,支持断点续跑、版本映射、检查点与回滚。

使用方式:先检测打开的模型,find_system('type','block_diagram','BlockDiagramType','model');检查状态 isfile(fullfile('<project_path>', '.eco_diagnostics', 'state.json'))。无状态则全新运行,有状态则恢复并执行 eco_validate_state 后按 NEXT_ACTION 继续。每个阶段只读取所需阶段文件,读取后记录 eco_token_log('<relative_path_of_phase_file>')。应用改动前必须获得用户明确批准,Phase 1 不可跳过。

限制:需 MATLAB R2023a 及以上;codegen 模式在 GOAL=speed|balance 时被禁止;正确性门先于效率门,失败自动拒绝;目标轴回归必须拒绝并回滚;每次接受版本只打一个检查点,且在两道门通过后执行。资料未提供具体收费、价格与平台信息。