Test 53-31. duplicatetlp – Teledyne LeCroy Protocol PCI Express Script Automation Test Tool User Manual

Page 31

Advertising
background image

Teledyne LeCroy

PCI Express Script Automation Test Tool User Manual

27

3.1.1.11 Test 53-31. DuplicateTLP


ASSERTIONS COVERED: DLL.5.3#3.1
The intent of this test is to verify that the duplicate TLPs are handled properly by the DUT. (Duplicate TLPs have
the same sequence number associated at the link layer as in the last 2048 TLPs received.)

Trainer Stimulus: link_53-31_DuplicateTLP.peg

Recording Options: link_layer_common.rec

Verification Scripts: link_53-31_DuplicateTLP.pevs

Test Algorithm:

1. Write 0x0000000F to Device Control Register, to enable Error Reporting for all error types.
2. Write 0xFFFFFFFF to Advanced Uncorrectable Error Status Register, to clear all prior error bits.
3. Write 0xFFFFFFFF to Advanced Correctable Error Status Register, to clear all prior error bits.
4. Main test stage. Do the following:

a. Turn off the automatic sequence numbering and Replay Timer.
b. Turn off Flow Control credits monitoring (so both TLPs can be sent no matter how many credits

are advertised).

c. Send configuration read request TLP, setting the PSN manually.
d. Repeat the same read request TLP with the same PSN.
e. Wait enough time for the completion to be sent and acknowledged.
f.

Turn Flow Control credits monitoring back on.

g. Proceed with the rest of the test, setting PSNs and Tag manually.

5. Read Device Status Register. No error bits should be set.
6. Read Advanced Uncorrectable Error Status Register. No error bits should be set.
7. Read Advanced Correctable Error Status Register. No error bits should be set.
8. Write 0 to Device Control Register, to disable Error Reporting for all error types.


Pass/Fail Criteria:

Test should successfully progress though all test stages.
All test stages should be executed without protocol violations.

Verify that:
a) The duplicated CONFIG_RD_REQ TLP has received two ACKs or a single coalesced ACK, but a single
completion with data from the DUT.
b) The DUT did not set any error bit in its Device Status register and did not generate any error messages.
c) The DUT did not set any error bit in the Advanced Error Reporting registers (if implemented).

If the DUT meets all these criteria, the DUT passes the test.

Advertising