Split Transaction Coherency Protocol Null Data Packet Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In symmetric multiprocessor systems, the failure to deliver data within a specified time period in a split transaction coherency protocol leads to machine errors and system crashes, as existing protocols do not effectively manage data unavailability during the data tenure.
Innovation Solution
Implementing a split transaction coherency protocol that uses a null data packet to indicate data unavailability, allowing for transaction completion without error reporting, by including a data status field in data packets to communicate data availability or unavailability during the data tenure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is not available within the specified data tenure, then machine errors and system crashes occur in existing protocols, but the patent introduces a null data packet mechanism to indicate data unavailability, allowing transaction completion without error
Solution Approach 1:
The patent introduces a null data packet as an intermediary mechanism between the data source and data sink. When data is unavailable during the data tenure, the data source sends a null data packet containing a null indicator instead of causing a machine error. This intermediary allows the system to gracefully handle data unavailability while maintaining transaction completion, thus improving reliability without fundamentally changing the protocol structure
Solution Approach 2:
The patent modifies the data packet structure by adding a data status field that can indicate either normal data availability or null data unavailability. This parameter change allows the protocol to distinguish between different data states and handle them appropriately, enabling transaction completion even when data is unavailable, thereby improving system reliability
2Reliability
If the protocol requires data to be delivered within a strict time period, then data availability is ensured, but machine errors occur when data cannot be delivered on time, whereas the patent allows modified data tenures to prevent errors
Solution Approach 1:
The patent introduces dynamic data tenure handling by allowing the data tenure to be extended or modified when data is not immediately available. Instead of enforcing a strict fixed deadline that causes machine errors, the system dynamically adjusts the data tenure based on actual data availability, allowing transactions to complete successfully even with delayed data delivery
3Reliability
If existing protocols report machine errors when data is unavailable, then data integrity is maintained, but system crashes occur requiring reboot, whereas the patent completes transactions without error reporting
Solution Approach 1:
The patent converts the harmful condition of data unavailability (which traditionally causes machine errors and system crashes) into a beneficial situation by introducing the null data packet mechanism. The null indicator in the data packet transforms an error condition into a valid transaction completion state, allowing the system to continue operating without crashes while still conveying the data availability status to the appropriate components
Data Source
AI summary
A technique for operating a data processing system that implements a split transaction coherency protocol that has an address tenure and a data tenure includes receiving, at a data source, a command (that includes an address tenure for requested data) that is issued from a data sink. The data source issues a response that indicates data associated with the address tenure is available to be transferred to the data sink during a data tenure. In response to determining that the data is available subsequent to issuing the response, the data source issues a first data packet to the data sink that includes the data during the data tenure. In response to determining that the data is not available subsequent to issuing the response, the data source issues a second data packet to the data sink that includes a data header that indicates the data is unavailable.


