FPGA在汽车电子中应用-ADAS

之前某鱼上出现大量汽车控制板,如下图所示:

核心主控是ZYNQ UltraScale+系列FPGA。虽然目前新能源汽车主控已经转投英伟达+ARM了,但是FPGA还是有一定应用场景的。
小米su7上主要芯片

今天我们介绍一下FPGA在汽车上ADAS系统中的应用。

ADAS(Advanced Driving Assistance System,高级驾驶辅助系统)在汽车上非常重要。该系统的主要功能是协助驾驶员避免事故,并确保驾驶员、车辆和道路安全。ADAS 系统现在是部分/有条件自动驾驶和完全自动驾驶的重要组成部分。

本方案基于 Xilinx Zynq UltraScale+ MPSoC-EV FPGA,将在其上使用 Vitis/Petalinux 方法运行机器学习模型(Vitis AI 模型和自定义模型)。使用 4 GMSL 摄像头系统作为视频源并执行预处理、机器学习部署以进行人员/行人检测、后视车牌检测和侧视车辆或物体检测,以确保车辆安全。

上图描绘了 ADAS FPGA 硬件设计的框图。FMC 模块具有 4 个摄像头 GMSL 链路解码 IC(https://www.avnet.com/shop/us/products/avnet-engineering-services/aes-fmc-mc4-ar0231at-g-3074457345635644762/)。四个摄像头数据均通过 MIPI CSI-2 接口到 FPGA。

PL 端将有三条管道设计。

  • 捕获管道:

该管道负责接收摄像头数据、预处理数据并将数据写入内存。管道由一系列模块组成,即 MIPI CSI-2 RX、Subset Converter, Stream Switch, and 预处理模块等。

摄像机数据以 MIPI CSI-2 数据格式进入 FPGA。然后生成 AXI-Stream数据。Stream Switch用于将单个流解复用为四个单独的流。这是因为四摄像头解串器将四摄像头数据复用到单个 MIPI CSI-2 接口。这就是为什么需要在 FPGA 中进行解复用,以便进一步访问和处理单个摄像头数据。接下来,每个数据流分别进入四个预处理模块。

该管道由 Bayer2RGB IP、色彩空间转换器 (CSC)、缩放和缓冲区写入模块组成。Bayer2RGB 转换器将传感器数据的 RAW 格式转换为 RGB 格式。CSC 模块可以将 RGB 格式转换为其他格式,例如 YUV。缩放模块可以将传入的视频分辨率缩放为不同的输出分辨率。缩放后的分辨率将用于 ML 管道和显示管道。

缓冲区写入块用于将数据写入 DDR 内存的四个独立位置,具有特定的颜色格式和分辨率值。ML 管道将访问这些内存位置以检索相机数据并执行 ML 任务。

  • ML管道

该设计使用 DPU IP。

在此管道中使用 1xB4096 DPU IP 配置来运行机器学习模型。

ML管道运行以下 ML 模型:

  • 车牌识别模型

  • 人脸识别

  • 行人检测

  • VIVADO硬件设计

  • 显示管道

该管道有助于在车辆仪表板的平板显示屏上显示处理后的摄像头数据。视频叠加是该管道的主要模块,它将从内存中读取 ML 处理的数据并将其显示为覆盖层。模块中的 Axis2Video 将生成的视频数据转换为并行视频数据。该模块将流数据和视频时序作为输入并生成并行视频数据。这些数据将被馈送到实时显示端口 (DP) 接口。

  • HMI和GUI

基于 QT 框架开发的轻量级 GUI 将显示在 FPD 中,其中所有四个摄像头数据以及检测信息将使用 GST 管道显示在显示单元中。FPD 创建人机界面 (HMI),用户可以从中获取信息以及输入信息。另一方面,检测信息也可以通过视觉颜色标志和文本信号传递给用户。如果检测到,则可以显示红色警告和文本等等。

参考链接

https://logictronix.com/wp-content/uploads/2022/04/Logictronix_ADAS-Reference-Manual_v1_0_LRFD031.pdf

总结

上面就是一个使用FPGA进行ADAS系统设计的简单流程,FPGA的并行、实时处理特性及PS端ARM端运行嵌入式系统等特性,是该系统最大的特点。虽然目前新能源汽车上FPGA的使用率越来越低,但是在一些特殊场景中还是有一定应用价值,比如摄像头数据实时处理等低延时要求场景中。

相关推荐
ZPC82107 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC82107 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
安当加密7 天前
智能网联汽车如何守住“信任根”? CAS 构建汽车行业专用密钥管理体系
汽车
LVXIANGAN7 天前
汽车智能座舱中LVDS、CAN、以太网、RTP的区别
自动驾驶·汽车
tiantianuser8 天前
RDMA设计53:构建RoCE v2 高速数据传输系统板级测试平台2
fpga开发·rdma·高速传输·cmac·roce v2
博览鸿蒙8 天前
FPGA 和 IC,哪个前景更好?怎么选?
fpga开发
FPGA_小田老师8 天前
xilinx原语:ISERDESE2原语详解(串并转换器)
fpga开发·iserdese2·原语·串并转换
LONGZETECH8 天前
技术解析|比亚迪秦 PLUS EV 故障诊断仿真软件,院校实训落地最优解
汽车·汽车仿真教学软件·汽车教学软件
雨大王5128 天前
整车制造计划排程排产系统的创新与实践
人工智能·汽车·制造
tiantianuser8 天前
RDMA设计50: 如何验证网络嗅探功能?
网络·fpga开发·rdma·高速传输·cmac·roce v2