在自动驾驶的发展过程中,安全和可靠度扮演着关键角色。为确定安全关键电子系统即使在故障情况下亦可用,某些备援及安全功能必须保证可用,另外,电子控制单元(ECU)内其中一项主要元件微控制器也必须具备此能力。
依照目前趋势,对先进驾驶辅助系统(ADAS)的需求不断提升,加上自动驾驶技术持续成长,为相关汽车系统在耐用度、可用性和功能安全性等方面带来了新的需求。目前的汽车系统设计,能在发生故障时进入失效安全或故障沉默模式。要实现高级自动驾驶或全自动驾驶,汽车需要高可靠度和高可用性,也就是电子系统需要在故障时继续维持运作(亦即容错操作)。这需要一定程度的备援能力,此外也会对所用的微控制器产生新的需求。新世代AURIX微控制器的架构经过强化,让备援系统拥有更高效能与更独立的CPU核心与记忆体,通讯介面速度更快,外壳也更为轻巧。
目前汽车内的电子系统一般都为故障沉默模式,也就是驾驶必须在故障时接手汽车的控制权。根据第3级和第4级的自动化阶段(按SAE/VDI定义),等到未来高级自动驾驶车推出,驾驶就不再需要于故障时介入,也无法介入,这样一来,驾驶就能在行驶过程中从事其他活动。第5级定义则指完全无驾驶的自动车,这需要完整的备援控制架构,并支援适当的安全标准。
ISO26262护自驾车安全
ISO26262是目前公认的汽车电子系统安全标准,半导体公司都透过此标准来设计安全元件,包括AURIX微控制器、安全感测器、安全电源供应器和变频器驱动器等。ISO26262于2011年推出时,也将重点放在高可用性和故障沉默系统上。未来几年内推出的新版标准(ISO26262第2版)将明确定义容错操作系统的特性,以满足汽车业不断产生的新要求。
系统为执行容错操作功能所需要的系统数量,将视自动化等级及相关错误处理方式而有所不同。目前据报最常出现的错误反应为「10秒内紧急停止,最长不超过30秒」。这些要求层级与下列致动器有关:刹车、转向,甚至是将汽车与驱动引擎或马达解耦。另外,照明和HMI等其他支援致动器也在考量之中,但并非不可或缺。
三重模组备援是一种广为人知的容错操作系统,又名「三选二」(2-out-of-3, 2oo3),系统包含三个对等的执行个体,都执行相同的演算法。
二重备援为主要参考标准
三个系统的输出会相互比对,并用多数票的方式加以评估(图1)。这种方法可同时套用到软体与硬体,为航空业目前所采用的标准。但此方法也存在着难题,也就是票选系统的复杂度和安全性。对ECU等即时系统来说,这会大幅提高相关硬体的复杂度,进而影响整体成本,因此,目前汽车业都以「二重备援」为参考标准。
图1 容错操作系统的三重模组备援。
二重备援架构由两个独立的处理通道组成,每个通道皆为故障沉默通道。(图2)。故障沉默通道通常采用1oo1D架构(单一通道具诊断功能)。二重架构(亦称为「2oo2DFS」)可用对称或非对称备援的方式实作,这类的2oo2DFS架构适用于电子控制单元,尤其是发生故障时,因为只需要考虑两端中的任一端即可进行错误分析。
图2 二重备援能提升容错操作功能实作的成本效益。
刹车系统和转向等应用提供了两种类型的功能:安全关键功能和舒适功能。
由于容错操作系统着重于安全关键功能,而2oo2DFS具备弹性,因此系统能使用非对称的架构,进而将必要元件最佳化。其作法是将较复杂且高效能的通道用在第一通道,然后将较小、符合成本效益的MCU用于第二通道。第一个通道拥有效能较高的MCU,因此可结合舒适功能和安全关键功能。而第二个通道使用较小的MCU,只能涵盖安全关键功能的容错操作要求。
MCU结合安全装置提升系统可用性
高可用性在容错操作系统中扮演重要角色,尤其是同时具备安全关键功能与舒适性相关功能的混合型系统。二重架构的设计用意,就是在发生故障时尽可能维持舒适功能。为此,有厂商开发了一项晶片组架构,将微控制器与支援的安全装置(亦即安全电源供应器)结合在一起,借此提供高系统可用性。
在目前的故障沉默系统中,当安全微控制器侦测到严重错误时,会将错误状况回报至错误脚位,外部支援的安全模组便会检查错误脚位,并在确认错误状况后关闭系统。图3说明系统如何安全地回应错误情况。整个流程是安全的,因为错误情况是回报至外部监控模组,如此可提高系统可用性,此外,微控制器的错误回应也能另外设定。
图3 结合安全供应模组与AURIX微控制器,使容错操作系统拥有高可用性。
此方法由英飞凌提出,能善用AURIX安全管理单元(SMU)的优点,SMU可分别设定各错误来源的回应(中断、NMI、CPU核心重置、CPU核心闲置或SOC重置)。图4说明故障沉默的EPS设计,结合了AURIX微控制器与TLF35584安全供应模组,得以确保高可用性。
图4 含AURIX微控制器和安全供应模组的故障沉默EPS设计。
容错操作耗电/成本挑战高
实作容错操作系统需要一定程度的备援,也会面临空间需求、耗电量和成本等方面的挑战。
新一代的AURIX TC3xx目前提供12 mm×12mm(BGA-196)和14mm×14 mm两种封装(TQFP-100),换句话说,两个BGA-196封装比两个TQFP-100版本更不占空间,体积小了3.6倍,所需要的电路板空间比两个TQFP-100版本少了27%。此外,AURIX的整合式电压稳压器支援切换式CAP DC/DC拓扑,最多可省下两个外接MOSFET和电感器的空间及成本。在此拓扑下,运作耗电量足足减少一半。
如先前所述,采用一大一小的非对称架构,便能使用较符合成本效益的微控制器,进而降低容错转移实作的成本。AURIX系列具备较佳的扩充能力和相容性,因此能同时将高阶和低阶版本运用在同一个设计之中(图5)。安全概念、延迟和其他设计参数均获得保留,更有助于简化设计。此外,选择制造商也能简化供应链,并降低开发与认证成本以及软体开发工具的成本。
图5 含两个AURIX微控制器的容错操作EPS设计,可基于成本考量采用非对称式(一大一小CPU)。
使用AURIX微控制器,可提高容错转移系统的可用性。所有的AURIX微控制器均采用相同的安全概念,并使用进阶的保护机制,像是Lockstep、ECC(错误校正码)受到保护的记忆体,以及前面提到的安全管理单元(SMU)。
新一代AURIX的架构经过最佳化,进一步改善了可用性,核心之间的独立性也获得提升。现在,核心不论在重置、传送或闲置模式下均可个别运作,也就是说,故障的核心可自行重置,其他核心则能继续照常运作。各核心皆能直接存取其专属资源,这样一来,除了容错操作系统(L3/L4),连系统仅需部分备援的L2等级也能一并提升可用性。
最佳化以达到最高安全性
AURIX系列拥有高效能架构和最多六个核心,还有介面、安全性与安全功能,适合汽车业与工业电子市场的多种应用。新架构特别适用于混合式驱动器和变频器、电池管理或电压稳压器。此外,AURIX TC3xx微处理器适用于安全关键应用,适用范围从安全气囊、刹车、动力方向盘应用,到运用雷达或摄影技术的感测器型系统,也能用于高自动等级自动驾驶的网域控制与资料融合应用。
TC3xx系列具备可扩充功能(图6),快闪记忆体容量从1MB到最高16MB,整合式RAM记忆体则从150KB到超过6MB都有。相较于目前最多拥有三个核心的AURIX TC2xx微处理器,TC3xx多核心架构最多可提供六个TriCore CPUS,每个核心皆具备完整的300MHz时脉。
图6 AURIX TC3xx系列可针对不同应用来扩充快闪记忆体、RAM和封装。
自动驾驶需要更快且更安全地连接关键控制单元,包括了中央驱动电脑以及转向或刹车系统。为了满足这项需求,新一代AURIX进一步提升了通讯及安全功能,微控制器提供CAN FD、Flexray和可选购的Gigabit乙太网路介面。Evita硬体安全模组(HSM)可执行符合ECC256及SHA256的非对称加密、不同ECU之间的讯息验证,还有可抵抗恶意软体的安全开机。
TC3xx微控制器支援自动化/自动驾驶和电动车的实作,提供运算速度、安全性及安全功能的理想组合。拥有最多四个Lockstep核心及最多六个核心,可提供符合ISO 26262安全实作要求的极致运算效能:依照ASIL D要求,最多2400 DMIPS可用于应用,前一代装置仅能提供740 DMIPS。AURIX TC3xx世代装置向下相容于TC2xx世代。前导装置TC39x的初代开发模式,具备300MHz时脉、16MB快闪记忆体和6.9MB SRAM,将提供BGA-516和BGA-292两种封装。
(本文作者皆任职于英飞凌)