Broadcast Control Unit for Programmable Processing Array Architectures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current programmable processing array architectures face challenges in reducing code size while maintaining performance, particularly in implementing broadcasting operations efficiently within Data Stationary Encoding (DSE) processor architectures, which limits compiler freedom and increases code size overhead.

Innovation Solution

The proposed solution involves enhancing instruction formats and processor pipeline components to associate operation results with broadcast destinations, allowing for writing operation results to multiple destination registers in a single clock cycle, utilizing common data stationary instruction encoding and broadcasting operations to reduce the need for costly copy operations and minimize code size overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If broadcasting operations are implemented in conventional programmable processing array architectures, then code size overhead increases and compiler freedom is limited, but the need for costly copy operations is not eliminated

Engineering Contradiction:
Improveease of implementationVSAvoidcode size
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The patent merges the broadcasting operation with the existing instruction execution pipeline by integrating a broadcast control unit that operates in conjunction with the instruction decoder and execution units. This merging allows broadcast operations to be performed alongside regular operations without requiring separate instruction streams or additional hardware pathways, thereby implementing broadcasting without increasing code size overhead or limiting compiler freedom

Inventive Principle:
Principle #5Merging (Combining)

2Ease of operation

If copy operations are used to distribute operation results to multiple destinations, then code size increases due to additional instructions, but implementation simplicity is maintained

Engineering Contradiction:
Improveimplementation simplicityVSAvoidcode size
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent introduces a broadcast control unit as an intermediary component that sits between the instruction decoder and the execution units/register files. This intermediary receives broadcast operation identifiers from the decoded instruction, determines the appropriate destinations for the operation result, and automatically distributes the result to multiple destinations in a single cycle. This eliminates the need for multiple copy instructions while maintaining implementation simplicity through a dedicated control mechanism

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If broadcasting control circuitry is integrated into the processor pipeline, then performance improves by eliminating copy operations, but device complexity increases

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

Solution Approach 1:

The broadcast control unit is designed with multi-functionality to perform multiple roles within the processor pipeline. It can identify broadcast operations among regular operations, determine destination registers based on broadcast operation identifiers, generate appropriate control signals for simultaneous write operations, and handle both scalar and vector broadcast scenarios. This universality allows the single broadcast control unit to manage diverse broadcasting scenarios without requiring separate specialized circuits for each case, thereby limiting the increase in device complexity

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

4Quantity of substance

If multiple destination registers are written in a single clock cycle, then code size is reduced by eliminating copy operations, but the complexity of write-back circuitry increases

Engineering Contradiction:
Improvecode sizeVSAvoidcircuitry complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by having the broadcast control unit determine all destination registers and prepare the appropriate control signals during the instruction decode phase, before the execution phase begins. The broadcast control unit pre-calculates which registers will receive the broadcast result and prepares the simultaneous write-enable signals in advance. This preliminary determination and signal preparation eliminate the need for complex runtime arbitration or sequential write operations, allowing multiple registers to be written in a single clock cycle with controlled circuitry complexity

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240104049A1Operation result broadcasting solutions for programmable processing array architectures
Publication Date: 2024.03.28 INTEL CORP
  • US20240104049A1 patent drawing
  • US20240104049A1 patent drawing
  • US20240104049A1 patent drawing

AI summary

Techniques are disclosed for a programmable processor array architecture that enables synchronized broadcasting of operation results to register files with the operation results. The architecture advantageously enables writing of operation results of a given operation to multiple destination registers in a single clock cycle for processors with partitioned register files by using common data stationary instruction encoding. This combination brings improved performance by reducing the need for costly copy operations that would otherwise occupy issue slots and thus schedule space while at the same time minimizing code size overhead. The performance gains of broadcasting are especially emphasized in highly parallel and heavily partitioned register file architectures.