1. 课程导入与Jacinto雷达感知全景

在车载毫米波雷达系统中,从天线接收回波到最终输出目标航迹,中间要经过采样、距离/多普勒处理、恒虚警检测、聚类、角度估计、数据关联、滤波跟踪等一系列环节。TI Jacinto 系列 SoC(TDA4x/AM6xA)的定位,正是把这条链路中原本分散在 FPGA、DSP、MCU 上的处理任务,收敛到一颗芯片内完成,并通过硬件加速器与异构核分工,满足车载雷达对实时性、功耗和功能安全的要求。

理解 Jacinto 在雷达中的角色,可以先看它在整车电子电气架构中的位置。传统方案里,雷达前端 MMIC 负责发射波形与接收中频信号,后端由外部处理器完成点云生成与跟踪。Jacinto 的典型用法是:MMIC 通过 LVDS 或 CSI-2 把 ADC 原始数据送入 SoC,SoC 内部由雷达硬件加速器(如 HWA,Hardware Accelerator)完成距离维 FFT、多普勒维 FFT 与 CFAR 检测,再由 DSP(C66x/C7x)或 ARM 核完成聚类、角度估计与跟踪,最后通过 CAN-FD 或以太网把目标列表输出给 ADAS 域控制器。这样,Jacinto 同时承担了“雷达信号处理”和“目标跟踪”两个层次的职责。

从感知链路看,Jacinto 雷达处理可以拆成四个阶段:ADC 数据输入、检测(Detection)、跟踪(Tracking)、输出(Output)。ADC 阶段关注的是原始数据如何从 MMIC 搬进 SoC 的 DDR 或片上缓存,涉及数据格式、通道数、采样率与帧结构;检测阶段关注的是如何从时域采样得到距离-多普勒-角度三维点云,核心是 FFT、CFAR 与角度 FFT;跟踪阶段关注的是如何把点云关联成航迹,涉及卡尔曼滤波、数据关联与航迹管理;输出阶段关注的是目标列表的字段、坐标系、时间戳与接口协议。这四个阶段在 Jacinto 上并不是串行跑在同一个核上,而是由 HWA、DSP、ARM 和 DMA 协同完成,因此理解“谁在什么时候处理哪一段数据”比记住某个 API 更重要。

学习路径上,建议按“先链路、后模块、再调优”的顺序推进。第一步建立整体数据流概念,知道一帧雷达数据从 MMIC 到目标列表经过哪些硬件单元;第二步深入检测链,理解 HWA 的 FFT 与 CFAR 配置参数如何影响点云质量;第三步进入跟踪链,掌握点云到航迹的关联与滤波逻辑;第四步回到工程实践,学习如何用 TI 的雷达 SDK、可视化工具和日志手段定位问题。工具链方面,TI 提供了 Radar SDK、Processor SDK、Code Composer Studio、SysConfig 以及雷达可视化工具,它们分别覆盖算法库、驱动与核间通信、代码编译调试和结果观察。初学者最容易忽略的是核间通信与内存布局,因为 Jacinto 的雷达处理大量依赖 DMA 和共享内存,配置不当会直接表现为数据错位或帧丢失。

下面这张图把 Jacinto 雷达感知链路的核心对象、处理单元与数据流向放在同一张拓扑中,便于在后续章节中反复对照。

Jacinto TDA4x/AM6xA 雷达感知链路拓扑 雷达前端 MMIC 发射波形 / 接收中频 ADC 原始数据 ADC 数据输入 LVDS / CSI-2 DMA → DDR / L2 HWA 硬件加速器 距离 FFT / 多普勒 FFT CFAR 检测 输出点云候选 DSP C66x / C7x 聚类 / 角度估计 点云生成 坐标转换 ARM 核 数据关联 卡尔曼滤波 航迹管理 目标输出 目标列表 / 航迹 ID 距离 / 速度 / 角度 CAN-FD / 以太网 ADAS 域控制器 融合 / 决策 执行器接口 原始数据 DMA搬运 点云候选 点云 航迹 目标列表 关键分工与观察点 HWA 负责计算密集的 FFT 与 CFAR,配置参数直接影响点云数量与虚警率 DSP 负责聚类与角度估计,输出带距离、速度、角度的点云 ARM 负责跟踪与航迹管理,输出稳定目标列表;DMA 与共享内存是链路通畅的前提

这张图里需要特别留意三个“接口”:MMIC 到 SoC 的 ADC 数据接口、HWA 到 DSP 的点云接口、ARM 到外部总线的目标列表接口。后续章节中,检测链的调优大多围绕 HWA 配置展开,跟踪链的调优大多围绕 ARM 侧参数展开,而排障时则要同时检查 DMA 搬运是否完整、共享内存是否冲突、时间戳是否对齐。把这张拓扑记在脑中,再进入具体模块,就不会在寄存器与 API 之间迷失方向。

学习建议:每学完一个模块,回到这张拓扑图,标出该模块对应的硬件单元、输入数据形态和输出数据形态。例如学完 CFAR 后,应能说出它运行在 HWA 上,输入是距离-多普勒复数矩阵,输出是过门限的点云候选。这种“回到链路”的习惯,比单独记忆 API 更能形成工程直觉。

工具链方面,Radar SDK 提供雷达信号处理与跟踪的参考实现,Processor SDK 提供核间通信、DMA 与驱动支持,Code Composer Studio 用于 DSP 与 ARM 代码的编译调试,SysConfig 用于外设与引脚配置,雷达可视化工具则用于观察点云与航迹输出。实际项目中,建议先用 SDK 自带例程跑通一帧数据,确认 ADC 输入、点云输出和目标列表都能在可视化工具中看到,再逐步替换参数与算法模块。这样做的原因是,Jacinto 雷达链路的耦合度较高,如果一开始就修改多处配置,出现异常时很难判断是数据搬运、加速器配置还是跟踪逻辑的问题。