Block-Based Processor Broadcast Channels for Out-of-Order Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor architectures, particularly RISC designs, face challenges in sustaining performance improvements due to limitations in Instruction Set Architectures (ISAs) and inefficiencies in resource utilization, such as register renaming and dataflow analysis, which hinder energy efficiency and complexity reduction.

Innovation Solution

The implementation of block-based processor architectures with explicit data graph execution (EDGE) ISAs, which allow for broadcasting operand values across an instruction window, reducing the need for complex architectural features like register renaming and enabling out-of-order execution with near in-order power efficiency through hybrid dataflow execution models.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If RISC architectures with out-of-order superscalar implementations are used, then processing performance is improved, but device complexity and energy consumption increase

Engineering Contradiction:
Improveprocessing performanceVSAvoidarchitectural complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The processor architecture segments the instruction window into multiple lanes, with each lane maintaining independent operand buffers and listening units. This segmentation allows parallel instruction execution while simplifying the control logic for each individual lane, resolving the contradiction between performance and complexity by distributing functionality across multiple simpler units rather than one complex unit

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The broadcast channel mechanism provides universal operand distribution capability that serves multiple instructions simultaneously. A single broadcast operation can supply operands to multiple listening units across different lanes, eliminating the need for complex point-to-point routing logic and reducing overall architectural complexity while maintaining high throughput

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

2Productivity

If RISC architectures with out-of-order superscalar implementations are used, then processing performance is improved, but energy consumption increases

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

Solution Approach 1:

Operand values are pre-loaded into listener buffers when broadcast, allowing instructions to execute immediately without waiting for complex data dependency resolution. This preliminary action reduces the need for extensive dataflow analysis and register renaming operations, thereby reducing energy consumption while maintaining out-of-order execution performance

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The architecture uses copying of operand values from the broadcast channel into listener buffers rather than complex pointer-based register renaming. This copying mechanism simplifies the data dependency management logic and reduces the energy required for tracking and managing renamed registers across multiple instruction streams

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If complex architectural features like register renaming are implemented, then out-of-order execution capability is improved, but device complexity increases

Engineering Contradiction:
Improveout-of-order execution capabilityVSAvoidarchitectural complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the essential functionality of register renaming by implementing independent operand buffers in each instruction lane that directly receive broadcast operands. This extraction eliminates the need for complex global register renaming logic while preserving the out-of-order execution capability, as each lane independently manages its own operand state without interference from other lanes

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10452399B2Broadcast channel architectures for block-based processors
Publication Date: 2019.10.22 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10452399B2 patent drawing
  • US10452399B2 patent drawing
  • US10452399B2 patent drawing

AI summary

Apparatus and methods are disclosed for example computer processors that are based on a hybrid dataflow execution model. In particular embodiments, a processor core in a block-based processor comprises: one or more functional units configured to perform functions using one or more operands; an instruction window comprising buffers configured to store individual instructions for execution by the processor core, the instruction window including one or more operand buffers for an individual instruction configured to store operand values; a control unit configured to execute the instructions in the instruction window and control operation of the one or more functional units; and a broadcast value store comprising a plurality of buffers dedicated to storing broadcast values, each buffer of the broadcast value store being associated with a respective broadcast channel from among a plurality of available broadcast channels.