0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为汽车接口、安全和计算密集型负载选择和使用 FPGA

海阔天空的专栏 来源:Clive “Max” Maxfield 作者:Clive “Max” Maxfi 2023-10-03 14:37 次阅读

作者:Clive “Max” Maxfield

从传统上来讲,汽车中的计算任务是由微控制器单元 (MCU) 和应用处理器 (AP) 完成的。一辆普通的中档车可能包含 25 至 35 个MCU/AP,而豪华车则可能采用 70 个或更多。越来越多的汽车需要极其复杂的密集型计算能力,用于执行高级驾驶辅助系统(ADAS)、信息娱乐、控制、网络和安全等任务。其中许多应用涉及与人工智能AI) 相结合的图像和视频处理方面的机器视觉

独立的处理器架构难以处理传感器、照相机和显示器等外围设备所需的所有电气接口和各种协议。此外,在许多情况下,这类处理器根本无法满足机器视觉和人工智能等任务的极端计算需求。

为了解决这种复杂性,汽车系统设计人员正把目光投向现场可编程门阵列 (FPGA)。这样做不是为了取代现有的MCU/AP,而是作为它们和其他设备之间的桥梁,并通过卸载通信和其他计算密集型任务来增强 MCU/AP 的性能。

由于 FPGA 可进行编程以支持各种电气接口和协议,因此可作为 MCU/AP 和传感器、照相机、显示器之间的桥梁。此外,由于 FPGA能够以大规模并行方式进行计算和工作,因此可以用来执行计算密集型的视觉处理和人工智能任务,从而释放主机处理器性能,用于执行其他任务。

本文将讨论现代汽车的处理要求,介绍一些可由 FPGA 处理的汽车应用。然后,以 Lattice Semiconductor 提供的一些 FPGA为例进行介绍并展示如何用这种器件解决连接、处理和安全方面的问题。本文还将介绍相关的开发板,以帮助设计人员上手工作。

FPGA 的目标汽车应用

为了实现 ADAS 功能,今天的汽车在车身上采用了许多传感器,包括摄像头、雷达、LiDAR和超声波探测器。在许多情况下,必须从不同的传感器获取数据并对这些数据进行预处理(消除噪音并按要求格式化),然后通过传感器融合来组合这些数据,以使由此获得的信息比通过单独使用不同传感器的数据而获得的信息更具确定性。人工智能应用多用于数据分析,做出决策并采取适当的措施。

一种相对较新的趋势是部署电子(或称“数字”)后视镜。这种情况下,会在后车窗内安装一个高分辨率广角摄像头。来自该摄像头的视频流会发送至取代了传统后视镜的数字显示屏上,从而能够更清晰地观察车辆后方,不受后座乘客的阻挡。有些情况下,由安装在两个侧后视镜上的摄像头产生的视频流可与来自后窗摄像头的视频流合并。将这三个反馈信号“拼接”在一起,在超宽的电子后视镜上产生单一图像,让驾驶员能够更好地观察车辆周围的情况。

最近的另一个趋势是部署安装在仪表板上、转向柱上的或者集成在后视镜(普通或电子)中的车内摄像头。当结合人工智能时,这些车内后视镜可用于执行众多任务,如识别不同的驾驶员并相应地调整驾驶员座椅和后视镜。除了监视驾驶员以确保他们注意道路和不打瞌睡之外,这类系统还可以检测驾驶员有无瞌睡迹象以及健康问题或痛苦表情(如癫痫或心脏病发作),然后采取适当措施。这些措施可能包括启动危险警告灯,实施刹车并将车辆导引至路边。更多的应用还包括:通过防止汽车被锁和发出闪灯信号来确保不会误将幼儿和宠物遗留在后座上无人看管,以及在乘客将手机、包或包裹等物品遗落在后座上时提醒司机。

在基于视频的应用方面,有些情况下需要将一个视频输入分成多个视频流,有些情况下则可能是根据设计要求将多个视频流汇聚成一个。

随着电动汽车 (EV) 部署的增加,需要监视和控制电机,并监视和管理充电过程以使电池寿命达到最长。

最重要的是,今天的许多汽车开始启用 5G 或 V2X 功能,其中V2X(“车辆到任何东西”)是指车辆和任何可能影响车辆(或受车辆影响)的其他实体之间的通信,从路边基础设施到其他车辆。随之而来的就是需要安全保障,以防止黑客入侵车辆。

汽车级器件

