Target Port Multicast Transactions for Memory Bandwidth Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated circuit devices face inefficiencies in data transfer due to the lack of multicast transaction capabilities in their internal communication fabrics, particularly in standardized bus protocols like AXI, which limits the ability to efficiently load data into multiple accelerators simultaneously, leading to suboptimal utilization of computational arrays in neural networks.

Innovation Solution

Implementing a communication fabric that enables multicast transactions and staggered data distribution across memory banks, using a master port with multicast address ranges to generate multiple transactions for multiple targets and a target port that distributes data across memory banks, allowing data to be read once and written to multiple locations efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If standardized bus protocol is used for communication fabric, then implementation is simplified and interface circuits can be reused, but multicast transaction capability is lost and data cannot be efficiently distributed to multiple targets

Engineering Contradiction:
Improveimplementation simplicityVSAvoidmulticast transaction capability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The target port is segmented into multiple independent target interfaces (first target interface, second target interface, etc.), each capable of receiving transactions independently. This allows a single master port to efficiently distribute data to multiple targets through parallel interfaces while maintaining the simplicity of standardized bus protocols for each individual interface.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If separate write transactions are generated for each location to move the same data, then data can be written to multiple locations, but memory bandwidth is wasted and transfer efficiency is reduced

Engineering Contradiction:
Improvedata distribution capabilityVSAvoidmemory bandwidth usage
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

Multiple separate write transactions are merged into a single multicast transaction. The master port generates one transaction that is simultaneously received by multiple target interfaces, which then distribute the data to multiple memory locations in parallel. This combining approach reduces memory bandwidth consumption while achieving the same data distribution goal.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The transaction is copied and distributed to multiple target interfaces simultaneously. Instead of sending the same data through separate transaction sequences, the transaction itself is replicated across multiple targets, enabling efficient one-to-many data distribution without proportionally increasing bandwidth usage.

Inventive Principle:
Principle #26Copying

3Reliability

If data is loaded sequentially into multiple accelerators, then each accelerator receives complete data, but computational arrays are underutilized and processing time increases

Engineering Contradiction:
Improvedata completenessVSAvoidcomputational array utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Data is preliminarily distributed to multiple accelerators simultaneously through multicast transactions before computation begins. This preliminary parallel distribution ensures all accelerators have the required data ready, enabling immediate utilization of computational arrays without sequential waiting, thus improving overall productivity while maintaining data completeness.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11138106B1Target port with distributed transactions
Publication Date: 2021.10.05 AMAZON TECH INC
  • US11138106B1 patent drawing
  • US11138106B1 patent drawing
  • US11138106B1 patent drawing

AI summary

Provided are integrated circuit devices and methods for operating integrated circuit devices. In various examples, the integrated circuit device can include a target port operable to receive transactions from a master port. The target port can be configured with a multicast address range that is associated with a plurality of indices corresponding to memory banks of the device. When the target port receives a write transaction that has an address that is within the multicast address range, the target port can determine an index from the plurality of indices, and can use the index to determine a second address, which combines the index and the offset value with the address. The target port can then use the second address to write the data to the memory.