Tag Management Architecture for Silent Data Corruption Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

PCIe and other tag-based response-request messaging systems face issues with 'ghost completion' and silent data corruption due to the reuse of tags, where responses are incorrectly processed as belonging to newer requests, leading to errors and data corruption.

Innovation Solution

Implementing a system that prevents the reuse of tags associated with timed-out messages by using a tag management architecture that includes a transaction tag scoreboard, completion timeout detection, and tag retirement control, ensuring that tags are only reused when safe to avoid incorrect response processing, and dynamically managing the availability of tags to prevent depletion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tags are reused after a timeout period to improve tag availability, then tag pool utilization improves, but ghost completion errors occur when responses are incorrectly matched to new requests

Engineering Contradiction:
Improvetag pool utilizationVSAvoidresponse matching accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary validation by checking whether a response could potentially belong to a new request before allowing tag reuse. The validation logic proactively identifies and blocks potential ghost completion scenarios by verifying that no new request has been issued with the same tag since the timeout occurred, preventing the matching error before it can happen.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If tags are prevented from reuse to eliminate ghost completion errors, then response processing accuracy improves, but tag pool depletion occurs reducing system throughput

Engineering Contradiction:
Improveresponse processing accuracyVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts tag reuse behavior based on real-time system state. Rather than using a static prevent-or-allow approach, the validation logic continuously monitors whether tag reuse would be safe given current request patterns and timeout status, enabling flexible adaptation that maintains both reliability and throughput under varying operational conditions.

Inventive Principle:
Principle #15Dynamics

3Ease of manufacture

If timeout-based tag reuse is implemented to manage tag lifecycle, then tag management efficiency improves, but silent data corruption occurs due to incorrect response association

Engineering Contradiction:
Improvetag management efficiencyVSAvoidsilent data corruption
Core Design Contradiction:
Ease of manufactureVSObject-generated harmful factors

Solution Approach 1:

The system introduces feedback validation that checks the safety of tag reuse before allowing it to proceed. This feedback mechanism monitors the relationship between timeout events and subsequent request issuance, providing a safety check that prevents silent data corruption while maintaining the efficiency benefits of timeout-based tag lifecycle management.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8839268B2Method and system of preventing silent data corruption
Publication Date: 2014.09.16 SUN MICROSYSTEMS INC
  • US8839268B2 patent drawing
  • US8839268B2 patent drawing
  • US8839268B2 patent drawing

AI summary

A method and system of avoiding silent data corruption in a request-response messaging system where a requester relies on tags to match request messages with response messages. The silent data corruption occurring if the requester process a response message after a tag used with the response message was reused with another request message.