不是所有的 FPGA 都适用于汽车应用,记住这点很重要。汽车电子委员会 (AEC) 是一个最初由克莱斯勒、福特和通用汽车在 20 世纪 90年代成立的组织,旨在建立共同的零件鉴定和质量体系标准。最常引用的 AEC 文献之一便是 AEC-Q100——“基于故障机制的集成电路应力测试鉴定。”

IATF 16949:2016 是一项技术规范,旨在制定质量管理体系,用于规定持续改进,强调预防缺陷并减少汽车行业供应链和装配流程中的变动和浪费。IATF 16949:2016 是由国际汽车工作组 (IATF) 和 ISO 技术委员会在 ISO 9001 标准基础上制定的。

汽车市场的电子系统供应商越来越要求半导体供应商提供符合 AEC-Q100 标准的产品,并能证明其质量体系获得了 ISO/TS-16949 认证

为工作选择正确的 FPGA

FPGA 非常灵活,但不同的器件系列会提供各种不同能力和功能组合,从而更加适合特定的任务。以嵌入式视觉应用为例,现代摄像头和显示器通常采用 MIPI接口。MIPI CSI-2(摄像头/传感器)和 DSI(显示器)协议都采用了被称为 D-PHY 的通信物理层 (PHY)。传统的 MCU/AP可能不支持这种接口,但一些 FPGA 会支持,如 Lattice Semiconductor 的 CrossLink-NX 嵌入式视觉和处理 FPGA。

除了每个 PHY 都支持 10 Gb/s 速率的两个加固型四通道 MIPI D-PHY 收发器外,CrossLink-NX 器件还支持 5 Gb/sPCIe、1.5 Gb/s 可编程输入/输出 (I/O) 以及1066 Mb/s 的 DDR3。这种器件还支持传统的电气接口和协议,如低压差分信号(LVDS)、Sub-LVDS(LVDS 的降低电压版本)、Open LVDS 显示接口 (OLDI) 和串行千兆位媒体独立接口(SGMII)。因此,这些器件可用于汇集视频流、分离视频流、运行人工智能应用,并且在执行这些任务的同时,还可以作为传统 MCU/AP
与现代传感器、显示器之间的桥梁。

希望评估 CrossLink-NX FPGA 的汽车系统开发商会发现,LIFCL-VIP-SI-EVN CrossLink-NX VIP 传感器输入板(图 1)和 LF-EVDK1-EVN 模块化嵌入式视觉套件的组合的意义重大(前者可以作为后者的输入板)。除了 CrossLink-NX FPGA之外,传感器输入板还具有四个 1300 万像素的 Sony IMX258 CMOS MIPI 图像传感器,可支持 4K2K @ 30 帧/秒 (fps) 或1080p @ 60 帧/秒。该板还支持通过三个独立的 PMOD 接口连接传感器。

1.png

对于还需要高 I/O 带宽的计算密集型应用——诸如像用于手势识别和控制、语音识别和控制、人类存在检测、乘员识别和驾驶员监控之类的 AI应用来说,Lattice 的 ECP5 FPGA 具有高达 3.2 Gb/s 的串行器/解串器(SERDES),为获得更高粒度而在双通道块中的每个器件都采用了多达有四个通道,具有多达 85K 的查找表 (LUT)、能为对称滤波器提供 2倍资源改进的增强型数字信号处理 (DSP) 块,并支持减缓单粒子翻转 (SEU)。这些 FPGA 还为 LVCMOS33/25/18/15/12、XGMII、LVTTL、LVDS、总线 LVDS、7:1 LVDS、LVPECL 和 MIPI D-PHY I/O 接口提供可编程I/O 支持。

例如,LFE5U-85F-6BG554C 就是一种 ECP5 器件,该器件有 84,000 个逻辑元件,3.75 Mb RAM 和 259 个I/O。同样值得关注的还有 LFE5UM-45F-VERSA-EVNG ECP5 Versa 开发套件(图 2)。该开发板采用半长 PCI Express(PCIe) 外形尺寸,设计人员可用其评估 ECP5 FPGA 的关键连接特性,包括 PCIe、千兆以太网 (GbE)、DDR3 和通用 SERDES性能。

2.png

用 FPGA 确保汽车安全

现在,黑客造成的安全威胁在不断增加,新的违规事件持续发生。就汽车而言,网络攻击可能造成失控,导致乘客和行人伤亡,造成受攻击汽车和其他车辆损坏以及财产损失。

