基础域控摄像头部分底软包括环视摄像头、前视摄像头控制,主要基于地平线sdk以及纵目软件进行二次开发

环视摄像头软件设计

需要实现上下电控制,内参获取、热插拔、25fps抽10fps获取温度等诊断信息以及关键的开关流和帧信息。

其中大部分功能在sdk中已经设计好了接口,直接调用并且稍加处理即可。mcu给摄像头上电后,对srdes初始化,并使使能mipi output。接下来便将IIC控制权交给soc。

环视的bypass快速出图就是serdes的映射,实现不经过soc的帧传输。

  1. 核心技术原理:SerDes 重定向
    传统的环视链路通常是:摄像头 -> Deserializer -> SoC (MIPI CSI) -> GPU/硬件合成 -> 显示输出。
    在冷启动过程中,SoC的 Linux/QNX 系统启动较慢(通常 10-20s),无法满足法规要求的 2s 内出图。
    SerDes 重定向方案利用解串器(Deserializer)芯片的硬件特性:
    物理链路分离:Deserializer 拥有多个输出端口或具备数据包复制功能。它将来自摄像头的视频流分为两路:
    • Main Path:送到 SoC 的 CSI 接口,供正常行车时的算法处理。
    • Bypass Path:通过另一组 MIPI 接口直接送到显示控制器(DI)或专用的显示芯片,绕过 SoC 的主 CPU 和系统内核。
  2. 软件层面的实现细节
    实现 Bypass 快速出图,底软通常需要完成以下二个层面的协同:
    A. 引导加载阶段(Bootloader/SPL)
  • 微秒级配置:在 SoC 的引导程序(如 U-Boot 或更早的 SPL)阶段,通过 I2C/I3C 快速初始化 Deserializer 和后端的串行器。
    寄存器预设:直接下发 Hard-coded 的配置参数,不等待 OS 驱动加载。此时只初始化倒车影像所需的单个摄像头(通常是后视)以节省时间。
    B. 安全处理器(MCU/Island)介入
    控制权接管:现代域控通常带有一个独立的 MCU(如 Infineon TC397 或 SoC 内部的 Safety Island)。
    由于主 SoC 未启动,MCU 通过 I2C Proxy 代理或直接总线控制,完成视频显示通道的切换(Mux Switch),将显示器的输入源强制切换到 SerDes 的 Bypass 输出端。

本站由 Edison.Chen 创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。