Processor Circuit Checker for Spectre Vulnerability Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional processor architectures with out-of-order execution and branch prediction functions are vulnerable to attacks like Spectre, and existing solutions to mitigate these vulnerabilities, such as disabling branch prediction or inserting barrier instructions, significantly impact processor performance.
Innovation Solution
Implement a checking method and checker in the processor circuit to determine if a data cache sends a refill request and data is written into a register under branch prediction execution status, using modules to assess vulnerability based on these determinations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If branch prediction function is disabled to avoid Spectre attack, then security vulnerability is reduced, but processor performance is seriously affected
Solution Approach 1:
The patent introduces a checker unit as an intermediary component that monitors data cache operations and branch prediction execution. This checker detects potential Spectre attack conditions by checking whether data refill requests occur during branch prediction execution and whether the predicted branch is ultimately taken. The checker provides security verification without completely disabling the branch prediction function, thus maintaining processor performance while mitigating vulnerability.
2Reliability
If barrier instructions are inserted into program fragments to mitigate vulnerability, then security is improved, but processor performance is seriously affected
Solution Approach 1:
The patent implements a self-service security mechanism where the processor automatically monitors its own execution state through the checker unit. The checker continuously checks data cache operations and branch prediction status without requiring external intervention or manual insertion of barrier instructions. This automated approach provides security verification while avoiding the performance overhead associated with inserting barrier instructions throughout the code.
3Productivity
If out-of-order execution is implemented to improve instruction processing performance, then processor performance is improved, but information security vulnerability increases
Solution Approach 1:
The patent implements a feedback mechanism through the checker unit that monitors the interaction between out-of-order execution and branch prediction. The checker receives feedback about data refill requests from the data cache and branch prediction execution status, then uses this feedback to detect potential Spectre attack conditions. This feedback loop enables security verification in processors with out-of-order execution without requiring changes to the execution architecture itself.
Data Source
AI summary
A checking method for a processor circuit includes: determining whether a data cache send a data refill request under a branch prediction executing status for obtaining a first result; determining whether data requested by the data refill request is written into a register and calculated under the branch prediction executing status for obtaining a second result; and determining whether the processor circuit has a vulnerability according to the first result and the second result.


