Bridge Protocol Deadlock Detection Early Response

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data processing apparatuses with different protocol domains operating under write progress and snoop progress protocols can experience deadlocks when a write target address matches a snoop target address, leading to stalled requests and inefficient resource utilization.

Innovation Solution

A bridge is implemented to detect deadlock conditions and issue early responses to pending requests, allowing one protocol domain to service the other request, while also merging write requests to manage buffer space and prevent repeated deadlocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a bridge connects two protocol domains operating under different coherency protocols, then data coherency can be maintained across domains, but deadlock conditions can occur when write target addresses match snoop target addresses

Engineering Contradiction:
Improvedata coherencyVSAvoidrequest stalling
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The bridge performs preliminary detection of deadlock conditions by comparing write target addresses with snoop target addresses before requests are fully processed. When a potential deadlock is detected, the bridge proactively issues an early response to one of the conflicting requests, preventing the deadlock from fully developing and allowing the other request to proceed without indefinite stalling.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The bridge acts as an intermediary between the first protocol domain operating under write progress protocol and the second protocol domain operating under snoop progress protocol. It mediates the conflicting protocols by detecting deadlocks and issuing early responses, thereby reconciling the incompatible progress protocols and enabling requests to complete across domain boundaries.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If the first protocol domain operates under write progress protocol and the second under snoop progress protocol, then each domain can maintain its coherency rules, but requests may be blocked indefinitely when addresses match

Engineering Contradiction:
Improveprotocol compatibilityVSAvoidrequest throughput
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The bridge performs preliminary detection of address conflicts between write and snoop requests before they result in complete blocking. By detecting when a write target address matches a snoop target address, the bridge can issue an early response in advance, preventing the indefinite blocking that would otherwise occur due to the conflicting progress protocols.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the state parameter of request handling by introducing early responses that alter the normal progression of write and snoop requests. This parameter change allows requests to bypass the deadlock condition inherent in conflicting progress protocols, thereby maintaining both protocol compatibility and request throughput.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the bridge issues early responses to resolve deadlocks, then request throughput is improved, but buffer management complexity increases

Engineering Contradiction:
Improverequest throughputVSAvoidbuffer management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The bridge performs preliminary detection of deadlock conditions by comparing addresses before requests are fully processed. This early detection enables the bridge to issue timely early responses that resolve deadlocks before they cause complete blocking, thereby improving throughput while managing buffer resources more efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The bridge implements a feedback mechanism where it continuously monitors the state of pending write and snoop requests, detects address conflicts, and responds by issuing early responses. This feedback loop allows the bridge to dynamically manage buffer resources and request flow, improving throughput while maintaining controlled complexity through systematic monitoring and response.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9372798B2Data processing apparatus having first and second protocol domains, and method for the data processing apparatus
Publication Date: 2016.06.21 ARM LTD
  • US9372798B2 patent drawing
  • US9372798B2 patent drawing
  • US9372798B2 patent drawing

AI summary

A data processing apparatus (2) comprises a first protocol domain A configured to operate under a write progress protocol and a second protocol domain B configured to operate under a snoop progress protocol. A deadlock condition is detected if a write target address for a pending write request issued from the first domain A to the second domain B is the same as a snoop target address or a pending snoop request issued from the second domain B to the first domain A. When the deadlock condition is detected, a bridge (4) between the domains may issue an early response to a selected one of the deadlocked write and snoop requests without waiting for the selected request serviced. The early response indicates to the domain that issued the selected request that the selected request has been serviced, enabling the other request to be serviced by the issuing domain.