Reconfigurable Instruction Runtime Configuration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The compilation of high-level program code into machine-level code is time-consuming and inefficient, especially when dealing with limited instruction memory in processors, as it often requires frequent loading of instructions and can be computationally intensive, and changing program behavior without rewriting or recompiling is challenging due to fixed compiled instructions.

Innovation Solution

The implementation of a reconfigurable instruction that can perform multiple operations from a single instruction, allowing configuration changes at runtime through a configuration register, enabling flexible behavior without rewriting the code and maintaining consistent execution time, even when debugging operations are activated.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional compiled instructions are used, then program behavior is fixed and execution is efficient, but changing program behavior requires rewriting and recompiling the entire program

Engineering Contradiction:
Improveprogram behavior flexibilityVSAvoidrecompilation time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies dynamics by making the instruction behavior changeable at runtime through configuration registers. Instead of fixed compiled instructions, the same instruction can dynamically adjust its operation based on configuration values, allowing program behavior to adapt without recompilation. This resolves the contradiction by enabling flexibility (improving adaptability) while maintaining the original compiled code (avoiding recompilation time loss).

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes parameters by introducing configuration registers that modify instruction behavior through parameter adjustment rather than code rewriting. The reconfigurable instruction responds to different configuration register values to perform different operations, allowing program behavior changes without affecting the compiled instruction code itself. This resolves the contradiction by enabling behavior flexibility through parameter changes while keeping the compiled program unchanged (avoiding recompilation).

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If instruction memory size is increased, then fewer instruction loading operations are needed, but the processor complexity and cost increase

Engineering Contradiction:
Improveinstruction loading frequencyVSAvoidinstruction memory size
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies universality by creating a reconfigurable instruction that can perform multiple operations based on configuration settings. A single reconfigurable instruction replaces what would traditionally require multiple different instructions, reducing the overall instruction memory requirements. This resolves the contradiction by minimizing instruction loading frequency through multi-functionality while keeping the instruction memory size small.

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

3Manufacturing precision

If multiple instructions are used to perform complex operations, then the operations can be clearly defined, but the code length increases and instruction memory usage increases

Engineering Contradiction:
Improveoperation definition clarityVSAvoidcode length
Core Design Contradiction:
Manufacturing precisionVSLength of stationary object

Solution Approach 1:

The patent applies merging by combining multiple operation definitions into a single reconfigurable instruction. Instead of using separate instructions for different operations, one reconfigurable instruction can perform multiple operations by responding to different configuration register values. This resolves the contradiction by maintaining clear operation definitions through configuration parameters while minimizing code length by using a single instruction rather than multiple instructions.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10803007B1Reconfigurable instruction
Publication Date: 2020.10.13 AMAZON TECH INC
  • US10803007B1 patent drawing
  • US10803007B1 patent drawing
  • US10803007B1 patent drawing

AI summary

Provided are integrated circuit devices and methods for operating integrated circuit devices. In various examples, an integrated circuit device can include a memory for storing instructions a configuration register, and an instruction execution circuit. An instruction read from the memory can be a reconfigurable instruction. which includes a set of fields corresponding to a plurality of operations. Values in the fields can determine whether the operations are enabled or disabled. For example, a first value in a first field can enable a first operation. Whether the first operation is performed can further be determined by comparing a second value in a second field to a third value read from the configuration register. The value set in the configuration register thus can control whether the operation is performed.