Browse Prior Art Database

Method for verification of atomic transaction flow

IP.com Disclosure Number: IPCOM000022120D
Publication Date: 2004-Feb-25
Document File: 4 page(s) / 79K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for verification of atomic transaction flow. Benefits include improved functionality and improved performance.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 44% of the total text.

Method for verification of atomic transaction flow

Disclosed is a method for verification of atomic transaction flow. Benefits include improved functionality and improved performance.

Background

         An example of an atomic operation is a semaphore transaction. Processors typically have instructions, such as sem_add (atomic addition), sem_xchg (atomic exchange), and sem_cmp (atomic compare and exchange). Fundamentally, locked cycles are read-modify-write operations, which appear as one single operation from a system point of view. Operating systems use these operations to manage resource sharing between threads or between processes. Hardware support for atomic operations is provided in the chipset. Its arbiter administers fairness between the interfaces. It stalls incoming transactions, ensures all outstanding transactions are complete before committing to the atomic operation, and unlocks the interfaces to enable traffic flow. The logic is quite complicated. Testing includes an exhaustive set of test cases. Even with a large number of test cases, exercising all significant cases where an atomic operation can occur concurrently with intervening interrupts and conflicting traffic is difficult.

         Hublink (HL) is a standard high-speed parallel chip-to-chip mezzanine-level interface.

         Knobs are external software controls that can alter or extend the focus-range of the procedure.

         On the front side bus (FSB) interface an atomic operation is either a read-write operation or a read-read-write-write operation (split-lock) where the first transaction is always a read.

         On the HL interface, an atomic operation is performed as follows:

1.         PHOLD_ON
2.         PHOLD_ACK

3.         PHOLD_OFF

         When a lock is established, all transactions before the lock is released are considered atomic. Transactions from any other interface are not allowed to complete.

General description

         The disclosed method validates semaphore operations in general, including 32-bit architecture locks in hardware in the pre-silicon and post-silicon environments. The method can be applied to chipsets that support locks from HL, FSB, and other interfaces. The disclosed method can be extended to chipsets that can support more than the read-write or read-read-write-write sequence, such as read-write-read-write operation for locks. The algorithm can be tailored to suit any limitation a platform may impose.

         The disclosed method encompasses a multitude of test cases for locks in one single algorithm/procedure due to its focused-random nature. If the variables in the algorithm are controlled by knobs, the test is more effective in finding a wide range of corner cases without requiring separate test cases for each functional/corner case.

Advantages

         Some implementations of the disclosed structure and method provide one or more of the following advantages:

•         Improved functionality due to enabling the testing of atomic transactions

•         Improved performance due to enabling the use of a single test case rather than many separ...