VLIW Instruction Packet Merging for Execution Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex conditional instructions in computing devices require additional processing cycles and increased power consumption due to longer instruction sequences and the need for initializing predicate registers, which complicates the execution of logical operations.

Innovation Solution

An instruction packet encapsulating multiple instructions with a common destination, allowing for simultaneous execution of compare instructions and logical operations within a single VLIW packet, eliminating the need for separate initialization of predicate registers and reducing execution cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If complex conditional instructions are executed using traditional sequential methods, then correctness is maintained, but execution time increases and power consumption increases

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

Solution Approach 1:

The patent combines multiple instructions targeting the same destination into a single VLIW packet. Specifically, it merges a compare instruction and a logical operation instruction (AND or OR) into one packet, allowing them to execute in parallel within the same clock cycle. This eliminates the need for sequential execution and reduces both execution time and power consumption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary grouping of instructions during code compilation or scheduling, organizing compare instructions and logical operations into pre-formed VLIW packets. This preliminary organization enables the processor to execute complex conditional logic without requiring runtime initialization of predicate registers, thereby reducing execution cycles and power consumption.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple instructions with common destination are executed sequentially, then simplicity of execution is maintained, but code size increases and execution time increases

Engineering Contradiction:
Improveexecution speedVSAvoidinstruction sequence complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple instructions that target the same destination into a single VLIW packet. By combining a compare instruction and a logical operation instruction into one packet, the patent reduces the total number of instruction cycles while maintaining execution correctness. The merging is achieved through compiler or scheduler organization rather than hardware modification.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The VLIW packet structure serves multiple functions simultaneously: it executes compare operations, performs logical operations (AND/OR), and manages predicate registers all within a single instruction packet. This multi-functionality allows complex conditional logic to be handled without requiring separate instruction sequences for each operation.

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

3Reliability

If predicate registers are initialized for each execution, then correctness of logical operations is maintained, but execution cycles increase

Engineering Contradiction:
ImprovecorrectnessVSAvoidexecution cycles
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of instructions into VLIW packets that include both compare and logical operation instructions. This preliminary structuring ensures that predicate registers are properly managed within the packet execution context, eliminating the need for separate initialization cycles before each logical operation. The correctness is maintained through the structured design of the VLIW packet format.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8843730B2Executing instruction packet with multiple instructions with same destination by performing logical operation on results of instructions and storing the result to the destination
Publication Date: 2014.09.23 QUALCOMM INC
  • US8843730B2 patent drawing
  • US8843730B2 patent drawing
  • US8843730B2 patent drawing

AI summary

An apparatus includes a processor and a memory coupled to the processor. The memory stores an instruction packet (e.g., a VLIW instruction packet) including a first predicate independent instruction and a second predicate independent instruction. Each of the predicate independent instructions has the same destination.