新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于FPGA的汽车ECU设计

基于FPGA的汽车ECU设计

作者: 时间:2013-05-31 来源:网络 收藏
另外,在这个高度关注成本和功耗的市场上,赛灵思Zynq-7000 EPP等一些可编程逻辑器件能够支持多项降低系统总体功耗的功能,其中的部分功能是从MCU继承而米。像处理系统的仅加电模式、休眠模式和外设独立时钟域这样的功能能够大幅降低器件待机期间的动态功耗。

某些可编程逻辑器件在结构中配备有硬核处理器,便于设计人员第一步先用软件开发整个系统功能,就像他们寻常在MCU平台上所做的一样,随后逐步地在设计中增加硬件,将部分设计移植到可编程逻辑资源。这种方法能够让设计人员为解决方案开发出不同的版本,而且与纯软件方法相比,能够实现在定制硬件中综合部分功能的优势。

在运行时可重配置硬件上进行ECU设计

在探讨完毕借助可编程逻辑在静态硬件和软件上实现ECU的优势后,我们接下来探讨采用基于SRAM并具备运行时部分可重配置功能的FPGA设计ECU。部分可重配置技术能够为汽车设计人员提供更多优势。

事实上,其中的一大优势是如果FPGA包含有不必在启动时(如在ECU唤醒或加电)配置的部分可重配置区域,可以缩短系统启动时间。不支持动态部分可重配置的FPGA在加电时需要配置所有的FPGA资源,但运行时可重配置FPGA只需下载部分位流进行部分重配置。

由于当今先进的FPGA器件具有巨大的容量,故在加电时下载完整的位流会引起可观的配置时间开销。运行时部分可重配置技术能够显著地缩短这种配置时延。在那种情况下,有可能在加电时只配置一个最起码的子系统(即引导载入程序和立即需要的部分系统应用),让系统其余部分保持待机状态,直到有必要初始化为止。如果系统在加电或唤醒时需要快速响应,可将这种启动工作划分为两个阶段,以加快初始化过程。为此,可将系统架构分解为一个静态域和一个或者多个部分可重配置域(PRR)。静态域涵盖负责执行启动过程的系统(一般来说是主机CPU),以及可重配置引擎和通往位流库的数据链路。由特定部分位流描述的其他域可按应用需求,随后下载。

另外,如果禁用PRR域,则可以让器件的功耗与禁用区域部分成比例降低。在使用汽车电池供电的ECU中,节能模式尤为重要。为此,在车辆未使用时(即处于休眠模式时),车载ECU可使用低功耗模式,以让ECU功耗保持最低。同样,可以在不需要的时候使用空白位流禁用FPGA的部分区域,减少逻辑活动,从而降低动态功耗。

在采用运行时可重配置逻辑的系统中,汽车设计人员还可使用一种从航空航天应用中借鉴来的重配置技术。重配置(configuration scrubbing)可以将系统从因单粒子翻转(SEU)和电磁干扰造成的SRAM故障中恢复过来。定期重新配置硬件外设可保证系统在出现故障时自我修复。另外,这样也可以将故障的最大时长限制在重配置时间间隔内。这种技术也通常运用在软件中,作为一种常见的抗干扰保护措施,例如MCU外设的定期重配置。

另一项运行时部分重配置技术的灵活性带来的有前景的功能是在FPGA资源的某个特定二维位置出现永久性或不可修复的电路故障,比如影响到特定逻辑单元或RAM模块时,可通过功能重定位实现故障修复。一旦发现有硬件或软件故障出现,可以在运行中将所需的功能自动重定位到同一ECU中的可编程逻辑器件的其他部分。虽然这个构思是可行的,但这项功能还没有得到当今的自动化工具的完全支持。

适用于汽车产业的运行时可重配置计算技术最强大的特性无疑是共享的硬件资源上功能的实时时分复用。可以对由ECU中的相同计算资源处理的功能性应用进行时间共享,如果应用间相互独立(例如,当车辆向前直行驶时使用行车道偏离预警功能,倒车时,则切换到后视摄像头视图或停车辅助应用)。这种设计思路可以帮助降低此类嵌入式系统的成本和复杂性,释放空间,减轻车身重量。

这种设计思路还可用于实现特定算法在不断变化的环境条件或者外部条件中的自适应性。例如,给定的引擎控制算法可通过部分可重配置自主调整部分硬件模块,以在任何运行温度下或电池电压下实现理想的运行。同样的理念对通信系统也适用,比如可以设计某种加密控制器,能够在运行中运用特定的参数函数制定专门的安全等级。另如,可以设计某种ECC加密器/解密器IP,用于在高噪声通信信道中检测和修改数据传输错误,能够根据感应到的信噪比动态适应其硬件架构。

