Toggle Rate Reduction in High Level Programming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated circuit devices face inefficiencies in power dissipation, particularly during high-level programming, leading to increased power consumption and costs due to dynamic power dissipation, which is not effectively reduced by existing implementations.

Innovation Solution

Implementing toggle-rate reduced functionality through techniques such as If-then-else optimization, Merge node masking, and stallable register data retention, which selectively disable data inputs and registers to minimize toggling and reduce power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If high-level designs are implemented in the logic area of a programmable integrated circuit device, then the design functionality is achieved, but power dissipation is not effectively reduced and increases during normal operation

Engineering Contradiction:
Improvedesign functionalityVSAvoidpower dissipation
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements dynamic control of register enable/disable states based on execution context. Registers are selectively enabled only when their data is needed for current execution, and disabled otherwise. This dynamic state transition reduces toggle rates and power consumption while maintaining full design functionality when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs periodic evaluation of execution context (thread activity, branch outcomes, data validity) to determine register enablement states. By periodically assessing whether register data is currently needed and transitioning states accordingly, the system reduces unnecessary toggling and power dissipation while ensuring functionality is maintained when data is required.

Inventive Principle:
Principle #19Periodic action

2Adaptability or versatility

If multi-threaded languages are used for high-level designs, then programming flexibility is improved, but power consumption increases due to implementation inefficiencies

Engineering Contradiction:
Improveprogramming flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by stationary object

Solution Approach 1:

The patent applies different enablement states to different registers based on their specific usage context. Each register is independently controlled according to whether its data is currently needed, rather than enabling all registers uniformly. This localized control reduces overall power consumption while maintaining the adaptability needed for multi-threaded programming.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the operational parameter of registers from a static enabled state to a dynamic state that transitions between enabled and disabled based on execution context. This parameter change allows the system to maintain programming flexibility when needed while reducing power consumption during periods when certain register data is not required.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If data inputs and registers are continuously enabled to maintain design functionality, then operational reliability is improved, but toggle rates increase and power dissipation worsens

Engineering Contradiction:
Improveoperational reliabilityVSAvoidpower dissipation
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements feedback mechanisms that monitor execution context (thread activity, branch outcomes, data validity signals) and use this information to control register enablement states. This feedback loop ensures registers are enabled only when their data is needed for current execution, maintaining operational reliability while reducing unnecessary toggling and power dissipation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent uses data validity signals and execution context information to predict when register data will be needed, enabling registers in advance only when necessary. This preliminary assessment prevents unnecessary enablement while ensuring reliability by having data ready when required by the execution pipeline.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11256836B2Toggle rate reduction in high level programming implementations
Publication Date: 2022.02.22 ALTERA CORP
  • US11256836B2 patent drawing
  • US11256836B2 patent drawing
  • US11256836B2 patent drawing

AI summary

Power dissipation in integrated circuits may be reduced by efficient implementation of high level programming on the integrated circuits. As the high level programming logic is implemented on the integrated circuits, data inputs are disabled based upon branches and/or data that is not used by the high level programming.