3. Jacinto雷达子系统硬件架构

Jacinto 系列 SoC(如 TDA4VM、TDA4VH)在毫米波雷达应用中承担的角色,是把 MMIC 输出的原始中频/基带数据接收进来,经过一系列预处理、FFT、CFAR、角度估计等运算,最终输出点云或目标列表。理解这套硬件架构,核心是搞清楚三件事:数据从哪里进来、由谁处理、在哪些存储层级之间搬运。本节围绕毫米波前端接口、CSI-2/LVDS 输入通道、DSP 与硬件加速器分工、以及内存层次与数据搬运机制展开。

一、毫米波前端接口与数据输入通道

典型雷达前端(如 AWR2243、AWR1843 等 MMIC)与 Jacinto SoC 之间的数据接口主要有两类:一类是控制接口,用于配置 chirp 参数、触发帧、读取状态,通常走 SPI 或 I2C;另一类是高速数据接口,用于把 ADC 采样后的原始数据送到 SoC,常见形式是 LVDS 或 CSI-2。在 Jacinto 平台上,雷达子系统通过专用的 CSI-2 RX 控制器接收 MMIC 输出的数据流,部分方案也支持 LVDS 差分对直接接入。

以 AWR2243 级联方案为例,单颗 MMIC 可提供 4 路 RX,级联 4 颗可得到 16 路虚拟通道。每路 ADC 采样率可达 12.5 Msps 甚至更高,采样位宽通常为 12~16 bit。若按 4 通道、12 bit、12.5 Msps 估算,单颗 MMIC 的原始数据率约为 4×12×12.5 M = 600 Mbps;级联 4 颗后总数据率可达 2.4 Gbps 量级。这个量级决定了数据不可能全部由 CPU 逐点搬运,必须依赖 DMA 和硬件加速器。

CSI-2 接收端通常包含解包、通道对齐、CRC 校验等逻辑,把串行数据还原为按 chirp、按 RX 通道排列的采样块。LVDS 路径则更接近原始差分采样流,需要外部或片上的 LVDS 接收器完成串并转换。无论哪种路径,数据最终都会以“帧—chirp—采样点”的层次结构落入内存,供后续处理使用。

Jacinto 雷达子系统数据通路与内存层次 毫米波 MMIC AWR2243 ×4 4RX / 12bit ADC CSI-2 RX / LVDS 解包 · 通道对齐 CRC 校验 UDMA / BCDMA 乒乓缓冲搬运 无 CPU 干预 L2 / MSMC SRAM 低延迟共享缓存 雷达数据暂存 DDR4 / LPDDR4 大容量帧缓存 带宽受限 HWA 硬件加速器 FFT · 复数乘 · 对数 CFAR 预统计 参数表驱动 C66x / C7x DSP CFAR 判决 角度估计 · 聚类 点云输出 溢出/回写 DMA 取数 结果传递 关键参数与分工要点 • 数据率估算:4RX × 12bit × 12.5Msps ≈ 600Mbps/MMIC,级联 4 颗约 2.4Gbps • HWA 适合规则、可参数化的 FFT/复数运算;DSP 适合分支多、判决逻辑复杂的 CFAR 与角度估计 • 乒乓缓冲:一块被 HWA 处理时,DMA 向另一块写入下一 chirp 数据,避免等待 • 内存层次:L2/MSMC 低延迟 → DDR 大容量但带宽有限,热数据尽量留在片上

二、DSP 与硬件加速器的分工

Jacinto 雷达子系统的算力由两类单元共同提供:可编程 DSP(C66x 或 C7x)和专用硬件加速器 HWA(Hardware Accelerator)。HWA 内部包含 FFT 引擎、复数乘法器、对数/绝对值单元以及用于 CFAR 的预统计模块,它由参数表(descriptor)驱动,适合处理规则、重复、数据量大的运算。DSP 则擅长分支判断、复杂控制流和灵活的数据组织。

