当今的数字信号处理和通信系统的设计涉及诸如RF、模拟、数字基带等不同领域的信号处理,系统的设计需要了解和掌握不同领域的专业技术。系统架构工程师迫切需要跨领域的系统仿真工具来应对这样的设计挑战,而传统的专用仿真工具受限于单独领域的仿真功能,难以应对多域仿真的设计挑战。日前,MathWorks公司推出了在MATLAB和Simulink中提供一系列高级信号处理的新工具,来自MathWorks的高级策略师Ken Karnofsky先生向媒体详细介绍了这些新工具为系统架构工程师带来的巨大帮助。
新一代的信号处理设计工具主要从系统和算法设计、FPGA 设计自动化和嵌入式C代码生成三方面进行了创新和优化。
首先,在系统和算法设计方面,MathWorks引入了SimRF建模工具,SimRF具备电路包络和谐波平衡仿真功能,以及多频分析和多端口组件建模功能。对于通信系统设计者来说,他们能够在同一环境中使用顶级的DSP和混合信号设计进行先进的RF建模,设计、优化并验证完整的无线系统设计,进行快速准确的建模和仿真,并具有平滑的学习曲线。此外,MATLAB中还在Signal Processing Blockset、Communications Blockset、Video and Image Processing Blockset中增加了超过250种支持流处理算法的系统对象。主要功能包括封装了在MATLAB中进行流处理所涉及的状态/缓冲/索引等方法,支持算法复用和Simulink集成的标准化编程风格,而且支持定点和C代码生成。Ken举例,MATLAB中的传统的数据处理方法是一次性加载整个文件并进行批处理,使用了System对象后,就可以流式加载并处理每一个数据帧,这样可以节省内存,能够实现无限大数据流的实时仿真。
在FPGA 设计自动化方面,Simulink HDL是MathWorks能够从模型中自动生成HDL代码的产品。新的Simulink HDL 2.0版本通过在模型中突出显示关键路径和估算硬件资源利用率,支持快速的设计迭代。此外还支持序列化、资源共享和流水线操作等的优化。FPGA Workflow Advisor 在 Xilinx 和 Altera FPGA 上自动化了综合和实现过程。新的验证功能包括用于 DO-254 标准的代码可追溯性支持。
在嵌入式C代码生成方面,MathWorks扩展了对C代码生成的支持,包括针对Embedded Linux、Eclipse IDE和ARM Cortex-A8处理器支持自动化目标定位、实时C代码验证。此外,SystemC TLM2.0组件生成器可自动生成System TLM 2.0组件。借助 GNU 编译器工具链支持 Eclipse 集成开发环境 (IDE) 和 Embedded Linux,利用从 MATLAB 和 Simulink 模型自动生成的 C 代码,工程师可以在 Eclipse 中实现项目创建的自动化,以及在 Linux 上部署实时嵌入式系统。支持 SystemC TLM 标准,可将 MATLAB 算法和 Simulink 算法集成到虚拟平台模型中。因此,工程师可以使用基于模型的设计方法,快速实现并验证运行 Embedded Linux 的处理器(如 ARM、Freescale 和 Intel)算法,并将算法集成到片上系统设计中。
这些为MATLAB和Simulink增加的新功能迎合了目前系统设计的潮流,满足了系统架构工程师的需求,并将提高他们的工作效率。Ken Karnofsky最后强调:“这些MATLAB和Simulink面向信号处理系统的新功能使设计流程中的关键任务一体化和自动化成为可能。这是加速IP开发、系统设计和验证以及工程团队之间的协作的一大进步。”