Processing Circuitry With Compiler-Guided ISA Pruning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing circuit implementations on processors and programmable logic devices suffer from inefficiencies due to the inclusion of unnecessary and redundant instructions and logic blocks, leading to excessive resource consumption and power usage without contributing to the desired functionality.

Innovation Solution

A compiler is used to analyze software and determine which instructions of predefined ISA units and logic blocks are redundant, allowing for their removal or replacement with custom instructions, optimizing the circuit design for processors and programmable logic devices to reduce resource consumption and improve efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If predefined ISA units with bundled instructions are implemented in the processor, then broad functionality is provided, but unnecessary area consumption occurs due to unused instructions

Engineering Contradiction:
ImprovefunctionalityVSAvoidprocessor area
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The processor divides the Instruction Set Architecture into modular units, where each ISA unit contains a subset of instructions tailored to specific functions. The compiler selects and implements only the necessary ISA units based on software analysis, breaking down the monolithic approach of including all bundled instructions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system extracts and removes extraneous instructions from predefined ISA units that are not needed for the specific software application. The compiler analyzes the software to identify which instructions are actually used and eliminates the rest, reducing processor area while maintaining necessary functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If extraneous instructions are included in the processor design, then complete ISA coverage is achieved, but resource utilization efficiency decreases

Engineering Contradiction:
ImproveISA coverageVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The compiler performs preliminary analysis of the software before processor implementation to determine which ISA units and instructions are actually needed. This upfront analysis allows the system to configure the processor with only the necessary instructions, avoiding the waste of implementing complete ISA coverage when it is not required.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If compiler uses predefined library of logic blocks, then implementation is simplified, but unused functions are implemented causing inefficient resource use

Engineering Contradiction:
Improveimplementation simplicityVSAvoidresource usage
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The system changes the configuration parameters of logic blocks based on software analysis. The compiler adjusts which functions within predefined logic blocks are activated, transforming fixed configurations into adaptable ones that match the actual software requirements, thereby reducing unused resource consumption.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12632627B2Circuit implementation on processing circuitry
Publication Date: 2026.05.19 ALTERA CORP
  • US12632627B2 patent drawing
  • US12632627B2 patent drawing
  • US12632627B2 patent drawing

AI summary

Systems or methods of the present disclosure may provide efficient circuit implementation on processing circuitry. The processing circuitry may include a processor, a programmable hardware, or both. The systems and methods may include determining and removing unused and/or redundant portions of predefined software and hardware description instructions before implementing associated circuitry. The implemented circuitry may perform various functions including parsing, pipelining, deparsing, temporary storage and combining, math operations, or a combination thereof, among other things.