汽车安全解决方案的很大一部分是建立一个信任根 (RoT);也就是说,可以始终信任系统中的某个硬件资源。一种解决方案是基于 FPGA 的硬件 RoT(HRoT),如 Lattice 的MachXO3D 系列器件提供的解决方案。除了大量的 LUT 资源和 I/O外,这些基于闪存的器件还实现了瞬时启动和热插拔功能。通用应用包括胶合逻辑、总线桥接、总线接口、电机控制、上电控制和其他控制逻辑应用。

特别值得注意的是,MachXO3D 是唯一同时具有双启动能力和少于 10K LUT 的 FPGA,该器件配备了美国国家标准和技术研究所 (NIST)认证的不可变安全引擎。这使得 MachXO3D 可以作为汽车的 HRoT,以“系统的先开后关器件”的形式发挥作用。当系统上电时,MachXO3D首先检查以确保其正在运行经过验证的固件。然后,该器件检查系统中其他器件的固件。如果系统中的任何组件受到攻击或损害,包括其本身,MachXO3D都会拒绝可疑固件并使用已知的、良好的、经过认证的固件图像重新加载该组件。

对于那些有兴趣评估基于 MachXO3D 的设计的开发人员,LCMXO3D-9400HC-D-EVN MachXO3D
开发板提供了一个可扩展的原型开发平台(图 3)。该板具有一个 L-ASC10(模拟检测和控制)硬件管理器件、一个与 Arduino 和 Raspberry Pi板搭配使用的通用 I/O 接口、两个 Hirose FX12-40 针座位置 (DNI),一个 Aardvark 针座 (DNI) 以及具有四重读取功能的128 Mbit 串行外围接口 (SPI) 闪存。

3.png

该开发板的尺寸为 4 x 6 英寸,配备供电和编程用 USB mini-B 接口,以及支持 Arduino、Aardvark、FX12、Hirose 和Raspberry Pi 的多个针座位置。该开发板包括一根 USB 线和一本快速入门指南。

结论

现代汽车电子需要越来越多的传感器、电气接口和协议,并对处理能力和带宽提出了相应的要求。由于增加了人工智能、机器视觉处理以及安全要求,使得在实施采用传统MCU 或 AP 方法的解决方案时变得复杂。

如图所示,通过适当地使用 FPGA,设计人员可以增加一定的灵活性和处理能力。也就是说,可以连接完全不同的处理环境,执行传感器汇集和融合功能,解决 I/O带宽要求,并以大规模并行的方式完成计算和运行,同时释放主处理器功能来执行其他任务。

在安全方面,具有双启动能力和 NIST 认证的不可变安全引擎的、基于闪存的 FPGA 可以作为汽车的
HRoT,并确保自身和其他器件只运行经过认证的固件,从而防止黑客通过加密技术破坏汽车系统。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2550

    文章

    51047

    浏览量

    753168
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    603059
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17135

    浏览量

    351033
  • 汽车
    +关注

    关注

    13

    文章

    3499

    浏览量

    37273
