深入解析汽车功能安全锁步核(LockStep Core)的工作原理
时间:2026-05-18
在汽车功能安全领域,锁步核(LockStep Core)是一项至关重要的技术。那么,什么是锁步核呢?首先,“Lockstep” 直译过来是 “步调一致”,它原本是从军事语境引入的,用于描述齐步行军时队伍中所有人执行一致的动作步伐。后来,这一概念被引入计算机领域,用于计算机容错系统,即 “使用相同的、冗余的硬件组件在同一时间内处理相同的指令,从而保持多个 CPU 或内存的同步”。
锁步核(LockStep Core)分为 Master Core 和 Checker Core。它们使用相同的输入数据,执行相同的操作,并且使用硬件比较器逐周期比较 Master CPU 和 Checker CPU 的输出。其工作原理具体如下:
Master core 和 Checker core 的输入是相同的。
在 Checker core 输入的位置插入 n 个 cycle 的延时,通常 n 设置为 2。
Master Core 的输出为 a [i],Checker Core 的输出为 b [i],两个核的算法一致。
a [i] 进行 “非” 操作,也就是对其进行反转,然后插入 n 个 cycle 的延时,得到 x [i]。
x [i] 和 y [i] 进行同或操作,得到 cmp [i]。
如果 cmp [i] 等于 1,说明 lockstep 出现错误;如果 cmp [i] 等于 0,说明 lockstep 检查正常。
相同点方面,两个核输入相同,处理算法逻辑也相同(硬件)。不同点在于,Checker Core 在输入端做了延时,Master Core 在输出端做了延时,但延时时间是相等的;并且 Master Core 做了反转,Checker Core 没有做反转,这样做是为了防止共模干扰。所以在正常情况下,x [i] 和 y [i] 必然是严格相反的,这样按位同或的输出值必然是 0,这就证明了此时两个 CPU 都是正常工作的。故障通常需要连接到 SMU 的 Alarm 的寄存器上,当 LockStep 故障发生时,通过 SMU 触发系统 reset。而且 LockStep 是纯硬件电路的冗余与保护,所以不会影响软件运行。
一般在功能安全等级为 ASIL C 和 ASIL D 的情况下,会使能锁步核。这是因为在这些高安全等级的应用场景中,对系统的可靠性和安全性要求极高,锁步核能够提供有效的容错机制,确保系统在出现故障时能够及时检测并采取相应的措施,从而保障汽车的安全运行。
image