前言
本篇图文跟大家分享一下汽车以太网如何影响车辆 ECU 和传感器硬件设计。
全系内容可在《搞一下汽车电子》后台回复 “系列”,或进入菜单栏 “分享平台” --> “系列分享”
本系列请点击:《搞一下闲谈》
所有系列请点击:《汽车电子系列分享》
传感器
概述
汽车以太网不是一项新技术。但在几年前,它却很新,以至于没有人知道它是否可以集成到汽车中。
虽然,搭载车载以太网技术的汽车已经量产,但是,关于车辆 ECU 和传感器如何受该技术影响的问题仍然存在。本篇文章,笔者分享一下汽车以太网如何影响 ECU 和传感器的硬件部分。
在硬件方面,我主要讨论 PCB、 PCB 上的芯片、连接器、电缆以及不同的芯片、微控制器、DSP等。接下来我们对不同的硬件组件进行一个概述。
为了更好地理解不同组件的硬件架构( ECU 和传感器)如何受到汽车以太网的影响。笔者这里定义了一个具体的应用程序示例,使我们能够更好地了解整个故事的开始以及该应用程序如何影响车辆 ECU 和传感器的硬件架构。
笔者将基于带有汽车以太网的高级驾驶辅助系统,对整个车载网络进行了概述。
一般在ADAS系统中,主要有三种类型的传感器——用于视觉的摄像头传感器、用于距离检测的雷达传感器和用于道路上不同物体大小的激光雷达传感器。我们可以使用不同的以太网技术,用于将这些传感器集成到 ADAS ECU。
ADAS实际上是负责处理来自不同传感器的所有数据的感知过程,并决定由哪个 ECU做出关于车辆运动控制的决定。因为这是将要做出的决定,例如,如何控制车辆的制动系统、车辆的动力系统以及车辆的转向系统,所以ADAS ECU实际上是高级辅助驾驶系统的大脑。
这意味着如果司机在开车,当司机犯错时,ADAS ECU 将负责纠正这些错误。例如,如果司机忘记刹车,如果前方有障碍物,ADAS ECU 将检测该障碍物,然后执行车辆运动控制,使车辆能够及时刹车,以避免与位于车辆前方的障碍物发生碰撞。
ADAS ECU 上的传感器
接下来我们来看看传感器。正如笔者已经说过的,我们拥有三种不同类型的传感器。对于视觉,我们有摄像头传感器。摄像头传感器是为了检测物体,将图片发送到 ADAS ECU,后者将执行图片识别和处理算法,以便准确检测环境中的物体,道路上的物体,车辆路径上的物体。
其实最重要的是摄像头传感器会检测到对ADAS ECU有用的物体。所以我们在前部有一个摄像头,在右侧和左侧也有一个摄像头,在后侧还有一个摄像头,用于提供车辆的全景视图,这是一个关于 ADAS ECU 的过程。
我们在车辆顶部还有一个摄像头传感器,以便检测道路上很远距离的物体。这可能是距离很远的小物体,可以通过摄像机传感器的视频检测到。我们也可以有宽视野传感器,以检测交通标志等,或道路上的一些行人。
这里笔者只解释了一个传感器,但实际上,车辆上的这个位置可能有多个摄像头传感器。
除了视觉、检测模式之外,我们还有负责距离检测的雷达传感器。通过天线发射毫米波等,在障碍物上反射后,反射波会被雷达预处理,并检测不同的位置并将其放入传输到 ADAS ECU 的以太网帧中。从而可以访问、评估和分析该车辆与其他车辆或其他道路参与者之间的距离,从而帮助 ADAS ECU 做出有关车辆运动控制的正确决策。
这就是为什么大多数时候我们在同一辆车上安装不同类型的雷达传感器。为了在车辆上具有不同的感应能力,我们有远程雷达传感器、中程雷达传感器以及短程雷达传感器,具体使用哪种传感器,取决于将要检测到的内容。
所以,在图1中,我们在前面有两个雷达传感器,一个在右侧,另一个在左侧。并且在后部也有相同的配置,而且在中部,我们也有相同的配置。当然这只是一个例子,实际设计时,取决于要在车辆中实现的功能和功能要求来配置雷达传感器的数量及位置。
当我们谈论自动驾驶,那么我们需要更多的传感器,甚至可能是两个 ADAS ECU。在这里,我们仅谈论驾驶员辅助系统,以便对网络的外观进行概述。
我们还有基于点云的激光雷达传感器。激光雷达传感器可以评估或测量道路上不同物体的体积大小。ADAS ECU 也需要这些信息,以便能够了解道路上正在发生的事情、当前情况、驾驶情况道路等,从而相应地控制车辆。
因此,激光雷达传感器可以位于角落,例如在图1中,在两个角落,在右侧和左侧。右左两个角的后部也是相同的配置。
我们在需要在车辆中安装不同的传感器集群,并向 ADAS ECU 发送不同的数据类型。接下来我们谈一下传感器和ECU之间的连接以及这样的星形拓扑,有些人称之为树拓扑。
汽车以太网的优势之一是使用不同的数据传输速率。这就是为什么这里使用不同颜色来区分数据速率的原因。不同的传输速率使汽车以太网技术的扩展性非常强,以满足处理网络内部数据的需要。
图1中以棕色表示1000 BASE-T1 技术,以太网数据以每秒 1 Gb 的速率传输。蓝色表示 100 BASE-T1,表示以太网数据以每秒 100 Mb的速率传输。所以我们这里有不同的数据速率。
这种不同的数据速率也会对 ADAS ECU 的硬件架构产生影响,这也是为什么我们需要了解网络架构的原因。ADAS ECU 如何设计,取决于该 ADAS ECU 如何连接到集群中的其他组件。
而且,网络也会对摄像头/雷达/激光雷达传感器的硬件架构产生影响。接下来我们谈谈所使用的以太网技术如何影响硬件架构。
传感器 & Eth
概述
我们将直接进入 ECU 和传感器的硬件架构,我们从雷达传感器开始。如图2所所示,这里的雷达传感器由两个主要芯片组成。
上图是雷达传感器硬件架构的一个整体视图,包含雷达ASIC以及微控制器。当然,微控制器可以是 DSP,也可以是FPGA 之类的东西。但在这里我们仅展示这种组件硬件架构之外的逻辑。
图2中的雷达ASIC是专用集成电路,该电路肯定连接到天线,天线负责发射雷达无线电波,也负责接收反射无线电波,这里的波都是电磁波。
当电磁波到达雷达 ASIC 时,会被转换为电信号。这些电信号被转换为数字信号,并且在传感器检测到的位置之前,有一个预处理机制在雷达 ASIC 中运行,然后将数字信号通过 SPI 接口传输到微控制器。
检测和测距
接下面我们看一下检测和测距和过程,结果数据会发送到目标控制器。微控制器通过SPI接收的数据可以使用 DMA 来存,以节省CPU资源的消耗,SPI 控制器可以直接将数据存储在 DMA 中。
当无法将数据存储到存储器中时,CPU 应该参与启动过程。这意味着这里应该使用中断控制器来阻止 CPU 执行当前正在执行的操作。以便 CPU 将到达的数据存储到运行内存中,这取决于应用程序、CPU的速度以及CPU 的负载情况。这里笔者想说明的是,可以使用不同的方式( DMA 或 RAM 存储器)来存储来自雷达 ASIC 的数据。
需要说明的是,当使用存储数据的运行内存时,SPI 控制器将向中断控制器发送中断请求,然后中断控制器会发送一个电信号来停止 CPU,这样CPU就会运行相应的中断服务程序,它实际上是存放在闪存中的。
当准备好位置数据时,它会发送到 MAC,这就是跟以太网相关的地方,MAC 是主要的访问控制器。我们有很多关于 MAC 地址等的信息。MAC 地址实际上是物理地址,以便为以太网控制器寻址。所以我们这里的 MAC用于负责构建以太网帧。
MAC 控制器将向 PHY 发送以太网帧,PHY 实际上是收发器。和CAN做比较的话,那么MAC就是控制器,PHY就是收发器,类似于CAN通信的控制器和收发器。
我们这里将以太网具体分离为 MAC 和 PHY 以及 MII 接口。MII接口是一个独立接口,不依赖于所使用的具体以太网技术。如果在这里使用光纤,那么从一个连接器(图2左侧)到另一个连接器的话,这个接口将不依赖于另一个接口,它将始终是相同的接口(MII 接口)。
这意味着 MAC 上发生的一切并不取决于 LAN 的外观,例如,电缆的外观、连接器的外观等等。它并不真正依赖于所使用的真正技术。MII接口取决于Bit的速度,数据传输速度,该速度取决于数据在 LAN 上传输的速度。
这里笔者将以每秒百兆位的范围传输,这里使用的 MII 接口应该能够以每秒百兆位的速度传输数据。
PHY
我们有一个物理层PHY,PHY 用于保留永恒帧,然后 PHY 会放置一些装备,例如前导码等,以便与接收器同步。然后这个 PHY 也将负责Bit的物理编码,这些Bit将被转换成模拟电信号,然后向下传输到 LAN。
这里我们有一个主要的依赖接口,即依赖于以太网技术的电路,用于传输数据。这个主要的依赖接口实际上是一个普通的接口。比如共模扼流圈等。
共模扼流圈用于简单地抑制电磁干扰或噪声,最重要的是,还可以使用一些过滤器来积极过滤信号。这可能会在 MDI 中实现,具体取决于信号传输的频率。
连接器
图2中有连接器。连接器在此处显示两个引脚。表示一个带有两个针脚的连接器,以太网正负号,以及每根双绞线的信号。这里可以使用多种类型的连接器,例如用于处理数据传输到双绞线的磁性连接器。
如图2所示,我们使用全双工通信,这意味着发送器(即与 ADAS ECU 相连的雷达传感器)可以传输电信号,而其他 ECU 也可以将其信号传回。
因此,我们可以在同一条线路上进行反向定向通信。需要注意的是,这里没有电缆屏蔽,每根单绞线用于每秒 100 MB 的数据传输,这是以太网上 100 BASE-T1 技术的典型示例。
除了我们在这里看到的 MAC、 MII 接口、 PHY以及MDI 接口连接连接器和电缆外,剩下的基本都取决于与以太网无关的传感器技术。
ECU & ETH
ADAS ECU 概述
如图3所示为ADAS ECU,图中有摄像头传感器,所以可以传输图片或视频数据。图3中还有一个接口,笔者这里放的是PCIe控制器接口,因为PCIe接口可以更快地传输大数据。与雷达传感器相比,摄像头的数据量大很多。
成像仪实际上是将光转换为电信号,而这种电信号也转换为数字信号,这样信号就可以被微控制器处理了,此处存储数据的情况也与雷达传感器解释的情况相同。在这里,我们也看到了到 ADAS ECU 的传输和 LAN,我们也有与雷达传感器相同的组件。
但在需要注意的是,我们以每秒 1 Gb 的速度传输数据红色全双工。实际上,这意味着 MII 在 MAC 和 PHY 之间的干扰具有每秒1 Gb的数据速率。我们已经看到,对于雷达传感器,此处的 MII 接口应具有每秒 100 Mb的数据速率。还应该在 MII 接口上将 MAC 和 PHY 之间的数据速率缩短一半。
上图中,我们看到它比传感器架构复杂得多。在 ADAS ECU 上会有不同的芯片,有一个以太网交换机、一块PCB以及微控制器。它可能是一个 DSP,也可能是一个 FPGA。
连接器与交换机
我们有第一部分,包括连接到我们拥有的传感器的连接器。我们还有另一部分负责通过微控制器进行数据处理,它是位于微控制器芯片中的 CPU。该 CPU 将运行传感器数据融合过程,该过程将运行 AI 算法等,所以这是所有 ADAS ECU 的大脑。
当然,许多进程都运行在软件中,这些软件会中断控制器以处理 CPU 运行的不同任务。如果我们想优化一切,可以使用 DMA 来执行存储,而无需 CPU 参与。
这基本上就是在微控制器中发生的事情,用于处理一切。但是在传感器和处理实体的接口之间,我们有很长的路要走。此路径由不同的以太网交换机构成。交换机实际上是在 PCB 上构建的芯片,用于转发来自传感器的数据。
一个交换机可以有多个端口,我以具有六个端口的交换机为例。我们总共有 15 个传感器向 ADAS ECU 发送数据,所以我们最后需要 15 个连接器。
为了有连接这15 个连接器,我们有三个交换机来连接这些传感器。我们将5个摄像头传感器、5个激光雷达、5个毫米波雷达连接到 ADAS ECU。
交换机包含一个 PHY,负责将数据转发到处理实体的方向。因此,来自 5 个雷达传感器的数据将保留在交换机上。这里会有一个MAC实体转发到下一个交换机,这将被转发到 PCIe 接口到处理实体(微控制器)。这对于其他交换机也是相同的。
还有一个重要的事情是在 PCB 上,对于两个芯片之间的通信,PCB 上需要两个以太网交换机,并且需要类似 MII 的接口。在 PCB 上需要有接口将这两个交换机连接到 MAC。在这里,我们使用类似 MII 的接口,这对于另外两个交换机和本交换机之间的链路也是相同的,但是,重要的是要了解实际使用的 MII 接口类型。
图3中,我们有五个雷达传感器传输数据,数据速率为每秒 100 Mb,所以我们每秒有500 Mb数据进入交换机。如果MAC我们使用每秒100 Mb 的普通 MII 接口,就会遇到交通堵塞。因为每秒有 500 Mb进入,而每秒只有 100Mb输出。这意味着输入比输出快,所以我们将在交换机内部遇到越来越多的交通拥堵。
因此,交换机内部存在日益拥堵的风险,来自雷达传感器的重要数据会丢失,这是不可接受的。交换机出现拥塞丢失是完全不能接受的。这就是为什么这里使用 GMII 接口,数据速率为每秒 1 Gb,这比每秒 500 Mb 快两倍。在这种情况下,我们非常确定我们将避免或至少减少这里的交通拥堵。这样我们就不需要那么大的buff内存来阻止流量。
以摄像头传感器为例,如果使用千兆以太网,就意味着我们会以每秒 5 Gb的总体速度输入到下一个交换机,这是可能的五个传感器同时发送数据。
如果我们这里有 5 Gb/s,我们就不能再使用 GMII 接口,因为输出只有 1 Gb/s。如果我们使用它,我们将获得每秒 5 Gb的总输入,但总输出为每秒 1 Gb,肯定会造成堵塞。所以我们需要使用 XFI 供应接口来实现每秒 10 Gb的数据速率。
为什么是 XFI?为什么这里每秒 10 Gb?因为当前我们没有任何基于以太网的技术可以实现10Gb每秒的传输,这就是为什么我们必须在这里使用 XFI 接口以每秒 10 Gb的速度传输数据。
微控制器与交换机
如图3 含有PCIE接口的交换机所示,这里我们有1个每秒 1 Gb 的输入数据作为输入,2个每秒 10 Gb作为输入,也就是我们每秒总共有 21 Gb的整体数据速率作为输入。所以这个时候,我们不能在交换机和微控制器之间的使用XFI 接口。
因为我们每秒有 10 Gb的输出,但是有每秒 21 Gb的输入,这也会造成堵塞问题,有堵塞风险和缓冲区溢出风险。所以这就是这里使用 PCIe 5.0 ,数据速率大于 22 Gb/s。
这也是笔者之前所说的,ADAS ECU的硬件架构依赖于网络架构。因此,在设计之前,了解您将与多少个传感器通信的 ADAS ECU 非常重要。
实际上,笔者这里是在不知道不同接口上的带宽占用情况时做出这样的决定。这基本上是大部分时间发生的事情。但是,如果我们考虑每个雷达传感器以每秒 5 Mb的带宽利用率发送数据的情况。这意味着数据速率是每秒百兆位。但是您使用的可用带宽仅为每秒 5 兆位。
因此,雷达传感器仅使用该带宽的 5%。那么接下来会发生什么呢?我们在交换机上的总体带宽利用率为每秒 25 Mb。因此,在这种带宽利用率为每秒 25 Mb的特定情况下,使用每秒 100 兆比特的普通 MII 接口就可以了。因为整体带宽利用率仅为线路的25%。所以它也会很好。
这里有一个例子,我们考虑一下。我们到处都有千兆以太网。所以我们在这里使用 GMII 而不是 XFI 有 500 兆比特每秒。如果我们知道带宽利用率,这将是任何问题。而这里也一样。如果我们有,我们也可以在这里使用 GMII。
总的来说,我们在进行车辆硬件架构进行设计时,应避免在网络内使用非常大的 buff 内存等情况的发生。在此之前,需要首先对汽车网络进行了解,因为汽车网络技术将会影响到汽车ECU和传感器的硬件部分。
联系我们
微信:shactiontech
邮箱:support@shactiontech.com