可现场修复控制逻辑的硬件修补技术解析
1. 语义守护与硬件修补结合
语义守护方案能让运行在硬件处理器上的软件应用实现可信硬件执行,但存在刚性的缺点。一旦守护的组合电路合成并制造完成,就无法更改,即便后续验证工作减少了不可信状态,也难以调整,这可能影响处理器整体性能。
为解决此问题,可采用FRCL风格的可编程匹配器来增强守护机制。语义守护确保系统始终在验证状态下运行,而修补机制用于对选定配置推翻守护的决策。这些选定配置是在设计发布后被证明正确的,从而提升整体性能。
1.1 修补机制流程
- 硬件设计师在产品发布后继续进行设备验证。
- 当某个不可信配置得到充分验证后,将其编码并在运行时通过补丁上传到匹配器内存。
- 运行时,若守护标记该配置,修补机制会覆盖决策,避免系统进入降级模式。
这种方法使设计团队能随时间扩大可信配置集,即便设备已制造并交付给最终客户,也能提升设计性能。
2. 实验评估
2.1 实验框架
为评估可现场修复控制逻辑的利弊,在两个原型处理器上实现了该解决方案。这两个处理器虽处于实验阶段,但已在多个研究项目中部署和验证,虽不如商业产品复杂,但能为评估提供现实基础。
2.1.1 处理器设计
-
5 级顺序流水线处理器 :实现了 Alpha ISA 的一个子集,采用 64 位地址/数据字和 32 位指令。具有简单全局分支预测器,支持从 MEM 和 WB 阶段向 ALU 转发数据,在 EX 阶段解析分