【IF-SAFE-03】Lockstep双核锁步 - ASIL-D核心保障【IF-SAFE-03】Lockstep双核锁步 - ASIL-D核心保障英飞凌AURIX功能安全专题摘要Lockstep双核锁步架构是实现ASIL-D功能安全等级的核心硬件机制。本文深入剖析Lockstep架构的工作原理、错误检测机制、与ISO 26262标准的关系以及在英飞凌AURIX TC3xx系列MCU中的具体实现。文章涵盖时序约束、故障模式分析、LBIST安全验证等关键主题并提供混合架构设计策略与实际应用案例为汽车电子工程师提供全面的Lockstep技术指南。一、引言高安全等级MCU的核心需求在汽车电子、工业控制、航空航天等对安全性要求严苛到近乎零容错的领域微控制器单元MCU作为整个系统的大脑其稳定运行直接决定了整个设备乃至系统的可靠性与安全性。随着汽车智能化、工业自动化的快速发展自动驾驶辅助系统ADAS、电动汽车动力域控制、底盘制动系统、转向控制等场景对MCU的安全等级要求不断提升。传统单核心MCU在面对瞬态故障Transient Fault时缺乏有效的硬件级检测能力。当宇宙射线或高能粒子击中芯片内部存储单元或逻辑电路时可能导致寄存器位翻转Bit Flip或运算错误。这类故障在汽车15年使用寿命周期内发生的概率不可忽视尤其在高温、强辐射等恶劣环境下更为显著。Lockstep双核锁步架构正是为解决这一挑战而生的硬件级冗余容错核心技术。Lockstep架构通过双核心同步执行、实时比对的方式实现对MCU运行状态的全程监控从硬件层面规避单核心运行的故障风险。这种设计严格遵循ISO 26262道路车辆电子电气系统功能安全标准是高安全等级MCU达到ASIL-D认证的标志性设计之一。本文将系统性地剖析Lockstep技术的各个维度为功能安全工程师和嵌入式开发者提供深度技术参考。二、Lockstep架构原理深度解析2.1 冗余容错的核心设计逻辑Lockstep核的本质是一种基于冗余容错的硬件架构设计其核心思路是通过双核心同步执行、实时比对的方式实现对MCU运行状态的全程监控从而及时发现并响应运行过程中出现的故障。这种架构设计遵循ISO 26262标准中对安全机制Safety Mechanism的要求能够在不中断系统正常运行的前提下完成对故障的实时检测与处理。从具体架构来看Lockstep核系统主要由三个核心组件构成主核Master Core、校验核Checker Core以及专用硬件比较器Hardware Comparator。这三部分协同工作构成了完整的冗余容错体系。主核Master Core作为整个系统的核心执行单元负责执行系统的全部指令、处理数据、控制外设等核心任务是MCU对外输出信号、实现系统功能的主要载体。主核的执行结果会正常参与系统运算和对外通信。校验核Checker Core作为主核的镜像副本其核心作用是与主核同步执行相同的指令生成相同的运算结果用于与主核的输出结果进行比对。校验核的计算结果通常不参与系统对外输出仅用于内部比对。专用硬件比较器Hardware Comparator是故障检测的核心部件负责对主核与校验核的输出结果进行逐时钟周期的实时比对确保两个核心的运行状态完全一致。比较器本身通常也具备自检功能以防止其自身成为单点故障源Single Point of Failure。2.2 完全锁步与分时锁步根据比对实时性和硬件设计复杂度的不同Lockstep架构主要分为完全锁步Full Lockstep和分时锁步Delayed Lockstep两类。完全锁步架构实现了主核与校验核的指令级实时同步比对。两个核心在每一个时钟周期内都执行完全相同的指令硬件比较器也会在每一个时钟周期内完成结果比对故障检测精度达到指令级别。这种设计能够及时发现哪怕是最微小的瞬时故障或永久故障是汽车行业最高安全等级ASIL-D级系统的首选方案。分时锁步架构则采用了时间冗余替代部分硬件冗余的设计思路。校验核延迟数个时钟周期执行与主核相同的指令硬件比较器则在校验核完成指令执行后将其结果与主核对应时钟周期的结果进行比对。这种设计虽然无法实现指令级的实时检测但能够有效降低硬件设计的复杂度减少同步电路的设计成本。分时锁步的一个重要优势在于其对共因失效Common Cause Failure的抵抗力。由于主核与校验核在不同时间点执行相同的指令它们不太可能同时受到同一瞬态干扰事件的影响。例如如果一个短时电压跌落或电磁干扰脉冲持续时间仅为数个时钟周期它可能影响主核在时刻t的执行但不会影响校验核在时刻tdelay的执行从而能够被比较器检测到。技术洞察在英飞凌AURIX TC3xx系列中实现的是完全锁步架构。每个支持Lockstep的CPU核心如CPU0都有一个专门的Checker Core如CPU1在每个时钟周期进行比较。这种设计确保了最高的故障检测覆盖率满足ASIL-D系统的严格要求。图1Lockstep双核锁步架构原理图2.3 主核与校验核的一致性要求关于校验核是否必须与主核完全一致这是很多芯片设计工程师和下游选型人员经常困惑的问题。答案是对于标准Lockstep架构为实现逐周期的精准比对主核与校验核必须是同型号、同主频、同流水线深度、同指令集的完全一致的双核。之所以要求完全一致在于Lockstep核的故障检测依赖于主核与校验核在相同输入条件下输出相同的结果。如果核心的型号、主频、流水线深度、指令集等参数存在差异会导致两个核心的指令执行时序、运算结果延迟、中断响应逻辑等出现偏差进而无法实现逐周期的精准比对。三、AURIX TC3xx的Lockstep实现细节3.1 TC3xx多核架构概述英飞凌AURIX TC3xx系列微控制器是专为高安全等级汽车电子应用设计的旗舰产品。以TC39x为例该系列采用TriCore 1.6.2内核包含多个物理核心每个核心都可配置为独立运行模式或Lockstep模式。表1TC39x物理核心配置物理核心类型主频典型主要职责安全机制CPU0TriCore 1.6.2 P300 MHz应用主逻辑、复杂算法、系统管理可选锁步核CPU1进行校验CPU1TriCore 1.6.2 P300 MHz作为CPU0的锁步核或独立运行与CPU0时钟级锁步比较CPU2TriCore 1.6.2 E300 MHz实时中断处理、时间关键型外设控制独立运行确保高实时性CPU3-CPU5TriCore 1.6.2 P/E300 MHz应用扩展、通信协议处理可选Lockstep配置需要特别注意的是TC3xx中的锁步核如CPU1并非备份CPU而是一个实时比较器。CPU1几乎完全复制CPU0的执行流每个时钟周期都在比较双方的计算结果、地址和数据。一旦出现不可纠正的内存错误或粒子撞击导致的位翻转比较器会立刻触发错误信号系统可进入安全状态。3.2 Lockstep配置机制在AURIX TC3xx中Lockstep功能的启用通过Boot Mode IndexBMI中的配置位进行控制。根据英飞凌官方文档启动固件Boot Firmware负责配置Lockstep功能。BMI数据结构中包含LSENA0、LSENA1、LSENA2、LSENA3等位分别用于控制CPU0、CPU1、CPU2、CPU3的Lockstep比较器逻辑。表2BMI中Lockstep配置位位字段功能说明LSENA0[4]Lockstep比较器逻辑控制CPU00禁用1启用LSENA1[5]Lockstep比较器逻辑控制CPU10禁用1启用LSENA2[6]Lockstep比较器逻辑控制CPU20禁用1启用LSENA3[7]Lockstep比较器逻辑控制CPU30禁用1启用LBISTENA[8]LBIST执行控制0禁用1启用CHSWENA[11:9]Checker软件执行控制101B禁用否则启用这种通过BMI配置的方式具有重要的安全意义。即使攻击者能够修改部分Flash内容BMI数据采用CRC校验和重复存储机制UCB_BMHDx_ORIG与UCB_BMHDx_COPY能够有效防止配置位的意外或恶意篡改。3.3 启动流程中的Lockstep初始化AURIX TC3xx的启动流程包含多个关键阶段Lockstep配置在Boot Firmware阶段完成。整个启动序列可概括为系统复位System ResetMCU上电或复位信号触发Boot Firmware执行英飞凌提供的固化代码开始执行Flash Ramp-Up启动BMI评估确定启动模式HSMHardware Security Module引导可选Lockstep配置根据BMI中的LSENA位配置Lockstep调试端口激活配置Application Start-up SoftwareCPU0主核初始化C语言环境初始化多核启动协调Application Software用户应用程序开始执行在Lockstep配置阶段Boot Firmware会读取BMI中的LSENAn位并将其写入SCU_LCLCON0/1寄存器Safety Control Unit - Local Configuration Register中的相应位从而启用或禁用各CPU的Lockstep比较器逻辑。四、错误检测机制详解4.1 时钟级比较器的工作原理Lockstep架构的核心在于硬件比较器Comparator实时监测主核与校验核的输出差异。在TC3xx中比较器检查的信号包括但不限于指令执行结果ALU运算结果、寄存器写回数据内存访问地址指令获取地址、数据访问地址控制流信号分支跳转目标、分支预测更新外设访问外设寄存器访问地址和数据比较器采用全等性检测策略在每个时钟上升沿对主核和校验核的所有输出信号进行位对位比较。如果存在任何一位不匹配立即触发错误信号。这一机制能够检测出以下类型的故障寄存器文件中的位翻转ALU运算单元的永久性故障流水线控制逻辑的错误指令解码单元的故障4.2 延时窗口检测机制在实际工程中由于主核和校验核可能存在微小的物理差异如布线延迟、工艺偏差比较器通常会引入一个小的延时窗口Delay Window来容忍这种差异。延时窗口的大小通常为1-3个时钟周期。延时窗口的设计基于以下考量物理一致性容忍主核和校验核在硅片上位于不同位置它们的输出信号到达比较器的延迟可能略有不同共因失效防护延时窗口尤其是分时锁步方案中的大延时能够有效隔离同时影响两个核心的瞬态干扰噪声抑制小的延时窗口能够容忍信号完整性问题导致的毛刺然而延时窗口也会带来一个权衡如果两个核心的故障发生在延时窗口内且持续时间不超过窗口宽度比较器可能无法检测到该故障。因此延时窗口的大小需要在故障检测能力与物理实现可行性之间取得平衡。4.3 错误信号上报与安全状态转换当Lockstep比较器检测到主核与校验核输出不匹配时会触发以下事件序列错误检测比较器识别到输出差异错误信号生成Error Signaling ModuleESM或FCCUFault Collection and Control Unit接收错误信号中断触发向系统处理器发送中断请求安全状态转换系统进入预设的安全状态AURIX TC3xx的SMUSafety Management Unit负责协调整个错误处理流程。SMU可以配置多种响应策略系统复位触发MCU复位清除所有状态特权复位仅复位故障核心保持其他核心运行进入安全模式关闭危险输出进入降级运行模式通知上层系统通过CAN/CAN FD向整车网络报告故障4.4 比较器自检机制作为安全关键硬件Lockstep比较器本身也必须具备自检能力以防止其成为单点故障源。AURIX TC3xx实现了多种比较器自检机制上电自检POSTMCU启动时自动执行周期性自检在正常运行期间周期性激活软件触发自检应用程序可以随时请求自检自检的原理是向比较器注入已知的测试向量验证其能够正确检测预设的不匹配情况。如果自检失败系统会将其报告为更高优先级的故障。图2Lockstep错误检测时序图五、ASIL-D与Lockstep的关系5.1 ISO 26262硬件架构指标要求ISO 26262标准对硬件层面的随机硬件故障提供了明确的量化要求。标准定义了三个核心指标5.1.1 单点故障度量SPFM - Single-Point Fault MetricSPFM衡量硬件架构对单点故障的防护能力。单点故障是指能够直接导致安全目标违反、且没有任何其他故障参与的故障。SPFM计算公式为SPFM 1 - (λ_SPF × DC_SPF λ_RES × DC_RES) / λ_total 其中 λ_SPF 单点故障失效率 DC_SPF 单点故障的诊断覆盖率 λ_RES 残余故障失效率 DC_RES 残余故障的诊断覆盖率 λ_total 总故障失效率ASIL等级对SPFM的最低要求表3ASIL等级与SPFM要求ASIL等级SPFM目标ASIL B≥ 90%ASIL C≥ 97%ASIL D≥ 99%5.1.2 潜伏故障度量LFM - Latent Fault MetricLFM衡量安全机制检测潜伏故障的能力。潜伏故障是指本身不会导致安全目标违反、但与另一个故障组合时会造成危害的故障如安全机制本身的故障。表4ASIL等级与LFM要求ASIL等级LFM目标ASIL B≥ 60%ASIL C≥ 80%ASIL D≥ 90%5.1.3 随机硬件故障概率度量PMHF - Probabilistic Metric for Random Hardware FailuresPMHF是系统在运行周期内平均每小时违反安全目标的概率通常以FITFailures In Time为单位1 FIT 1 failure per 10^9 operating hours。表5ASIL等级与PMHF要求ASIL等级PMHF目标约等于ASIL B 1000 FITASIL C 100 FITASIL D 10 FIT5.2 Lockstep对架构指标的贡献Lockstep架构对ISO 26262硬件架构指标的贡献主要体现在以下方面极高的诊断覆盖率Lockstep比较器能够覆盖主核与校验核之间99%以上的逻辑故障包括ALU、寄存器文件、流水线控制、指令解码等关键模块快速故障检测完全锁步架构能够在每个时钟周期检测故障故障检测延迟接近零故障隔离通过比较器输出系统能够确定是主核还是校验核发生了故障在没有Lockstep的情况下要达到相同的诊断覆盖率需要在软件层面实现复杂的自检机制这会导致显著的CPU开销和检测延迟。Lockstep提供了硬件级的、零软件开销的故障检测能力是达到ASIL-D的硬件基础。关键洞察Lockstep是达到ASIL-D的必要条件但非充分条件。达到ASIL-D还需要完整的FMEDA分析、充分的覆盖所有安全相关硬件元素、系统的故障响应策略、以及完整的验证与确认活动。Lockstep解决的是CPU处理路径的故障检测问题而存储、通信、外设等模块需要各自的安全机制。5.3 ASIL-D系统的Lockstep配置策略在实际项目中ASIL-D系统通常采用以下Lockstep配置策略关键安全功能专用核将最高安全等级的功能部署在Lockstep核对上执行双核锁步 独立监控核Lockstep核对执行安全功能独立核运行监控软件多核Lockstep冗余对特别关键的功能可能采用多对Lockstep核的冗余配置六、Lockstep的时序约束与性能影响6.1 面积开销分析Lockstep架构最直接的成本是硬件面积开销。由于需要集成主核和校验核两套几乎相同的处理器核心芯片面积会显著增加。以AURIX TC3xx为例每个Lockstep CPU对如CPU0CPU1相对于单个独立核大约增加90-100%的面积。面积开销的主要来源校验核逻辑与主核几乎相同的处理器核心比较器逻辑用于检测输出差异的组合逻辑额外的时钟树和复位网络物理隔离所需的额外布线资源6.2 功耗与散热影响由于存在两套执行相同任务的处理器核心Lockstep架构的动态功耗几乎是单核运行时的两倍。这一因素在电池供电的汽车应用中尤为重要。功耗增加带来的连锁影响散热设计需要更大的热容和散热能力可能影响芯片的长期可靠性高温会加速半导体老化对汽车电子的功耗预算提出更高要求6.3 时序收敛挑战Lockstep架构对芯片的时序收敛提出了更高要求。由于主核和校验核必须在每个时钟周期精确同步芯片设计者需要精心平衡两个核之间的走线延迟。时序收敛的主要挑战时钟 skew 控制主核和校验核的时钟必须高度同步数据路径平衡两个核的关键信号路径延迟需要匹配物理布局约束通常需要将主核和校验核布局在硅片的相近位置6.4 性能与安全的权衡一个常见的误解是Lockstep架构会损失50%的计算性能。实际上从系统角度看主核提供完整算力主核的输出正常参与系统运算性能不受影响校验核提供安全保障校验核不参与对外计算其存在不消耗系统算力系统整体性能不受影响在正确设计的系统中Lockstep不应导致性能下降然而当Lockstep比较器检测到故障并触发系统响应如复位或进入安全模式时系统功能会暂时中断。这种中断对实时性要求极高的控制系统可能造成影响需要在系统设计时予以考虑。七、Lockstep故障模式深度分析7.1 故障分类Lockstep架构可能面临的故障可分为以下几类7.1.1 瞬态故障Transient Faults瞬态故障是由外部环境因素引起的暂时性错误常见的诱因包括宇宙射线高能粒子击中芯片内部节点电磁干扰EMI外部电磁场耦合到信号线电源噪声供电电压的瞬时波动温度冲击剧烈的温度变化导致节点状态异常瞬态故障通常只影响单个时钟周期或少量寄存器位可以通过Lockstep比较器检测。重启后通常不会再次发生。7.1.2 永久故障Permanent Faults永久故障是由物理损伤或制造缺陷导致的持续性错误门氧化层击穿晶体管永久短路金属互连开路或短路制造缺陷或电迁移闩锁效应Latch-upPNPN结构意外导通永久故障会持续存在直到进行硬件维修。在Lockstep系统中永久故障会导致持续的比较器不匹配最终触发系统进入安全状态。7.1.3 间歇性故障Intermittent Faults间歇性故障介于瞬态和永久故障之间会重复发生但不一定持续存在接触不良芯片封装内部的连接问题边缘工艺窗口接近规格极限的晶体管老化效应性能逐渐退化到临界点间歇性故障是Lockstep系统面临的挑战之一。频繁的故障检测可能导致系统频繁进入安全状态影响可用性。7.2 共因失效分析共因失效Common Cause Failure, CCF是指同时影响主核和校验核的单一诱因导致的故障。共因失效是Lockstep架构最重要的理论局限性。7.2.1 共因失效的来源Lockstep系统中可能导致共因失效的因素共享时钟如果时钟产生电路发生故障两个核心可能同时产生错误结果共享电源电源电压异常可能同时影响两个核心共享复位复位电路故障可能导致两个核同时进入错误状态指令获取路径如果两个核共享指令缓存或总线指令获取错误可能同时影响两者软错误如果瞬态干扰足够强可能同时在两个核中引起错误7.2.2 缓解措施针对共因失效芯片设计者采用多种缓解策略物理隔离主核和校验核在硅片上保持足够的物理距离独立时钟域为两个核提供独立的时钟源适用于分时锁步独立电源引脚关键电源独立供电分时锁步校验核延迟若干周期执行避免同时处理相同数据独立指令获取每个核有独立的指令缓存7.2.3 ISO 26262对共因失效的要求ISO 26262 Part 9专门讨论了dependent failure analysis要求开发者识别和量化共因失效的影响。标准提供了Beta因子模型来估算共因失效的贡献β_factor λ_CC / (λ_M λ_CC) 其中 λ_CC 共因失效导致的故障率 λ_M 主核和校验核相互独立的故障率对于高安全等级系统芯片供应商通常会通过设计手段将Beta因子控制在1%以下。7.3 比较器本身的故障Lockstep比较器作为安全关键硬件其自身也必须具备高可靠性。如果比较器发生故障可能导致漏检比较器未能检测到实际存在的差异误报比较器错误地报告不存在的差异针对比较器故障的防护措施比较器自检周期性验证比较器功能正常双比较器冗余使用两个独立的比较器进行交叉验证简单性设计比较器逻辑尽量简单降低故障概率八、安全验证方法LBIST启动自检8.1 LBIST概述LBISTLogic Built-In Self-Test是一种芯片内置的自检机制用于在启动阶段或运行期间验证芯片内部逻辑的完整性。LBIST是AURIX TC3xx安全机制套件的重要组成部分。在AURIX TC3xx中LBIST的主要功能启动自检在系统启动时验证CPU核心、总线矩阵等关键逻辑周期性自检在运行期间周期性执行覆盖潜在的老化相关故障故障定位提供故障信息帮助定位具体的故障模块8.2 LBIST的工作原理LBIST采用内建自测试BIST技术其基本原理是测试向量生成使用线性反馈移位寄存器LFSR生成伪随机测试向量扫描链注入测试向量通过扫描链注入到芯片内部节点功能执行芯片在测试模式下执行组合逻辑响应捕获通过扫描链捕获输出响应结果比对将捕获的响应与预期结果比对判断是否存在故障LBIST通常能够达到90%以上的故障覆盖率是Lockstep比较器的有效补充。8.3 TC3xx中的LBIST配置在AURIX TC3xx中LBIST的执行由BMI中的LBISTENA位控制。当该位被置位时Boot Firmware会在启动过程中执行LBIST。LBIST执行涉及的主要模块CPU核心逻辑包括ALU、寄存器、流水线控制系统总线和互联矩阵内存控制器接口安全监控单元8.4 LBIST执行时间LBIST的执行时间取决于测试覆盖率和目标故障模型。以AURIX TC3xx为例完整LBIST通常需要几十毫秒到数百毫秒快速LBIST针对关键路径的快速检查执行时间可缩短至数毫秒对于需要快速启动的应用工程师需要在启动自检的覆盖率和启动时间之间进行权衡。可以采用分阶段自检策略启动阶段执行快速自检最小覆盖运行期间执行完整的周期性自检8.5 Checker软件CHSW除了硬件LBISTAURIX TC3xx还支持Checker软件CHSW机制。CHSW是一种软件形式的锁步验证运行在独立核心上的软件定期检查主核的执行状态。CHSW的主要功能验证关键数据路径的计算结果检查内存访问的合法性监控程序执行流程验证外设配置的完整性CHSW可以作为Lockstep硬件比较器的补充提供更高层次的软件级验证。图3LBIST启动自检流程图九、ISO 26262对Lockstep的完整要求9.1 ISO 26262 Part 11对Lockstep的指导ISO 26262 Part 112018年第二版新增专门针对半导体器件的功能安全提供了指导其中第11条专门讨论了Lockstep CPU核心。Part 11对Lockstep的核心指导要点Lockstep定义两个相同的CPU核心并行执行相同指令硬件比较器在每个时钟周期检查它们的输出任何差异都触发故障通知诊断覆盖率Lockstep通常声称提供99%或更高的CPU处理路径诊断覆盖率比较器处理需要考虑比较器本身作为单点故障源的问题延时锁步一个核心延迟若干时钟周期运行在另一个核心之后以提高对共因瞬态故障的容忍度检测延迟需要考虑故障检测延迟和响应时间9.2 多核处理器的要求对于多核处理器ISO 26262 Part 11提出了以下要求安全要求分配明确将安全要求分配到各个核心核间干扰分析共享片上资源缓存、总线、内存控制器导致的核间干扰多核Lockstep vs 异构多核评估多核Lockstep与异构多核架构的适用性9.3 FMEDA中的Lockstep建模在FMEDAFailure Modes, Effects, and Diagnostic Analysis分析中Lockstep架构需要正确建模9.3.1 故障分类Lockstep系统的故障可分为可检测的故障能够被Lockstep比较器检测到的故障残余故障Lockstep比较器的覆盖盲区共因故障同时影响两个核的故障比较器故障比较器自身的故障9.3.2 诊断覆盖率计算Lockstep的诊断覆盖率计算需要考虑DC_Lockstep λ_detected / λ_total 其中 λ_detected 被Lockstep检测到的故障率 λ_total CPU核心的总故障率通常高覆盖率的Lockstep实现能够声称95-99%的诊断覆盖率。9.3.3 半导体安全手册芯片供应商需要提供半导体安全手册Safety Manual说明Lockstep架构的详细实现声称的诊断覆盖率使用Lockstep的约束条件故障模式和安全机制系统集成者需要根据安全手册中的信息进行系统级FMEDA分析。十、与非Lockstep核的混合架构设计策略10.1 混合架构的必要性在实际汽车电子系统中并非所有功能都需要最高等级的 safety-critical 保障。如果将所有功能都部署在Lockstep核上会造成资源浪费和成本增加。混合架构允许系统设计者在安全性和成本之间取得平衡。10.2 TC3xx的核分配策略以AURIX TC3xx为例典型的混合架构核分配策略表6混合架构核分配策略示例核心配置典型应用ASIL等级CPU0/CPU1Lockstep动力域控制、安全气囊控制、制动系统ASIL-DCPU2独立实时传感器数据采集、PWM生成ASIL-B/CCPU3/CPU4独立或Lockstep车身控制、网络通信ASIL-BCPU5独立诊断、功能安全监控QM/ASIL-A图4AURIX TC3xx混合多核架构图10.3 核间干扰的防护在混合架构中不同安全等级的核心共享芯片资源可能产生核间干扰。ISO 26262要求实现freedom from interference免于干扰包括10.3.1 数据域隔离确保运行在一个核上的软件无法破坏另一个核的数据完整性独立的SRAM分区MPUMemory Protection Unit配置独立的Flash访问权限10.3.2 时间域隔离确保一个核的计算负载不会影响另一个核的实时性独立的执行时间预算实时操作系统的时间分区独立的中断控制器10.3.3 资源域隔离确保一个核对共享资源的使用不会影响另一个核独立的外设分配独立的DMA通道独立的通信队列10.4 软件层面的安全策略在混合架构中非Lockstep核上的安全相关软件可以采用软件层面的冗余策略10.4.1 软件锁步在两个独立核心上运行相同的算法比较结果。这种方案的缺点是占用额外的CPU资源结果比较存在延迟无法检测同时影响两个核的共因故障10.4.2 多样化软件锁步与软件锁步类似但两个核心运行的是独立开发的不同版本软件核心A: 版本1算法A 核心B: 版本2算法B 投票: 如果AB输出A否则报告不一致多样化软件锁步能够检测到共因的软件bug但对共因的硬件故障无效。10.4.3 交叉核检查安全关键核定期检查其他核的执行状态心跳监测关键变量交叉验证程序流监控十一、实际案例分析ASIL-D应用的Lockstep实现11.1 案例一电动助力转向EPS系统11.1.1 系统架构电动助力转向系统是典型的ASIL-D应用其安全目标包括防止意外的转向力矩、确保驾驶员始终保持对车辆的控制、避免转向系统失效导致的车辆失控。11.1.2 Lockstep配置在基于AURIX TC3xx的EPS控制器中CPU0/CPU1配置为Lockstep对运行核心转向助力算法CPU2独立核运行传感器数据采集PWM解码、ADC采样CPU3/CPU4配置为Lockstep对或独立运行运行通信协议栈CAN TP11.1.3 安全响应策略当Lockstep比较器检测到故障时立即触发PWM输出关闭进入安全状态记录故障日志到非易失性存储器通知网关控制器和仪表盘允许电机进入自由转动模式驾驶员可手动转向11.2 案例二制动防抱死系统ABS11.2.1 实时性要求ABS系统对响应时间有严格要求通常为1-2ms需要选择具有最短中断延迟的核心。在TC3xx中CPU2TriCore 1.6.2 E版本专为实时控制优化是ABS闭环控制的理想选择。11.2.2 分层安全架构ABS采用分层安全架构表7ABS系统分层安全架构层级硬件安全机制功能L1CPU0/CPU1 Lockstep硬件Lockstep比较核心制动逻辑L2CPU2软件自检、程序流监控实时传感器处理L3CPU3看门狗、心跳监测系统监控L4外部安全监控外部比较器最终安全网11.2.3 冗余设计对于最高安全等级要求ABS可以采用双MCU冗余架构MCU1 (TC3xx) --- MCU2 (TC3xx) | | ---- 高速CAN ----- 两个MCU独立运行相同算法结果交叉比对 任一MCU故障另一MCU可独立控制车辆制动11.3 案例三自动驾驶域控制器11.3.1 异构计算架构现代自动驾驶域控制器通常采用异构计算架构结合安全岛ASIL-D级 MCU如TC3xx运行实时控制和安全功能AI加速器用于神经网络推理可能达到较低ASIL等级高性能SoC运行感知、规划等复杂算法11.3.2 TC3xx在自驾域控中的角色在自驾域控制器中TC3xx通常担任安全岛角色实时安全控制执行AEB、车道保持等安全功能系统监控监控AI加速器和SoC的健康状态故障响应检测到异常时触发安全降级或紧急停车通信网关作为车内网络的安全接口11.3.3 安全通信自驾域控制器中的安全通信采用E2EEnd-to-End保护发送方: 数据 CRC 计数器 -- CAN/CAN FD/Ethernet 接收方: 验证CRC和计数器 -- 检查数据新鲜度和完整性 | -- 异常 -- 报告SMU -- 触发安全响应十二、总结与展望Lockstep双核锁步架构是实现ASIL-D功能安全等级的核心技术。通过主核与校验核的同步执行和实时比对Lockstep能够在每个时钟周期检测CPU处理路径中的故障为汽车电子系统提供最高等级的硬件级故障检测能力。本文系统性地分析了Lockstep架构的以下关键维度架构原理完全锁步与分时锁步的设计哲学和适用场景AURIX TC3xx实现BMI配置机制、启动流程、寄存器配置错误检测时钟级比较器、延时窗口、安全状态转换ISO 26262要求SPFM、LFM、PMHF指标与Lockstep的关系性能影响面积、功耗、时序收敛的权衡故障模式共因失效分析与缓解策略安全验证LBIST、CHSW等自检机制混合架构与非Lockstep核的协同设计策略实际案例EPS、ABS、自驾域控制器的应用实例展望未来Lockstep技术将持续演进以满足更高级别自动驾驶的需求更智能的比较器能够区分瞬态故障和永久故障支持自适应响应异构Lockstep结合不同类型的处理器核心提高对共因故障的抵抗力片上系统集成Lockstep与AI加速器、安全岛的一体化设计持续自检在系统运行期间持续验证Lockstep机制的完整性作为汽车功能安全领域的工程师深入理解Lockstep架构的原理和应用对于设计符合ISO 26262要求的汽车电子系统至关重要。希望本文能为读者提供有价值的参考推动更安全、更可靠的汽车电子产品的开发。图5Lockstep双核锁步架构思维导图声明本文为技术分享文章内容基于公开的技术资料和行业标准编写。部分技术细节来源于英飞凌官方文档和ISO 26262标准。实际产品设计应参考最新的器件数据手册和应用笔记并在专业功能安全工程师的指导下进行。下期预告IF-SAFE-04将深入探讨AURIX TC3xx的Safety Management UnitSMU架构解析SMU如何协调芯片内的各种安全机制实现统一的故障管理和安全状态控制。敬请期待