作者
Iuliana Prodan
Iuliana是恩智浦的一名软件工程师,主要负责Zephyr、Sound Open Firmware及Linux音频子系统的开发。她热衷于探索新技术,在日常工作中推动创新与优化。Iuliana乐于交流、分享知识,并将创意转化为实际成果。

在ARM® Cortex®-A或Cortex-M内核上运行Zephyr实时操作系统(RTOS),已是一项成熟的做法,并有海量文档和现成示例提供支持。然而,恩智浦i.MX和i.MX RT系列中的多款处理器还集成了额外的计算引擎——一颗或多颗Cadence Tensilica数字信号处理器(DSP)内核,专为高性能音频、语音及神经网络处理而设计。
本文将重点介绍Cadence Xtensa HiFi4 DSP的应用,该DSP在恩智浦产品系列中应用最为广泛。但文中所述概念与方法同样适用于恩智浦精选的其他Cadence DSP,它们在能效与性能之间实现了最佳平衡。
HiFi4 DSP能够从主ARM内核中卸载计算密集型任务,从而提升整体系统性能与能效。借助Zephyr实时操作系统支持,HiFi4 DSP成为一个易于使用、开放且高度灵活的平台,可供嵌入式开发人员开发面向恩智浦异构应用的软件。
恩智浦i.MX 8M Plus就是一个典型的异构架构示例,它集成了:
同样,i.MX RT系列跨界微控制器(MCU)中的多款器件也搭载HiFi4 DSP内核,将微控制器的简洁性与DSP加速能力相结合,实现高级实时处理与音频处理。
这些异构设计可根据性能、延迟和功耗需求进行工作负载划分。Linux通常运行在Cortex-A核上,而Zephyr实时操作系统运行在Cortex-M核上。Zephyr也可部署在HiFi4 DSP上,执行信号或数据处理任务。
DSP针对以下方面进行了优化:
将这些功能卸载至DSP,系统可实现更高响应速度、更低CPU负载与更低的能耗。
Zephyr项目是一款开源、可扩展的实时操作系统,专为嵌入式与异构环境而优化。它支持多种硬件架构,同时为设备驱动程序、IPC与同步机制提供一致的模块化框架。
恩智浦向Zephyr实时操作系统的开源项目贡献代码扩展,使其全面支持i.MX和i.MX RT产品系列中的HiFi4 DSP。这些增强功能使开发人员及广大社区更轻松地在混合内核系统中充分发挥DSP加速潜力。
支持的平台包括:
| 器件系列 | Zephyr目标板 |
|---|---|
| i.MX 8M Plus | imx8mp_evk/mimx8ml8/adsp |
| i.MX 8QuadMax | imx8qm_mek/mimx8qm6/adsp |
| i.MX 8QuadXPlus | imx8qxp_mek/mimx8qx6/adsp |
| i.MX 8ULP | imx8ulp_evk/mimx8ud7/adsp |
| i.MX RT600 | mimxrt685_evk/mimxrt685s/hifi4 |
| i.MX RT700 | mimxrt700_evk/mimxrt798s/hifi4 |
此外,一些i.MX RT目标平台还搭载了HiFi1或Fusion F1等其他DSP内核。
| 器件系列 | Zephyr目标板 |
|---|---|
| i.MX RT500 | mimxrt595_evk/mimxrt595s/f1 |
| i.MX RT700 | mimxrt700_evk/mimxrt798s/hifi1 |
所有目标平台均可使用相同的Zephyr构建环境,实现ARM与DSP核间的统一开发工作流程。
固件加载与运行时管理由Linux remoteproc驱动程序(在i.MX平台)或多核管理框架(在i.MX RT平台)处理,而OpenAMP则提供稳健的跨核消息传递功能。
Zephyr项目提供多种示例展示其能力——从基础的系统启动到高级处理及跨核通信。以下将通过几个示例,带您了解如何在HiFi4 DSP上使用Zephyr。
Zephyr hello_world 经典示例展示了如何在HiFi4 DSP上成功启动并运行Zephyr。构建并加载固件后,DSP控制台输出将确认系统已成功启动:
此示例为后续涉及处理器间通信与工作负载卸载的高级应用奠定了基础。
number_crunching示例 突显了HiFi4 DSP的算力优势。该示例使用Cortex 微控制器软件接口标准数字信号处理(CMSIS-DSP)后端或高度优化的Cadence NatureDSP库,执行向量运算、快速傅里叶变换(FFT)与滤波操作。
执行周期计数表明NatureDSP后端显著提升了效率,尤其在FFT和无限脉冲响应(IIR)滤波例程中表现突出。这些性能优势使HiFi4 DSP非常适用于音频后处理、波束成形及实时数据滤波等场景。
许多应用都受益于ARM核和DSP核之间的协作。openamp_rsc_table示例 展示了HiFi4 DSP上运行的Zephyr如何通过OpenAMP与远程处理器消息传递(RPMsg),与ARM核上运行的Linux进行通信,实现可靠、低延迟的异构核间消息传递。
例如,在一个混合操作系统的多核系统中,Cortex-A核运行Linux,而HiFi4 DSP运行Zephyr RTOS。Linux可处理用户空间接口和高级控制,而DSP在Zephyr实时操作系统下执行计算任务,二者通过共享内存实时交换数据。
针对高级音频应用,SOF基于Zephyr实时操作系统构建,在HiFi4 DSP上提供完整的开源音频处理框架。
SOF支持专业级、低延迟音频管道,与Cortex-A平台上的高级Linux音频架构(ALSA)深度集成。 它支持:
该框架展示了Zephyr如何为i.MX产品线提供可扩展、可量产的DSP解决方案。
立即体验恩智浦设计中的无缝DSP加速!开启在HiFi4上使用Zephyr实时操作系统之旅,查看我们的示例项目 。
在HiFi4 DSP上运行Zephyr实时操作系统具有多种优势:
恩智浦i.MX与i.MX RT处理器内置的Cadence HiFi4 DSP,是一款高性能、低功耗的计算引擎,非常适用于信号处理、音频与AI加速场景。借助Zephyr RTOS的支持,该DSP成为统一异构处理环境中不可或缺的一部分。
从基础的hello_world示例,到面向性能的数值计算例程,再到基于OpenAMP的复杂跨核通信,在HiFi4 DSP上运行Zephyr为创新提供了可扩展的坚实基础。结合SOF,这一能力可延伸至量产级音频管道与高级嵌入式工作负载,为整个恩智浦生态体系带来灵活性与开放性。
Zephyr RTOS使HiFi4 DSP能够作为强大的协处理器运行,为新一代嵌入式设计开辟了全新的性能与效率机遇。
恩智浦半导体软件工程师
Iuliana是恩智浦的一名软件工程师,主要负责Zephyr、Sound Open Firmware及Linux音频子系统的开发。她热衷于探索新技术,在日常工作中推动创新与优化。Iuliana乐于交流、分享知识,并将创意转化为实际成果。