Bridging Module for AXI Protocol Transaction ID Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The Advanced Extensible Interface (AXI) protocol requires transactions with the same ID to be completed in order, while allowing out-of-order transmission for different IDs, posing a challenge in optimizing data processing efficiency without violating protocol requirements.

Innovation Solution

A bridging module is introduced between the master and slave devices, which pre-allocates data storage spaces for return data in the receiving order of read requests with the same transaction ID, ensuring return data is sent in the correct order to satisfy the AXI protocol while improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the slave device sends return data in out-of-order transmission to optimize processing efficiency, then the processing efficiency is improved, but the AXI protocol requirement for same-ID transactions to be completed in order is violated

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidprotocol compliance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the transaction identification into two parts: master transaction ID (from the master device) and slave transaction ID (generated by the bridging module). This segmentation allows the slave device to process transactions with different slave IDs in parallel out-of-order while the bridging module maintains the ordering requirement for same master ID transactions by managing the mapping between master and slave transaction IDs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The bridging module acts as an intermediary between the master device and slave device. It receives read requests from the master device, generates corresponding slave transaction IDs, and forwards them to the slave device. When return data arrives, the bridging module uses the slave transaction ID to trace back to the original master transaction ID and ensures proper ordering before forwarding to the master device, thus mediating between the out-of-order processing capability of the slave device and the ordering requirement of the master device.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the slave device waits for return data in order to maintain protocol compliance, then the protocol requirement is satisfied, but the processing efficiency is reduced

Engineering Contradiction:
Improveprotocol complianceVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The bridging module performs preliminary actions by pre-allocating buffer spaces for return data based on slave transaction IDs before the actual data transmission occurs. This allows the slave device to send return data as soon as it is ready without waiting for previous transactions to complete, while the bridging module ensures proper ordering when forwarding to the master device by using the pre-established mapping relationships.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces dynamic transaction ID mapping where the bridging module dynamically generates slave transaction IDs and maintains flexible mapping relationships between master and slave IDs. This dynamic approach allows the slave device to process transactions in any order while the bridging module adaptively manages the ordering requirements, enabling both high processing efficiency and protocol compliance simultaneously.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11960427B2Bridging module, data transmission system, and data transmission method
Publication Date: 2024.04.16 VIA ALLIANCE SEMICON CO LTD
  • US11960427B2 patent drawing
  • US11960427B2 patent drawing
  • US11960427B2 patent drawing

AI summary

A bridging module, a data transmission system, and a data transmission method are provided. The bridging module obtains a first read request, and allocates a first data storage space for first return data corresponding to the first read request. The bridging module combines a first master transaction identifier and an address of the first data storage space as a first slave transaction identifier of the first read request, and sends the first read request to a slave device. The bridging module obtains a second read request, and allocates a second data storage space for second return data corresponding to the second read request. The bridging module combines a second master transaction identifier and an address of the second data storage space as a second slave transaction identifier of the second read request, and sends the second read request to the slave device.