User-Configurable Error Handling in Programmable ICs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing error handling systems for programmable integrated circuits (ICs) lack user-configurability, making it difficult to adapt to varying error handling requirements across different applications, as they often rely on fixed hardware state-machines that may not provide suitable error management for diverse systems.

Innovation Solution

A method and system for user-configurable error handling in programmable ICs, where hardwired detection circuits generate status signals indicating operating parameters, and error status registers store error values. These values are used by an error handling circuit implemented by programmable resources to perform user-defined error handling processes, including power management actions, allowing for customizable error mitigation strategies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed hardware state-machines are used for error handling, then the error handling logic is simple and reliable, but the system lacks adaptability to different applications and error handling requirements

Engineering Contradiction:
Improveerror handling adaptabilityVSAvoiderror handling system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The error handling system transitions from fixed hardware state-machines to a dynamic, reconfigurable logic circuit implemented in programmable resources. The logic circuit can be programmed with different error handling processes tailored to specific applications, allowing the system to adapt its error handling behavior dynamically based on user-defined criteria while maintaining reliability through structured error detection and response mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of the error handling logic by allowing reconfiguration of the logic circuit through programming. Instead of fixed hardware behavior, the error handling parameters (such as which errors trigger which responses, reset conditions, and power management actions) can be modified to suit different applications, achieving versatility without proportionally increasing complexity.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If user-defined error handling criteria are implemented, then the error handling becomes tailored to specific applications, but the configuration and setup complexity increases

Engineering Contradiction:
Improveerror handling configurabilityVSAvoidconfiguration complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system performs preliminary action by providing a structured framework with pre-defined error detection capabilities and response mechanisms. The programmable logic circuit is designed to accept user-defined criteria in a standardized format, allowing users to configure error handling without dealing with low-level implementation details. This preliminary structuring reduces configuration complexity while maintaining ease of operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The programmable logic circuit acts as an intermediary between the hardwired detection circuits and the error handling execution. It translates user-defined high-level criteria into specific control signals that reset individual sub-systems or trigger power management actions. This intermediary layer simplifies the user interface for configuration while managing the underlying complexity of error handling implementation.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If individual sub-system resets are performed, then the system resilience improves by isolating errors, but the control logic becomes more complex

Engineering Contradiction:
Improvesystem reliabilityVSAvoidcontrol logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The error handling system is segmented into independent components: hardwired detection circuits for specific error types, programmable logic circuit for decision-making, and individual sub-system reset capabilities. This segmentation allows errors to be isolated and handled at the appropriate level without affecting the entire system. The modular structure manages control logic complexity by distributing functions across separate components rather than requiring a monolithic control system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies local quality by enabling selective resetting of individual sub-systems based on where errors are detected. Instead of a uniform system-wide reset, the control logic can target specific sub-systems with errors, applying the appropriate correction locally. This localized error handling improves reliability by maintaining functionality in error-free portions of the system while managing control complexity through targeted responses.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9495239B1User-configurable error handling
Publication Date: 2016.11.15 XILINX INC
  • US9495239B1 patent drawing
  • US9495239B1 patent drawing
  • US9495239B1 patent drawing

AI summary

A method for operating a programmable IC is disclosed. A set of circuits specified by a set of configuration data is operated in a set of programmable resources. In response to one of a set of status signals indicating an error, a value indicative of an error is stored in a respective one of a plurality of error status registers. The values stored in the plurality of error status registers are provided to an error handling circuit included in the set of circuits specified by the set of configuration data and operated in the programmable resources. At least one error handling process is performed by the error handling circuit as a function of values stored in the plurality of error status registers.