Reconfigurable Microprocessor Execution Path for Dynamic Instruction Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional microprocessors and classical architectures are inadequate for evolving application requirements due to fixed instruction sets and limitations in clock speeds, making it challenging to optimize execution speed and adapt to diverse application needs.

Innovation Solution

A microprocessor architecture with a trusted instruction set execution path and a reconfigurable execution path, allowing dynamic reconfiguration based on criteria such as power consumption, processing power, and application requirements, using field-programmable gate arrays and content addressable memory to handle instructions efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fixed instruction set is used in conventional microprocessors, then the architecture is simple and reliable, but it cannot adapt to evolving application requirements and achieves optimal execution speed

Engineering Contradiction:
Improveadaptability to application requirementsVSAvoidarchitecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamically reconfigurable execution path that can be activated or deactivated based on runtime conditions. The execution path includes reconfigurable logic blocks that can be programmed to handle different instruction types, allowing the processor to adapt its functionality dynamically while maintaining a relatively simple base architecture.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The processor architecture is segmented into a fixed instruction set execution path and a reconfigurable execution path. This segmentation allows the system to maintain the simplicity and reliability of the fixed path while adding adaptability through the modular reconfigurable path, resolving the contradiction between simplicity and adaptability.

Inventive Principle:
Principle #1Segmentation

2Productivity

If clock speed is increased to improve execution speed, then processing performance improves, but power consumption increases and physical limits are reached

Engineering Contradiction:
Improveexecution speedVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

Instead of relying solely on increasing clock speed, the patent introduces a dynamically reconfigurable execution path that can be activated based on computational needs. This allows the processor to optimize execution speed for specific tasks without continuously operating at maximum clock speed, thereby reducing overall power consumption while maintaining high productivity when needed.

Inventive Principle:
Principle #15Dynamics

3Productivity

If a reconfigurable execution path is added to handle extended instructions, then adaptability and execution speed improve, but device complexity and security risks increase

Engineering Contradiction:
Improveexecution speedVSAvoidarchitecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The processor is divided into distinct execution paths: a fixed instruction set path and a reconfigurable execution path. This segmentation isolates the complexity of the reconfigurable path, allowing it to be managed separately while the fixed path maintains its simplicity and reliability. The system can select which path to use based on the instruction type, managing complexity effectively.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary control mechanism manages the reconfigurable execution path, handling the complexity of configuration and security verification. This intermediary layer shields the core processing logic from the complexity of reconfiguration management, allowing execution speed improvements without proportionally increasing overall architectural complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If the reconfigurable execution path is activated to handle specific instructions, then processing efficiency improves, but security verification overhead increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsecurity verification time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Security verification for the reconfigurable execution path is performed in advance, before runtime activation. Configuration data is verified and authenticated prior to being loaded into the reconfigurable logic, so that when the execution path needs to be activated, the verification overhead is minimal. This preliminary action resolves the contradiction by shifting security checks to a less critical time window.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7975126B2Reconfiguration of execution path upon verification of extension security information and disabling upon configuration change in instruction extensible microprocessor
Publication Date: 2011.07.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7975126B2 patent drawing
  • US7975126B2 patent drawing
  • US7975126B2 patent drawing

AI summary

Described is microprocessor architecture that includes at least one reconfigurable execution path (e.g., implemented via FPGAs or CPLDs). When an instruction is fetched, a mechanism determines whether the reconfigurable execution path (and/or which path) will handle that instruction. A content addressable memory may be used to determine the execution path when fed the instruction's operational code, or an arbiter and multiplexer may resolve conflicts if multiple instruction decode blocks recognize the same instruction. The execution path may be dynamically reconfigured, activated or deactivated as needed, such as to extend an instruction set, to optimize instructions for a particular application program, to implement a peripheral device, to provide parallel computing, and/or based on power consumption and/or processing power needs. Security may be provided by having the reconfigurable execution path loaded from an extension file that is associated with metadata, including security information.