Debug Control Logic for Secure Scan Chain Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is a tension between ensuring security in computer systems and enabling debugging, as preventing access to system elements makes debugging impossible when the system fails.
Innovation Solution
A computer system with a security processor, scan chains, and debug control logic that varies debug functionality based on the security state, allowing activation of debug functionality on non-secure elements while maintaining security by deactivating it on secure elements unless a predefined condition is met.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If access to system elements is prevented to ensure security, then security is improved, but debugging capability deteriorates
Solution Approach 1:
The system is divided into secure elements (first scan chain) and non-secure elements (second scan chain), with separate debug control mechanisms. The secure element scan chain maintains restricted access for security, while the non-secure element scan chain allows debug access under predefined conditions, resolving the contradiction by segmenting the system into security zones with different access policies.
Solution Approach 2:
The debug control logic dynamically adjusts debug functionality based on the security state and predefined conditions. After a reset event, the system transitions from a secured state (both scan chains deactivated) to a debug-enabled state (non-secure scan chain activated) when conditions are met, allowing the system to adapt its security posture based on operational context.
2Ease of repair
If debug functionality is activated on secure elements, then debugging capability is improved, but security deteriorates
Solution Approach 1:
Different security and debug policies are applied to different parts of the system. The non-secure elements (second scan chain) have relaxed security with debug access enabled under predefined conditions, while the secure elements (first scan chain) maintain strict security with debug access prohibited. This local differentiation allows debugging where safe while protecting critical secure components.
Solution Approach 2:
The debug control logic acts as an intermediary that mediates between debug requests and scan chain access. It evaluates predefined conditions and security state before allowing debug functionality on the non-secure scan chain, providing a controlled interface that enables debugging without directly compromising secure element protection.
3Reliability
If debug functionality is completely deactivated for security, then security is improved, but system troubleshootability deteriorates
Solution Approach 1:
The system dynamically transitions between security states. After a reset event, the system enters a secured state with both scan chains deactivated. When predefined conditions are satisfied, the system can activate debug functionality on the non-secure scan chain without compromising the secure scan chain, enabling productive troubleshooting while maintaining the security posture.
Solution Approach 2:
Instead of completely deactivating debug functionality across the entire system, the patent applies partial action by selectively enabling debug access only on the non-secure element scan chain under specific conditions. This provides sufficient troubleshootability for non-critical components while maintaining security on critical secure elements.
Data Source
AI summary
A computer system includes a security processor, a first scan chain coupled to the security processor, a non-secure element, and a second scan chain coupled to the non-secure element. The computer system also includes one or more test access port controllers to control operation of the first and second scan chains, and further includes debug control logic, coupled to the one or more test access port controllers, to enable the one or more test access port controllers to activate debug functionality on the second scan chain but not the first scan chain in response to a predefined condition being satisfied.


