Block-Based Processor Architecture for Dense Read Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor architectures, such as superscalar out-of-order microarchitectures, face inefficiencies due to complex circuit resources and overhead, limiting performance improvements and energy efficiency, particularly as transistor scaling benefits slow down.

Innovation Solution

The implementation of block-based processor architectures with explicit data graph execution (EDGE) ISA, which decodes instructions with variable operands and executes instructions in atomic blocks, reducing the need for register renaming and misspeculation recovery, and utilizing a hybrid dataflow model for out-of-order execution with near in-order power efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If superscalar out-of-order microarchitectures are used to improve processor performance, then instruction-level parallelism is enhanced, but device complexity and energy consumption increase due to complex circuit resources and overhead

Engineering Contradiction:
Improveprocessor performanceVSAvoidcircuit complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the instruction execution into fixed-size instruction blocks (e.g., 4 instructions per block). This segmentation simplifies the control logic by processing instructions in discrete units rather than individual instructions, reducing the complexity of out-of-order execution while maintaining parallelism benefits across multiple blocks

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic instruction block issuance where blocks are issued to execution units based on readiness conditions and resource availability. The out-of-order execution dynamically reorders complete instruction blocks rather than individual instructions, reducing control complexity while preserving performance benefits

Inventive Principle:
Principle #15Dynamics

2Productivity

If superscalar out-of-order microarchitectures are used to improve processor performance, then instruction-level parallelism is enhanced, but energy consumption increases due to overhead

Engineering Contradiction:
Improveprocessor performanceVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

By segmenting execution into fixed-size instruction blocks, the patent reduces the overhead of out-of-order execution. The segmentation allows for simpler control logic that tracks block-level dependencies rather than individual instruction dependencies, reducing energy consumption while maintaining parallelism across blocks

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the fundamental parameter of execution granularity from individual instructions to fixed-size instruction blocks. This parameter change reduces the control overhead and energy consumption associated with tracking and managing out-of-order execution of individual instructions

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If traditional ISAs are used to support mainstream programming languages, then language compatibility is maintained, but hardware complexity increases due to register renaming and misspeculation recovery

Engineering Contradiction:
Improveprogramming language supportVSAvoidhardware complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments program execution into fixed-size instruction blocks that maintain sequential semantics at the block level. This segmentation allows mainstream programming languages to operate naturally at the block level while reducing hardware complexity within each block, as the fixed-size blocks simplify dependency tracking and eliminate the need for complex register renaming and misspeculation recovery mechanisms

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP3350708B1Dense read encoding for dataflow isa
Publication Date: 2022.03.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3350708B1 patent drawingFigure 1
  • EP3350708B1 patent drawingFigure 2
  • EP3350708B1 patent drawingFigure 3

AI summary

Apparatus and methods are disclosed for controlling execution of memory access instructions in a block-based processor architecture using an instruction decoder that decodes instructions having variable numbers of target operands. In one example of the disclosed technology, a block-based processor core includes an instruction decoder configured to decode target operands for an instruction in an instruction block, the instruction being encoded to allow for a variable number of target operands and a control unit configured to send data for at least one of the decoded target operands for an operation performed by the at least one of the cores. In some examples, the instruction indicates target instructions with a vector encoding. In other examples, a variable length format allows for the indication of one or more targets.