4. Bosch底盘系统硬件安全机制
在Bosch底盘域控制器(如ESP®、iBooster、EPS)的功能安全设计中,软件安全机制必须建立在硬件安全机制之上。硬件安全机制是芯片级、板级和系统级的“最后防线”,其核心目标是在随机硬件失效发生时,仍能将系统导向安全状态。本节围绕六类关键机制展开:看门狗、锁步核、安全电源、传感器冗余、执行器回滚路径以及硬件诊断覆盖率,重点说明它们各自解决什么问题、如何实现、以及工程上如何验证其有效性。
看门狗:从“喂狗”到“窗口约束”
看门狗的本质是一个独立于主CPU的定时器,若主CPU未在规定时间内给出正确服务信号,看门狗将触发复位或进入安全状态。在底盘安全设计中,普通“喂狗”式看门狗已不足够,Bosch常用的是窗口看门狗(Window Watchdog):服务信号必须落在“不早于t_min、不晚于t_max”的窗口内,过早或过晚都视为异常。例如某ESP控制器中,主CPU需在5ms窗口内通过SPI向外部看门狗芯片发送带CRC校验的“喂狗”序列,窗口下限为3ms,上限为5ms。若程序跑飞导致喂狗过早,说明任务周期异常;若过晚,说明任务超时。两者都会触发看门狗输出复位信号。
更严格的设计采用问答式看门狗(Question-Answer Watchdog):看门狗芯片生成随机问题(如16位随机数),主CPU必须在下一个窗口内计算出正确应答(如查表或CRC变换后回传)。这种方式能检测CPU是否真正在执行程序,而非仅靠定时器“假装”运行。工程验证时,需注入“停止喂狗”“错误应答”“过早喂狗”三类故障,确认看门狗输出能可靠拉低使能信号或复位MCU。
锁步核:双核比对与延迟锁步
锁步核(Lockstep Core)是安全MCU中常见的硬件冗余机制。两个相同的CPU核执行相同指令流,但一个为主核,一个为从核,从核的输出经过延迟后与主核输出逐周期比对。若比对不一致,硬件比较器立即报错。Bosch底盘控制器中,锁步核通常覆盖CPU、总线接口和部分存储器。关键参数是锁步延迟(Lockstep Delay),常见为2~3个时钟周期,用于避免共因干扰。例如在200MHz主频下,延迟2个周期即10ns,比较器需在此窗口内完成比对。
锁步核不能覆盖所有故障,例如两个核共用的时钟、电源或比较器自身失效。因此锁步核必须与看门狗、安全电源和诊断覆盖率配合使用。工程上需通过故障注入(如强制翻转从核某一位)验证比较器能否在指定周期内报错,并确认错误响应路径(如触发NMI、进入安全状态)的延迟满足FTTI要求。
安全电源:电压监控与关断路径
底盘执行器(如ESP液压泵、EPS电机)的功率电源若异常升高或降低,可能导致误动作或失效。安全电源机制包括:过压/欠压监控、独立关断路径和电源诊断。以某EPS控制器为例,12V电池经PMIC(电源管理芯片)产生5V、3.3V和1.2V多路电源。PMIC内部集成窗口比较器,当5V输出超出4.75V~5.25V时,PMIC拉低FAULT引脚,直接关断电机预驱芯片的使能端,使电机进入自由状态(回滚路径之一)。
安全电源的关键是“关断路径独立于主CPU”。即使主CPU失效,PMIC仍能独立切断执行器驱动。工程验证需测量:过压触发阈值、欠压触发阈值、关断延迟(从故障注入到使能拉低的时间),并确认关断后执行器电流在指定时间内降至安全范围。
传感器冗余:物理冗余与解析冗余
底盘系统对传感器失效极为敏感。Bosch常用两种冗余方式:物理冗余(如双绕组电机位置传感器、双路电流采样)和解析冗余(利用其他传感器信号推算被监控量)。例如ESP的横摆角速度传感器常采用双芯片冗余,两路信号通过不同SPI通道传输,MCU比较两者差值,若超过阈值(如2°/s)则判定一路失效,降级使用另一路并点亮故障灯。
解析冗余的典型例子是:用四个轮速传感器计算参考车速,与纵向加速度积分得到的车速比较,若偏差持续超过阈值,则判定轮速信号或加速度信号存在故障。工程上需定义故障检测阈值、去抖时间和降级策略。例如轮速信号偏差超过5km/h且持续200ms,则进入降级模式,限制ESP干预强度。
执行器回滚路径:从主动控制到安全状态
当硬件安全机制检测到不可恢复故障时,执行器必须进入预定义的安全状态,即“回滚路径”。底盘系统的回滚路径通常包括:关断驱动使能、短接电机绕组(实现阻尼制动)、液压阀回中或进入跛行模式。以iBooster为例,若锁步核报错,系统会切断电机驱动,同时通过电磁阀将制动主缸与轮缸隔离,保留机械制动路径,确保驾驶员仍能通过踏板施加制动力。
回滚路径的设计需满足故障响应时间(FRT)要求。例如从检测到锁步错误到电机扭矩降至0,总延迟需小于100ms。工程验证需测量实际关断时间,并确认回滚过程中不会产生非预期的制动力或转向力矩。
硬件诊断覆盖率:量化与验证
硬件诊断覆盖率(DC)是衡量安全机制检测随机硬件失效能力的指标,分为低(60%)、中(90%)、高(99%)三档。底盘系统通常要求关键路径达到高覆盖率。DC的计算基于FMEDA(失效模式、影响及诊断分析),对每个硬件元件的失效模式评估其是否被诊断机制覆盖。例如,锁步核覆盖CPU内核的99%单点故障,看门狗覆盖时序故障的90%,安全电源覆盖电源故障的95%。
工程上需通过故障注入测试验证DC声明。例如在MCU中强制翻转SRAM某一位,观察ECC或锁步比较器是否报错;在电源路径中注入过压,观察PMIC是否在指定时间内关断。测试结果需记录故障检测时间、响应时间和安全状态达成情况,形成诊断覆盖率验证报告。
上述六类机制并非孤立工作,而是形成一条从“感知—判断—执行”的硬件安全链。传感器冗余提供可信输入,锁步核和看门狗保障计算可信,安全电源提供独立关断能力,执行器回滚路径确保最终安全状态,而硬件诊断覆盖率则量化整条链的失效检测能力。工程实践中,需通过FMEDA确定各元件的失效模式与诊断覆盖,再通过故障注入测试验证实际响应时间与安全状态达成情况。只有将机制设计、参数定义和验证证据三者闭环,才能满足ISO 26262对底盘系统ASIL-D等级的要求。