收藏 人收藏

    评论

    相关推荐

    HarmonyOS CPU与I/O密集型任务开发指导

    一、CPU密集型任务开发指导 CPU密集型任务是指需要占用系统资源处理大量计算能力的任务,需要长时间运行,这段时间会阻塞线程其它事件的处理,不适宜放在主线程进行。例如图像处理、视频编码、数据分析等
    的头像 发表于 02-18 10:17 974次阅读
    HarmonyOS CPU与I/O<b class='flag-5'>密集型</b>任务开发指导

    用于汽车接口安全计算密集型负载FPGA选择和使用

    极其复杂的计算密集型功能来完成高级驾驶辅助系统 (ADAS)、信息娱乐、控制、网络和安全等任务。其中许多应用涉及图像和视频处理形式的机器视觉以及人工智能 (AI)。 单独的处理器架构很难处理传感器、相机和显示器等外围设备所需的所
    的头像 发表于 01-13 14:02 8329次阅读

    鸿蒙原生应用开发-ArkTS语言基础类库多线程I/O密集型任务开发

    使用异步并发可以解决单次I/O任务阻塞的问题,但是如果遇到I/O密集型任务,同样会阻塞线程中其它任务的执行,这时需要使用多线程并发能力来进行解决。 I/O密集型任务的性能重点通常不在于CPU的处理
    发表于 03-21 14:57

    计算密集型的程序简析

    人工智能学习1. 人工智能应用场景网络安全、电子商务、计算模拟、社交网络 … …2. 人工智能必备三要素数据,算法,计算计算力之CPU、GPU对比:CPU主要适合I\O
    发表于 09-07 06:14

    HarmonyOS CPU与I/O密集型任务开发指导

    一、CPU密集型任务开发指导 CPU密集型任务是指需要占用系统资源处理大量计算能力的任务,需要长时间运行,这段时间会阻塞线程其它事件的处理,不适宜放在主线程进行。例如图像处理、视频编码、数据分析等
    发表于 09-26 16:29

    软件密集型装备故障的静态检测

    软件密集型装备故障的静态检测:软件密集型装备是指软件和硬件紧密结合的装备,软件密集型装备中的故障多由软件与硬件相互作用引发。本文对程序流程违反硬件工作时序引起
    发表于 06-21 22:35 16次下载

    计算高度密集型应用在异构多核DSP上的运行方法研究

    计算高度密集型应用在异构多核DSP上的运行方法研究
    发表于 10-19 11:00 5次下载
    <b class='flag-5'>计算</b>高度<b class='flag-5'>密集型</b>应用在异构多核DSP上的运行方法研究

    新型处理器的数据密集型计算

    针对急剧上升的大规模数据,传统的数据密集型计算已经无法再在此种场景下适用.对此,大量的学者们对算法进行不断的改进,并提出利用新型的处理器来进行复杂的数据密集型计算.在众多的新型处理器中
    发表于 01-10 14:08 0次下载

    数据中心依靠服务器计算密集型架构提供支持

    支持AI和ML部署的数据中心依靠基于图形处理单元(GPU)的服务器计算密集型架构提供支持。
    的头像 发表于 04-28 17:04 2676次阅读

    借助多功能Xilinx Zynq Ultrascale+ MPSoC加速计算密集型应用开发

    计算密集型应用是指需要大量复杂计算的任何计算机应用。像 AI 推理、大数据分析、网络和科学研究建模之类就是如今的一些比较流行的计算
    的头像 发表于 08-02 08:03 1800次阅读
    借助多功能Xilinx Zynq Ultrascale+ MPSoC加速<b class='flag-5'>计算</b><b class='flag-5'>密集型</b>应用开发

    FPGA执行计算密集型任务性能表现及优势有哪些

    FPGA可用于处理多元计算密集型任务,依托流水线并行结构体系,FPGA相对GPU、CPU在计算结果返回时延方面具备技术优势。
    的头像 发表于 11-10 09:49 975次阅读

    用于汽车接口安全计算密集型负载FPGA选择和使用

    发表于 11-24 19:25 0次下载
    用于<b class='flag-5'>汽车</b><b class='flag-5'>接口</b>、<b class='flag-5'>安全</b>和<b class='flag-5'>计算</b><b class='flag-5'>密集型</b><b class='flag-5'>负载</b>的 <b class='flag-5'>FPGA</b> 的<b class='flag-5'>选择</b>和使用

    虹科│还在为数据密集型计算环境下的存储连接而烦恼吗?

    虹科●存储连接引言相信“大数据”这三个字对于我们来说已经成为像柴米油盐一样熟悉的存在,每个人都清楚自己处在大数据的时代,那大家知道吗?我们今天提到的数据密集型计算
    的头像 发表于 10-29 18:08 741次阅读
    虹科│还在为数据<b class='flag-5'>密集型</b><b class='flag-5'>计算</b>环境下的存储连接而烦恼吗?

    虹科新品│还在为数据密集型计算环境下的存储连接而烦恼吗?

    虹科●存储连接引言相信“大数据”这三个字对于我们来说已经成为像柴米油盐一样熟悉的存在,每个人都清楚自己处在大数据的时代,那大家知道吗?我们今天提到的数据密集型计算
    的头像 发表于 11-01 15:49 662次阅读
    虹科新品│还在为数据<b class='flag-5'>密集型</b><b class='flag-5'>计算</b>环境下的存储连接而烦恼吗?

    云优化性能:使用基于闪存的存储的I/O密集型工作负载

    电子发烧友网站提供《云优化性能:使用基于闪存的存储的I/O密集型工作负载.pdf》资料免费下载
    发表于 08-28 10:04 0次下载
    云优化性能:使用基于闪存的存储的I/O<b class='flag-5'>密集型</b>工作<b class='flag-5'>负载</b>