以距离维处理为例,一个典型的 chirp 数据块先由 HWA 完成加窗和 1D FFT,输出距离谱;随后 DSP 读取距离谱,执行 CFAR 检测,判断哪些距离单元超过门限。CFAR 的门限计算涉及参考窗、保护窗、虚警率等参数,逻辑分支较多,放在 DSP 上更合适。多普勒维 FFT 同样可以交给 HWA,因为它是规则的一维变换;而角度估计中的 MUSIC 或波束形成,若涉及矩阵运算和迭代,则更适合 DSP 或专用矩阵加速器。

这种分工的核心原则是:把“规整、可参数化、吞吐优先”的任务交给 HWA,把“灵活、判决密集、控制复杂”的任务留给 DSP。实际工程中,HWA 的 descriptor 配置需要仔细设计,包括输入输出地址、FFT 点数、窗函数系数、缩放因子等。若 descriptor 配置错误,常见现象是输出频谱幅度异常或全为零,此时应优先检查输入地址对齐、FFT 点数与数据长度是否匹配。

三、内存层次与数据搬运机制

Jacinto 的内存层次大致分为三级:DSP 内部的 L1/L2 SRAM、片上共享的 MSMC SRAM、以及外部 DDR。L1/L2 延迟最低但容量小,适合存放当前处理的 chirp 数据块和系数表;MSMC 容量较大,可作为多核共享的中间缓冲;DDR 容量最大,但访问延迟和带宽是瓶颈,适合存放整帧原始数据和最终结果。

数据搬运主要依赖 UDMA 或 BCDMA 控制器。典型做法是乒乓缓冲:DMA 把 CSI-2 接收到的 chirp 数据写入缓冲区 A,HWA 同时处理缓冲区 B;当 A 写满、B 处理完后交换角色。这样接收与处理并行,避免 CPU 轮询等待。搬运时要注意地址对齐,HWA 和 DMA 通常要求 16 字节或 32 字节对齐,否则会触发总线错误或性能下降。

下面给出一个简化的 HWA descriptor 配置示例,用于说明关键字段。示例参数为教学假设,实际值需根据具体数据格式和 FFT 点数调整。

/* HWA 1D FFT descriptor 关键字段(示例) */
inputAddr   = 0x90000000;   // 输入 chirp 数据基地址
outputAddr  = 0x90010000;   // 输出距离谱基地址
fftSize     = 256;          // 距离维 FFT 点数
numChirps   = 128;          // 每帧 chirp 数
windowCoeff = 0x90020000;   // 窗函数系数表地址
scaleFactor = 1.0 / 256;    // 缩放因子,防止溢出
dataFormat  = COMPLEX_16BIT;// 输入为 16bit 复数

配置完成后,DMA 把数据从 DDR 搬到 MSMC,HWA 从 MSMC 读取并执行 FFT,结果写回 MSMC,再由 DSP 读取做 CFAR。整个链路中,DDR 只承担原始帧和最终点云的存储,热数据尽量留在片上,这是保证实时性的关键。

判断数据搬运是否成为瓶颈,可以观察 DSP 的 stall 周期和 DMA 的吞吐计数。若 DSP 频繁等待数据,说明搬运带宽不足或乒乓缓冲深度不够,可考虑增加缓冲块数或把中间结果留在 MSMC 而非 DDR。

四、架构层面的工程判断

在实际项目中,硬件架构的选择直接影响算法部署方式。若雷达数据率较高、帧率要求严格,应优先使用 HWA 承担 FFT 和预统计,DSP 只做判决和输出;若算法包含大量非线性迭代,则需评估 DSP 的算力余量。内存方面,建议把每帧的原始数据放在 DDR,把当前处理的 chirp 块和系数表放在 L2/MSMC,通过 DMA 乒乓实现流水线。这样既利用了 DDR 的容量,又避开了它的带宽瓶颈。

此外,CSI-2 接收端的中断和 DMA 完成中断需要合理配置优先级,避免数据溢出。若发现帧数据丢失,应检查 CSI-2 的 FIFO 深度、DMA 触发阈值以及中断响应延迟。这些检查点与前面的数据通路一一对应,理解架构之后,排障就有了明确的切入点。