Transaction Flow Control Logic for IC Communications Fabric

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In integrated circuits, existing quality-of-service (QoS) mechanisms struggle to effectively prioritize transactions, leading to potential blocking of higher priority transactions by lower priority ones, which can impact performance and timeliness of real-time transactions.

Innovation Solution

The implementation of a control logic system within the integrated circuit that uses separate queues for different virtual channels and arbitration units to inhibit or demote lower priority transactions, ensuring that higher priority transactions are processed first, thereby preventing blocking and maintaining performance guarantees for real-time transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing QoS mechanisms are used to prioritize transactions, then some transactions can be given higher priority, but lower priority transactions may block higher priority transactions, impacting real-time performance

Engineering Contradiction:
ImproveQoS guaranteeVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the transaction queue into multiple virtual channels (e.g., real-time channel, non-real-time channel) with different priority levels. Each virtual channel has its own queue, allowing the system to separate high-priority real-time transactions from lower-priority transactions, preventing blocking while maintaining QoS guarantees.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a control logic unit as an intermediary between the arbitration unit and the queues. This control logic monitors the state of queues and dynamically adjusts which transactions are presented to the arbitration unit, preventing lower-priority transactions from blocking higher-priority ones while maintaining overall system throughput.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If all transactions are presented to the arbitration unit, then maximum resource utilization is achieved, but higher priority transactions may be blocked by lower priority ones

Engineering Contradiction:
Improveresource utilizationVSAvoidtransaction delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The control logic performs preliminary filtering of transactions before they reach the arbitration unit. By预先 determining which transactions should be prioritized based on their virtual channel and priority level, the system prevents blocking before it occurs, ensuring real-time transactions are processed without delay while still allowing other transactions to utilize resources when appropriate.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts transaction presentation to the arbitration unit based on real-time queue states. The control logic can change which transactions are eligible for arbitration in each cycle, allowing flexible resource allocation that prioritizes time-sensitive transactions when needed while maximizing overall utilization when no high-priority transactions are pending.

Inventive Principle:
Principle #15Dynamics

3Reliability

If separate queues for virtual channels are implemented, then transaction prioritization is improved, but device complexity increases

Engineering Contradiction:
Improvetransaction prioritizationVSAvoidinterface structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The control logic unit serves multiple functions: it manages multiple virtual channels, monitors queue states, determines transaction priority, and controls arbitration input. This multi-functional approach consolidates what could be multiple separate control units into a single component, reducing overall structural complexity while maintaining reliable transaction prioritization across different virtual channels.

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

Data Source

PatentUS9270610B2Apparatus and method for controlling transaction flow in integrated circuits
Publication Date: 2016.02.23 APPLE INC
  • US9270610B2 patent drawing
  • US9270610B2 patent drawing
  • US9270610B2 patent drawing

AI summary

Various embodiments of a method and apparatus for controlling transaction flow in a communications fabric is disclosed. In one embodiment, an IC includes a communications fabric connecting multiple agents to one another. Each agent may include an interface coupling itself to at least one other agent. Each interface may include multiple queues for storing information corresponding to pending transactions. Also included in each interface is an arbitration unit and control logic. The control logic may determine which transactions are presented to the arbitration unit for arbitration. In one embodiment, the control logic may inhibit certain transactions from being presented to the arbitration unit so that other higher priority transactions may advance. In another embodiment, the control logic may reduce the priority level of some transactions for arbitration purposes to prevent the blocking of other higher priority transactions.