Processor Program Counter Increment via Predecode Bits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processor technologies face challenges in efficiently merging sequential execution processes of RISC processors with parallel execution processes of VLIW control units, leading to worsened processing efficiency and compatibility issues with software resources.

Innovation Solution

A processor design that includes an instruction fetch portion, an instruction predecoder, and a program counter management portion to facilitate the simultaneous fetching and predecoding of instructions, allowing for flexible increment values of the program counter based on predecoded fields, enabling efficient merging of RISC and VLIW processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If subroutine instruction codes are used to designate program numbers for VLIW control unit execution, then parallel execution can be achieved, but all subroutine programs must be prepared in advance and RISC processor processes and VLIW control unit processes are performed in a mutually exclusive manner

Engineering Contradiction:
Improveparallel execution capabilityVSAvoidprocess merging flexibility
Core Design Contradiction:
Extent of automationVSAdaptability or versatility

Solution Approach 1:

The patent pre-decodes specific fields in instructions during the instruction fetch stage, before full decoding occurs. This preliminary action enables the program counter management portion to determine the appropriate increment value in advance, allowing seamless transitions between RISC and VLIW execution modes without requiring mutual exclusion or pre-prepared subroutine programs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent divides the instruction processing into distinct segments: the instruction fetch portion fetches multiple fixed-length instructions, the predecoder segment predecodes specific fields, and the program counter management portion uses this information to control PC increment. This segmentation allows RISC and VLIW processes to be merged at the instruction level rather than requiring complete process mutual exclusion.

Inventive Principle:
Principle #1Segmentation

2Productivity

If RISC processor instructions are used to start parallel execution of the VLIW control unit, then subroutine programs can be executed in parallel, but the end of execution of a given subroutine program must be awaited before the next RISC processor instruction is executed

Engineering Contradiction:
Improveparallel processing throughputVSAvoidwaiting time for subroutine completion
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By pre-decoding specific fields in the fetched instructions, the system determines VLIW execution parameters before the RISC instruction completes execution. This allows the program counter to be updated in advance for the next instruction, eliminating the need to wait for subroutine completion and enabling overlapping of RISC and VLIW execution streams.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous useful action by allowing the program counter management portion to prepare the next program counter value during the current instruction's execution. This continuity eliminates idle waiting periods and maintains steady throughput by ensuring that instruction fetching and program counter updates can proceed without interruption.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If a new RISC instruction set were defined to perfectly merge with VLIW instructions, then processing efficiency would improve, but compatibility with existing software resources and development environment would be lost

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsoftware compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements a universal instruction handling mechanism where the same instruction fetch portion can fetch both RISC and VLIW instructions, and the predecoder can handle specific fields in both instruction types. The program counter management portion universally applies the predecoded information regardless of instruction type, enabling efficient merged execution while maintaining compatibility with existing RISC software resources.

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

Solution Approach 2:

The patent applies local quality by predecoding only specific fields in instructions rather than performing complete decoding. This selective predecoding of particular fields enables the system to efficiently determine VLIW execution parameters and program counter increment values without altering the overall instruction format, thus maintaining software compatibility while achieving improved processing efficiency.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11200059B2Processor with a program counter increment based on decoding of predecode bits
Publication Date: 2021.12.14 SONY GROUP CORP
  • US11200059B2 patent drawing
  • US11200059B2 patent drawing
  • US11200059B2 patent drawing

AI summary

A processor includes: an instruction fetch portion configured to fetch simultaneously a plurality of fixed-length instructions in accordance with a program counter; an instruction predecoder configured to predecode specific fields in a part of the plurality of fixed-length instructions; and a program counter management portion configured to control an increment of the program counter in accordance with a result of the predecoding.