用途:审查使用 fi、fimath、numerictype 或 quantizenumeric 的 MATLAB 定点代码,针对性能、代码生成效率与正确性给出改进建议。适用于优化定点仿真速度、为 C 或硬件代码生成做准备。不适用于仅用内置整数类型、纯浮点算法,或仅通过 Simulink 模块对话框配置定点的流程(应改用 Fixed-Point Tool)。
主要检查项:向量化 fi() 调用,避免循环内逐元素构造;将数据类型与算法分离,用空原型类型表和 cast(...,'like',...);用下标赋值 acc(:) = acc + x(n) 防止位增长;按目标配置 fimath(C 目标用 Floor/Wrap/KeepLSB,DSP 用 KeepMSB,FPGA 用 hdlfimath);用 zeros(...,'like',...) 预分配 fi 数组;避免定点除法,改用 bitsra 或预计算倒数乘法;用 FunctionApproximation.Problem 查表或 CORDIC 替代 sin、cos、sqrt、exp、log 等函数;fi 构造优先用位置参数或 numerictype;仅需量化时用 quantizenumeric;隔离高动态范围浮点段;用 timeit、fiaccel 等做性能分析与加速。
输出格式:按 [PERF]、[CODEGEN]、[CORRECTNESS]、[PATTERN]、[DEBUG] 分类报告,标注行号与对应检查项,无发现的检查项省略。
限制:资料未提供安装命令、收费与平台信息;具体效果与适用范围需结合实际代码与目标平台验证。