AURIXTM 作为英飞凌 32位 汽车级 MCU 家族的产品之一,其第二代产品 AURIXTM TC3x 已经是汽车界公认的功能安全设计优秀的产品,获得了良好的业内口碑。这也是源于英飞凌从 AURIXTM 第一代产品 TC2x 开始,就秉持功能安全的理念按照 ISO 26262 : 2011 设计出第一款支持 ASIL-D 最高安全等级的 MCU 产品。 AURIXTM 功能安全概念经历了 TC2x 到 TC3x 的优化升级,到 AURIXTM 第三代产品 TC4x,芯片的功能安全特性在 TC3x 产品之上又做了进一步的提升,而且完全符合 ISO 26262 : 2018 功能安全标准,增强的功能安全特性可以让用户的系统功能安全设计更加易于实现。同时,英飞凌的电源管理芯片 OPTIREGTM PMIC 从设计之初一直是 AURIXTM 的最佳搭档,从搭配 TC2x/TC3x 的 TLF35584/5,到搭配 TC4x 的TLF4x,二者的配合让汽车安全系统设计更加合理。
1 AURIXTM TC4x 产品的顶层安全需求 TLSR MCU 产品,ISO26262 规定了它可以先于相关项而按照 SEooC (Safety Element out of Context) 来设计,也就意味着它不是为了某一个相关项设计的,并且先于其存在。它是否满足汽车里的各种应用场景,(找元器件现货上唯样商城)能否更好地助力汽车系统安全设计,首先就要看该 MCU 的顶层安全需求 TLSR 的定义是否合理。有了这些顶层安全需求 TLSR,MCU 产品的硬件软件设计都将围绕其展开。 AURIXTM TC4x 产品的顶层安全需求 TLSR(Top Level Safety Requirement)可以分成三大类来表征: - MCU 安全相关功能的 TLSRs,包含安全运行代码、安全启动、安全输入、安全输出、安全通讯、安全传感器接口,等等。
- 支持安全状态的 TLSRs,包含故障报警后的响应以对芯片内部或外部电路报告。
- 免于共因失效的 TLSRs,包含避免电源、时钟、过温等引起的共因失效,监控不同安全等级的软件影响,等等。
2 AURIXTM TC4x 产品的顶层安全需求 TLSR 是如何得出的? 简单来说,从汽车中的各种应用需求中抽取而来。 下图中是一个典型的管柱 EPS 电子助力系统,系统中包含了 EPS ECU 控制器、方向盘转向角传感器、方向盘转矩传感器、转向柱助力电机、电机位置传感器等。经过 HARA 分析后,EPS系统具有最高安全完整性等级要求的整车层面危害和安全目标是:
假设 EPS ECU 控制器中分解到 MCU 的目标 FIT 值为 3~4FIT,量化指标要求 ASILD 99% SPFM 和 90% LPFM,安全时间要求 FTTI 50~150ms。按照应用假设,EPS ECU 控制器中需要 MCU 具备的安全功能有: - MCU 可以安全运行软件,不同安全等级的软件可以互不影响
- MCU 需要在运行用户代码之前安全的启动
- 启动时间要在 200ms 之内
- MCU 可以冗余的读取电机位置传感器信号如数字信号 SENT 或者模拟信号
- MCU 可以输出安全的 PWM 控制信号
- MCU 通讯接口可以同其他 ECU 安全的传输信号
- 当 MCU 故障发生时,可以输出故障指示信号,通知外围电路,让系统进入安全状态
- …...
以此方法分析汽车中常见的不同应用的控制系统,如发动机控制系统(EMS)、新能源车电池管理系统(BMS)、电源转换系统(OBC/DCDC)、动力牵引系统(Traction Inverter)、电子刹车助动系统、ADAS 辅助自动驾驶系统、雷达处理系统、网关、车身控制系统等等,从各种不同的应用场景中抽取出了对 AURIXTM TC4x 产品的顶层安全需求,后续的产品设计活动将围绕着这些顶层安全需求展开等。 3 AURIXTM TC4x 产品的顶层安全需求 TLSR 是如何落实到实际的应用设计中的? 简单来说,通过把 TC4x TLSR 的各个应用案例 Use Case 跟实际应用场景结合后运用到实际应用的设计中。 AURIXTM TC4 的每一个 TLSR 都可以列举出一个以上的应用案例 Use Case,通过这些应用案例 Use Case 就可以把 AURIXTM TC4x 这些顶层安全需求具体化和场景化。用户在设计实际系统时根据需要选择出其中适合的应用案例。 比如,TC4x ASIL-D 安全软件执行 TLSR,在应用中不同的场景可能有: - CPU 访问各自的 NVM 和 RAM 空间
- SOTA SWAP 后 CPU 运行代码的访问区间是 PFLASH Bank A 或者 Bank B
- CPU 访问其他 CPU 的 NVM 和共享 RAM 空间
- CPU 访问DFLASH 中数据或者存储数据至 DFLASH 中
- 代码存储在片外 FLASH 中
- ……
比如,TC4x ASIL-D 安全模拟输入TLSR,在应用中可以实现的场景有: - 冗余 ADC 通道输入到两个 TC4x ADC 模块中,两个 ADC 模块可以是同一种类型的,比如都是 TMADC 模块,或者都是 DSADC 模块。
比如,TC4x ASIL-B 安全模拟输入TLSR ,在应用中可以实现的场景有: - 一个 ADC 通道输入到 TC4x 内部后进入两个 ADC 模块后分别处理。
- 一个 ADC 通道输入到 TC4x 内部的一个 ADC 模块进行处理。
4 AURIXTM TC4x 产品中设计了怎样的安全机制以助力应用案例达到目标 ASIL? AURIXTM TC4x 每个顶层安全需求的应用案例中,都有其目标 ASIL 等级,这就意味着有量化指标(SPFM, LFM & PMHF)的要求。每个应用案例中包含了 TC4x 的不同的内部功能模块,这些功能模块都可能会发生故障引发失效从而引入失效率 FIT 值,因此必须对每个模块的各种失效模式加以一定的诊断机制,以降低该模块的失效率,从而使整个应用案例的失效率降低到可以接受的水平,达到目标 ASIL 等级的量化指标要求。 对于芯片内部故障的诊断来自于不同的安全机制: - 内部硬件安全机制 SM[HW]
- 内部软件安全机制 SM[SW]
- 外部硬件安全机制 ESM[HW]
- 外部软件安全机制 ESM[SW]
AURIXTM TC4x 跟 TC3x 一样,设计了非常多的内部硬件安全机制,比如 CPU Lockstep、NVM ECC、RAM ECC、Power Voltage Monitor、Clock Monitor 等等,但是相比 TC3x,TC4x 中又增加和增强了许多片内硬件安全机制的设计。接下来从几个方面说明一下这些增强点和变化点。 1. TC4x Systematic Fault Avoidance 避免系统失效 在 TC4x 产品硬件设计中增加了 Systematic Fault Avoidance ASIL-D 的顶层安全需求。除 SCR、CSRM 等少数几个模块是 QM 或 ASIL-B 等级,其他模块硬件电路都可以达到 ASIL-D 等级。 2. TC4x Safe Boot 安全启动 固化在 TC4x 内部 ROM 的启动代码 SSW 是按照 ASIL-D 安全等级开发的,其功能是完成 TC4x 芯片的基本功能初始化或者配合上电启动检测,目的是让 TC4x 在开始运行用户代码时有一个安全完整的初始环境。固件启动代码 SSW 中集成的安全机制可以识别启动代码运行过程中硬件模块的故障导致的非预期行为,从而让 TC4x 启动停止。如果 TC4x 没有安全完整的启动过程,用户代码就不会被运行,因而系统也不会存在潜在失效的风险。
3. TC4x SMU 升级为 Safety and Security Alarm Management Unit AURIXTM TC3x 的 SMU 模块包含了 SMU_core 和 SMU_stdby 两个冗余模块,而 TC4x 中 SMU 模块则升级为 SMU_CS、SMU_SAFE0、SMU_SAFE1、SMU_STDBY 四个子模块。 SMU_CS 位于 Core Domain,它负责收集处理跟 Security 相关的片内 Alarm 报警,如密钥使用错误、认证失败、调试口误使能监控等报警,或者如电源监控、总线时钟监控、总线错误等报警,都由 SMU_CS 来处理和响应。 SMU_SAFE0、SMU_SAFE1 位于 Core Domain,它们负责收集处理跟 Safety 相关的片内 Alarm 报警。SMU_SAFE0 和 SMU_SAFE1 设计一样,TC4x 片内所有安全机制的 Alarm 都可以接入两个 SMU_SAFEx 模块中,由用户来决定哪些 Alarm 由哪个 SMU_SAFEx 来处理,SMU_SAFEx 会根据 Alarm 配置来进行相应的响应动作。两个 SMU_SAFEx 模块可以独立使用,分开处理片内不同的 Alarm,分别有各自独立的错误状态输出脚连接至片外其他芯片(如英飞凌 PMIC TLF4x),该双 SMU_SAFEx 模块设计的目的是面向多应用集成于一个 TC4x 的场景下,各个应用有其独立的故障响应路径,进而使系统进入安全状态。 SMU_STDBY 位于 Standby Domain,独立于 Core Domain 中的 SMU_SAFEx 和 SMU_CS 模块,它负责收集片内引起 CCF 共因失效的电压、温度、时钟的安全机制报警,还通过 SMU Alive 信号监控 SMU_SAFEx 和 SMU_CS 的故障。此外,SMU_SAFEx 和 SMU_CS 中处理的片内安全机制 Alarm 信号可以分别集中到一个 Critical Alarm 中送至 SMU_STDBY 中做冗余处理。SMU_STDBY 对这些 Alarm 响应时可以强制将 FSP Error Pin 转为故障状态,通知外围监控芯片做二级安全路径的输出控制
4. TC4x Safe Computation Platform 安全软件运行 AURIXTM 中跟安全软件运行相关的模块包含 CPU、IR、DMA、NVM、RAM、SRI Bus、FPI Bus,TC3x 中 CPU 有 Lockstep 的安全机制,针对 IR 和 DMA 模块,TC3x 产品则需要用户实现外部软件安全机制来诊断 IR 和 DMA 模块的故障。但是在 TC4x,Lockstep 锁步核安全机制已经从 CPU 扩展到了 IR 和 DMA,过去的 TC3x 中的软件安全机制就不再需要了,这一设计对用户非常友好。
5. TC4x RAM ECC 可纠正位错误 AURIXTM 片内易失性存储单元 RAM 可纠正位错误在运行中被读取时会被 ECC 机制实时纠正,所以对这类可纠正位错误的硬件故障,应用上由于可以保证读取的 RAM 内容是正确的,不存在引起违反系统安全目标的的风险,片内 RAM 可纠正位错误的故障不需要用户对其做任何响应,因此 TC4x 中取消了 RAM 可纠正位错误的地址缓存设计,不再将其列为安全相关的故障。TC3x 中没有强调这一点,用户很容易在设计中忽视这一点,导致对 RAM 可纠正位错误故障的过度安全响应动作频发。 6. TC4x MBIST 易失性存储单元自检 AURIXTM TC4x 片内易失性存储单元 RAM 的集成测试模块支持对 RAM 做 MBIST (Memory Build-In-Self-Test)自检。TC3x MBIST 只支持 Non-destructive Inversion Test (NDIT),而 TC4x MBIST 升级到支持 Destructive Test。Destructive Test 有更高的诊断覆盖率,可以达到 ASIL-D 级别。此外,TC4x 支持 Key-On / Key-Off 的 MBIST 测试。在 TC4x SafeTlib 软件中包含了 Key-on / Key-off MBIST 测试。 7. TC4x LBIST 逻辑电路自检 ARUIXTM TC4x LBIST 支持两种操作模式,Key-on LBIST 和 Key-off LBIST。在 TC4 内部把 LBIST 进行了分层设计,分成多个测试域。Key-on LBIST 只测试片内安全相关的数字逻辑电路,可以在 5~6ms 之内完成,可以达到 90% Stuck-at 测试覆盖率。Key-off LBIST 测试芯片内部完整的数字逻辑电路,多层测试域依次完成测试,每层测试域测试在 50ms 之内,可以达到 90% Stuck-at 测试覆盖率。在 TC4x SafeTlib 软件中包含了 Key-on LBIST 测试。 8. TC4x Clock Monitoring 时钟监控 ARUIXTM TC4x 时钟系统中保留了如 TC3x 一样的 OSC watchdog Monitor、PLL loss of lock detection Monitor、Clock alive Monitor 三种硬件安全机制。此外,TC4x 中加入了针对片内产生的各个时钟的 Plausibility 合理性检查的硬件安全机制,这一安全机制在 TC3x 中是需要用户软件来实现的,TC4x 这些增强的硬件安全机制简化了用户对时钟安全的软件设计。 9. TC4x Power Monitoring 电压监控 AURIXTM TC4x 同 TC3x 一样有一级欠压监控和二级欠压过压监控,不同于 TC3x,TC4x 中只有二级欠压过压监控被列入片内电源监控安全机制中,一级欠压监控不再归为安全相关。理由是,当电压在 TC4x 工作电压范围之内到达一级欠压监控电压阈值之前,二级欠压和过压监控即可以报出 Alarm,SMU 可以对该 Alarm 执行合适的安全响应动作。 10. TC4x Over-temperature 过温监控 AURIXTM TC4x 同 TC3x 一样有冗余的温度检测模块 DTS,不同于 TC3x 的 2 个,TC4x 中增加到了 6 个。而且在 TC4x 中只有过温才是安全相关的,因为 MCU 的任何内部故障都不会使其自行降温,故温度过低不是 MCU 故障导致的失效模式,所以只有芯片过温才被纳入安全考虑范围。DTS 会每隔 2ms 持续测温,如芯片过温即报出 Alarm。 11. Safe Digital Actuation 安全数字输出 针对安全数字输出的设计中,通常是对一个 Mission Channel 输出增加一个 Monitoring Channel 输入返回到 AURIXTM 进行监控,通过比较两个信号来确保 AURIXTM 数字输出如预期,以达到 ASIL-D 的安全数字输出。在 TC3x 中,这种比较通常引入了一个 IOM (Input Output Monitor) 硬件模块来完成。在 TC4x 中,这个硬件模块已经去掉,对于 Mission Channel 输出信号和 Monitoring Channel 回读信号的比较,通常由信号发生单元同时也是信号捕获单元的硬件模块如 GTM/eGTM 即可以实现,对用户来说简化了安全数字输出的设计。
12. Safe Digital Acquisition 安全输字输入 针对安全数字输入的安全机制,通常采用冗余输入的方式,一个 Mission Channel 和一个 Monitoring Channel,通过对比校验数字输入的完整性。TC4x 中用独立的 GTM/eGTM 双通道捕获外部双路数字输入进行冗余校验可以实现 ASIL-D 的安全输入方案,外部单路数字输入至芯片内部分成双通道至独立的 GTM/eGTM 双通道进行冗余校验可以实现 ASIL-B 的安全输入方案。比 TC3x 的安全数字输入应用案例更加丰富,便于用户灵活设计。
13. Safe Analog Acquisition 安全模拟输入 针对安全模拟输入的安全机制,通常采用冗余输入的方式,一个 Mission Channel 和一个 Monitoring Channel,通过对比进行校验模拟输入的完整性。TC4x 中针对安全模拟输入,同类 ADC 模块的双路输入冗余校验(如 TMADC + TMADC 或者 DSADC + DSADC)即可以实现 ASIL-D 的安全模拟输入方案;外部单路模拟输入至芯片内部后分成双通道(TMADC + TMADC, TMADC + DSADC, TMADC + FCC)进行冗余校验,或者外部单输入通道送至内部单 ADC 模块处理,都可以实现 ASIL-B 的安全输入方案。这比 TC3x 的安全应用案例更加丰富,帮助用户设计所需 ASIL 等级的安全模拟输入方案。 除了上面这些安全特性的增强或者变化,TC4x 中还增加了一些新的 IP 模块,比如 PPU (Parallel Processing Unit)、LLI (Low Latency Interconnect)、PCIe、DRE (Data Routing Engine)、xSPI、AUDIO 等,对它们也都有顶层安全需求和应用案例,相应地增加了所需的安全机制。 5 OPTIREGTM TLF4x 助力 AURIXTM TC4x 实现 ASIL D 的应用设计
英飞凌的 TLF3x和 TLF4x 两代电源管理芯片,都具备了为 AURIXTM 量身定制的安全监控功能,提供 AURIXTM 所需的外部安全措施: - 供电电压监控
- 时钟监控(看门狗)
- SMU(安全管理单元)告警监控
此外,PMIC 还为系统提供独立于 MCU 的第二条关断路径,与 MCU 两者搭配,组成最小的功能安全核心单元,支持系统实现ASIL-D 的功能安全要求。 TLF4x 系列的电源管理芯片,相较于 TLF35584/5,在功能安全结构上做了更进一步的优化和增强: 1. 自带安全关断控制(Safety Switch)
PMIC 的一级同步 DCDC (Pre-buck) 实现了从高压域(12V/24V)到低压域(<6V)的转换,其功率 MOSFET 半桥中的上管是连接高压域和低压域的器件。这个 MOSFET 的 D-S 短路失效模式,是整个系统供电单元的单点失效,为系统的功能安全达到ASIL-D 带来了挑战,当这个同步 Pre-Buck 为 MOSFET 外置的结构时,其影响尤为显著。
TLF4x 系列的 PMIC 全部集成了安全关断控制单元,能够检测到 Pre-Buck 的功率 MOSFET 上发生的严重故障(包括上管的D-S 短路故障),继而触发关断路径,为这部分单点失效提供了诊断覆盖,使系统电源设计轻松达到 ASIL-D 的功能安全要求。 2.支持多合一系统的独立安全监控/关断策略
TLF4D985 新增加的“REDUCED OPERATION MODE”能够支持两套独立的“时钟监控”和“SMU告警监控”,同时,提供两套独立的“中断告警(INTx)”和“安全关断路径(SSOx)”,以配合 TC4x 的 Hypervisor 功能实现在多合一系统中,多个应用在功能和功能安全设计上的独立性。 6 AURIXTM TC4x SafeTlib 安全软件库 TC4x SafeTlib 安全软件库是由英飞凌开发的可以集成到 AUTOSAR 环境中的商用软件包,ASIL-D 安全等级,支持单核或多核环境。 TC4x 内置 BIST 电路如 LBIST、MBIST、MONBIST 可以提供覆盖到片内数字电路、RAM 存储单元、电压监控电路的潜伏故障的检测,但是这些 BIST 电路有些是需要软件进行触发并检验测试结果的。此外,TC4x 片内有一些硬件安全机制需要额外的测试,还有一些硬件安全机制的报警通路需要测试,以降低潜伏故障的风险,这些都可以由 TC4x SafeTlib 软件来完成。此外,配合 TC4x 的 PMIC TLF4x 的复杂驱动包和 TLF4x 内置安全Watchdog即作为 TC4x外部安全Watchdog 的驱动包也都包含在 TC4x SafeTlib 中。另外,TC4x SafeTlib 不再包含 Runtime Tests,TC4x 安全应用案例中提到的运行中的软件安全机制需要用户自行实现
7 AURIXTM TC4x AUTOSAR MCAL 软件 TC4x MCAL 软件是由英飞凌开发的 AUTOSAR底层商用软件包。其安全目标,一是从功能角度避免系统性失效可达到 ASIL-D 或者 ASIL-B 级别(不同 MCAL 软件模块的应用需求决定其 ASIL 等级不同),二是避免内存干扰系统中其他软件可达到 ASIL-D 级别。帮助用户在系统设计中有 ASIL-D 软件功能安全需求时可以有相应的 ASIL-D 的 MCU 底层软件来支撑,同时保证集成到 ASIL-D系统软件中时 TC4x MCAL 软件不会对任何非MCAL 软件造成任何干扰。 结束语 综上所述,AURIXTM TC4x 和 OPTIREG™ PMIC TLF4x 在支持 ASIL-D 功能安全需求的设计上更上一层楼,不仅增加了符合未来汽车电子产品的新功能需求,而且设计上的优化也帮助客户设计系统功能安全时的选择更灵活且更便捷。AURIXTM TC4x 和 OPTIREG™ PMIC TLF4x产品在英飞凌创新峰会(IACE)上已强势发布,更多关于 TC4x 和 TLF4x 产品的功能安全特性可以联系英飞凌获取 TC4x和TLF4x 功能安全相关文档。 |