Programmable IC Process Offloading for Lower Power and Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated circuits (ICs) face challenges in efficiently offloading processes from processor systems to specialized circuitry within the IC, leading to suboptimal power consumption, completion time, and latency due to limitations in dynamic reconfiguration and memory access.

Innovation Solution

The IC is configured to determine whether to offload processes to a process-specific circuit within the programmable fabric based on power consumption, completion time, and latency, with dynamic reconfiguration and memory access optimization, allowing for intelligent process selection and implementation in hardware rather than software.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If processes are executed on the processor system using program code, then the processor system can handle diverse tasks flexibly, but power consumption, completion time, and latency increase

Engineering Contradiction:
Improvetask handling flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the processing system into two distinct parts: a processor system for executing program code and a process-specific circuit implemented in programmable fabric for hardware acceleration. This segmentation allows tasks to be divided between software execution and hardware implementation, reducing power consumption for computationally intensive processes while maintaining processor flexibility for other tasks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic reconfiguration capability that allows the system to adaptively determine at runtime whether to execute a process on the processor system or offload it to the process-specific circuit. This dynamic decision-making enables the system to optimize power consumption based on the specific task requirements and current system state.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If processes are executed on the processor system using program code, then the processor system can handle diverse tasks flexibly, but completion time and latency increase

Engineering Contradiction:
Improvetask handling flexibilityVSAvoidcompletion time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

By segmenting processing tasks between the processor system and process-specific circuits, the patent enables time-critical processes to be executed in hardware with lower latency, while other tasks continue to use the processor system for flexible handling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent substitutes hardware circuitry for software execution of specific processes. This replacement of the 'mechanical' software execution model with dedicated hardware circuits significantly reduces completion time and latency for offloaded processes while the processor system retains its flexibility for other tasks.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If processes are offloaded to process-specific circuit in programmable fabric, then power consumption, completion time, and latency are reduced, but device complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses a programmable fabric that can be configured to implement multiple different process-specific circuits for different processes. This universal hardware platform reduces the need for separate dedicated circuits for each process, thereby managing device complexity while maintaining the ability to accelerate multiple different tasks.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The dynamic reconfiguration capability allows the programmable fabric to adaptively implement the appropriate process-specific circuit based on runtime conditions. This dynamic approach enables the system to optimize processing efficiency for current tasks while managing complexity by only activating necessary circuitry when needed.

Inventive Principle:
Principle #15Dynamics

4Productivity

If dynamic reconfiguration is implemented to enable process offloading, then processing efficiency is improved, but reconfiguration time and resource allocation complexity increase

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidreconfiguration management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where the processor system communicates with the programmable fabric to determine whether to offload processes based on runtime conditions. This feedback loop enables intelligent decision-making about process offloading, optimizing processing efficiency while managing reconfiguration complexity through adaptive control.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary determination of whether process offloading is beneficial before actually executing the offloading and reconfiguration. This preliminary action allows the system to evaluate conditions and make informed decisions, reducing unnecessary reconfiguration operations and managing complexity by only performing reconfiguration when it will improve processing efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2664067B1Extending a processor system within an integrated circuit
Publication Date: 2015.08.12 XILINX INC
  • EP2664067B1 patent drawingFigure 1
  • EP2664067B1 patent drawingFigure 2
  • EP2664067B1 patent drawingFigure 3~4

AI summary

An embodiment of an integrated circuit (200, 300, 400) is described. The integrated circuit includes a processor system (202, 302, 402) configured to execute program code (315, 415); and a process-specific circuit (282, 320, 440, 445) implemented within a programmable circuitry (204, 304, 404) of the integrated circuit, wherein the process-specific circuit is coupled to the processor system and is configured to perform a process that is offloaded by the processor system, where the processor system is configured to offload the process to the process-specific circuit in lieu of executing program code to perform the process.