图5显示了一个采用赛灵思Virtex-4 FPGA部署的ECU系统的示例,由一个静态域和一个部分可重配置域构成。静态域集成了一个MicroBlaze软核处理器和一个基于ICAP的重配置控制器,部分可重配置域(PRR)则发挥着共享资源的作用,负责在不同时间换入和换出不同的功能任务或应用。


图5 在由部分可重配置域和静态域构成的运行时可重配置FPGA中实现的汽车ECU应用的空间分区和临时分区

最后,如果将前述的构想发挥到极致,可以设计出一种通用汽车ECU平台。这种平台可以在生产线上进行配置并针对汽车中特定的ECU功能进行定制。这种构想在技术上借助可重配置硬件具有可行性,能够简化制造厂的物流要求,将存货压低到最低水平。这是因为从硬件的角度来看,在生产线上组装的模块对所有车辆都是一样的,都采用单一平台设计或产品架构(基于灵活的硬件)。只有可下载的位流会让ECU的功能具有差异。

高集成度ECU

在当今的汽车产业中,有约90%的创新来自汽车电子设备,而且这个势头方兴未艾。未来汽车将采用非常先进的软硬件技术,实现大量的新功能,比如自动驾驶、车辆间通信、娱乐以及和更高安全性。但是,对在这个以大批量制胜的产业而言,控制车载嵌入式系统的成本对汽车制造商极其重要。因此,当前的趋势是在减少车辆中的ECU数量的同时让每个ECU发挥强劲的功能。要实现这个目标需要功能更加强大的计算平台。

许多行业参与方共同采用的方法是开发用作域控制器的高集成度ECU。就是将多个单核处理器或微控制器布置在同一开发板上,共享总线连接和其他资源,旨在从整车的角度降低系统复杂性。这种趋势让我们联想到可以将可重配置硬件用于ECU的设计,从而在有效提高计算并行性,降低PCB的复杂性的同时,实现最高性价比解决方案。

这种设计方法虽然在我们的工作中尚处于萌芽阶段,却为将AUTOSAR和ISO 26262标准与运行时可重配置硬件融合用于软/硬件联合设计,实现完整的车载嵌入式ECU系统奠定了基础。实际上,虽然目前AUTOSAR还没有覆盖到可重配置硬件,但我们不排除将来有这种可能。基于SRAM的运行时可重配置FPGA已用于航空航天应用,能够满足容易导致SEU的更为恶劣的环境条件的要求,况且汽车行业从历史上看有借鉴航空航天行业率先开创的风气的习惯。另外,在市场上已经存在某些合格的用于实现基于FPGA的安全相关系统的设计方法和工具,而且行业中涉及FPGA器件的标准也已经存在有相当长时间,比如用于规范航空电子业组件和系统设计的DO-254标准。

联合设计带来模式变革

因此,我们的工作将掀起汽车产业计算模式的变革。在特定的ECU应用场景中,纯软件的解决方案将被软/硬件联合设计和可重配置计算技术所取代。这是因为采用冯诺依曼型MCU的纯软件方法由于性能、复杂性和安全性方面的局限,已不敷使用。可编程逻辑技术的价格的不断降低,加上汽车电子控制单元性能需求的不断走高,将在不久的将来把这场变革变为现实。

两大关键标准

汽车产业在设计车载电子设备时已将两项关键标准奉为圭皋。其中一项标准是AUTOSAR,它通过适当的软硬件架构解决嵌入式系统复杂性问题。另一项标准是即将推出的ISO 26262,用于管理功能安全性。AUTOSAR提出的以及ISO 26262采用的相关技术课题主要为安全问题的检测和处理,比如运行时发生的硬件故障、时序失常和应用执行的逻辑顺序打乱、数据损坏等。

AUTOSAR详解

近年来,电子组件已经取代了车辆中的机械系统和液压系统。随着设计人员开始用软件实现更多的控制、监控和诊断功能,这种趋势正在持续。实际上,用电子技术能够实现仅用机械和液压解决方案无法开发者开发成本高的新功能。但这些部件必须满足严格的安全要求,以避免出错和故障。

虽然软件相关的故障目前来看比较罕见,但随着软件在汽车这种工业制品中用量的不断增加,系统变得日趋复杂,加上产品开发周期的缩短,最终可能导致产品故障。为解决这个问题,汽车产业通过结盟和实施标准,确保使用和开发安全可靠的软件。



评论


技术专区

关闭