Interconnect Logic ID Aliasing for Deadlock Avoidance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cyclic dependency deadlocks occur in data processing apparatuses using split transaction protocols due to the ability of slave logic units to reorder transactions with different transaction identifiers, leading to performance issues and potential system crashes, which existing deadlock avoidance schemes address by constraining master logic unit behavior or using complex prediction logic.

Innovation Solution

Implementing ID aliasing logic in the interconnect logic, where slave logic units can replace transaction identifiers with a predetermined identifier for specific transactions, ensuring these transactions are processed in order and preventing reordering between them, thus avoiding deadlocks without constraining master logic unit behavior.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If slave logic units reorder transactions with different transaction identifiers to improve performance, then transaction processing efficiency is improved, but cyclic dependency deadlocks occur leading to system crashes

Engineering Contradiction:
Improvetransaction processing efficiencyVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces interconnect logic as an intermediary component between master logic units and slave logic units. This intermediary monitors transaction identifiers and controls the reordering process, allowing slave logic units to reorder transactions only when it is safe to do so, thereby preventing deadlocks while maintaining performance improvements

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The interconnect logic implements feedback mechanisms by tracking transaction identifiers and their processing states. It provides feedback control over the reordering operation, enabling slave logic units to dynamically adjust their reordering behavior based on system state, thus preventing cyclic dependency deadlocks

Inventive Principle:
Principle #23Feedback

2Reliability

If complex prediction logic is used to avoid deadlocks, then system reliability is improved, but device complexity increases

Engineering Contradiction:
Improvedeadlock avoidanceVSAvoidprediction logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the deadlock avoidance functionality from complex prediction logic and implements it through simpler interconnect logic that monitors transaction identifiers. This separation allows slave logic units to maintain reordering capability while the interconnect logic handles the complexity of deadlock prevention through straightforward identifier tracking

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the approach from complex behavioral prediction to simple parameter monitoring. By tracking transaction identifiers as key parameters, the interconnect logic can determine safety of reordering using straightforward parameter comparison rather than complex prediction algorithms, reducing device complexity

Inventive Principle:
Principle #35Parameter changes

3Reliability

If master logic unit behavior is constrained to avoid deadlocks, then system reliability is improved, but ease of operation decreases

Engineering Contradiction:
Improvedeadlock preventionVSAvoidmaster logic unit flexibility
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The interconnect logic serves as a mediator that shields master logic units from deadlock avoidance constraints. Master logic units can operate freely issuing transactions with various identifiers, while the interconnect logic independently manages reordering safety, thus maintaining master logic unit flexibility while ensuring system reliability

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7558895B2Interconnect logic for a data processing apparatus
Publication Date: 2009.07.07 ARM LTD
  • US7558895B2 patent drawing
  • US7558895B2 patent drawing
  • US7558895B2 patent drawing

AI summary

An interconnect logic and method are provided for controlling transaction reordering by slave logic units coupled to the interconnect logic. The interconnect logic couples master logic units and slave logic units to enable transactions to be performed, each transaction having a transaction identifier associated therewith. ID aliasing logic is associated with at least a subset of slave logic units, with each slave logic unit in that at least a subset being able to issue response transfers for different transactions out of order with respect to the order of receipt by that slave logic unit of the address transfers of those transactions. For at least a subset of the transactions, if the slave logic unit involved in that transaction is associated with the ID aliasing logic, the ID aliasing logic is operable to replace the transaction identifier for that transaction with a predetermined identifier and then to forward the address transfer of the transaction along with that predetermined identifier to the slave logic unit. For any transactions that have their transaction identifier replaced with the predetermined identifier, the slave logic unit will not then perform any reordering since the same identifier, namely the predetermined identifier, is associated with each of those transactions. For any response transfer issue by the slave logic unit with the predetermined identifier, the ID aliasing logic replaces that predetermined identifier with the original transaction identifier removed previously so as to enable the routing of that data transfer via the interconnect logic to the appropriate master logic unit. This provides a very simple and effective mechanism for reducing the occurrence of a deadlock within the interconnect logic.