Debug Firmware Key Reactivation in Secure ICs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing debugging methods for programmable logic devices (PLDs) using engineering loaders are costly, alter the debugging flow, and can mask issues that persist in production environments, complicating the debugging process and prolonging it with multiple firmware loading steps.

Innovation Solution

Integrated circuits (ICs) are designed with non-volatile storage circuits to manage debug key identifiers, allowing debugging firmware to run without a production security feature, using a security controller to verify authenticity and reactivate keys for debugging, enabling the same production flow as in production environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If engineering loaders are used to load debugging firmware, then debugging functionality is enabled, but device complexity and engineering cost increase

Engineering Contradiction:
Improvedebugging functionalityVSAvoidengineering complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the debugging firmware from the engineering loader, allowing it to be stored directly in the device's internal memory (e.g., QSPI flash) and executed independently. This eliminates the need for the engineering loader to be present during debugging operations, thereby reducing device complexity and engineering cost while maintaining debugging functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a certificate authentication mechanism as an intermediary between the debugging firmware and the device's security controller. The debugging firmware is signed with a certificate that is verified by the security controller, enabling secure execution without requiring the engineering loader. This intermediary mechanism resolves the contradiction by providing a simpler path to debugging while maintaining security.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If engineering loaders are used to load debugging firmware, then debugging is enabled, but the debugging flow is altered and issues may be masked

Engineering Contradiction:
Improvedebugging capabilityVSAvoiddebugging flow integrity
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

By extracting the debugging firmware from the engineering loader and storing it directly in the device's internal memory, the patent preserves the original production flow intact. The debugging firmware executes independently without modifying or interfering with the production environment, thereby maintaining debugging flow integrity and preventing masking of issues.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the debugging functionality from the production functionality by storing the debugging firmware separately in internal memory while keeping the production firmware in its original location. This segmentation allows debugging operations to occur independently without altering the production flow, ensuring that issues are not masked and debugging integrity is maintained.

Inventive Principle:
Principle #1Segmentation

3Reliability

If multiple firmware loading steps are performed, then debugging firmware is loaded, but time is prolonged and productivity decreases

Engineering Contradiction:
Improvedebugging firmware loadingVSAvoiddebugging time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-loading the debugging firmware into the device's internal memory (e.g., QSPI flash) during the manufacturing process. This eliminates the need for multiple firmware loading steps during debugging, as the firmware is already present and can be executed immediately, thereby reducing debugging time and improving productivity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent merges the debugging firmware loading process with the manufacturing process by pre-loading the firmware into internal memory during device fabrication. This consolidation eliminates separate loading steps that would otherwise be required during debugging, reducing overall time and improving efficiency without compromising the reliability of firmware loading.

Inventive Principle:
Principle #5Merging (Combining)

4Reliability

If production security features are enforced, then device security is maintained, but debugging firmware cannot execute

Engineering Contradiction:
ImprovesecurityVSAvoiddebugging compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a certificate authentication mechanism as an intermediary that bridges the gap between production security features and debugging firmware execution. The debugging firmware is signed with a certificate that is verified by the security controller, allowing it to execute in a security-enabled device without bypassing or disabling security features. This maintains both security and debugging compatibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies local quality by creating a specialized execution environment for the debugging firmware that is distinct from the production environment. The security controller is configured to recognize and authenticate the debugging firmware's certificate, allowing it to execute with different security parameters than production firmware. This enables debugging compatibility while maintaining overall device security through localized security policies.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12481510B2Circuits and methods for controlling debugging firmware in integrated circuit devices
Publication Date: 2025.11.25 ALTERA CORP
  • US12481510B2 patent drawing
  • US12481510B2 patent drawing
  • US12481510B2 patent drawing

AI summary

An integrated circuit device includes a storage circuit for storing a canceled value of a key identifier that is associated with a debug key used to sign debugging firmware. A security controller circuit is configurable to reactivate the key identifier to permit the debugging firmware to be loaded to the integrated circuit device to perform debugging functions by changing the canceled value of the key identifier stored in the first storage circuit to a reactivated value.