Aborting a Completion Transfer - Aborting a Completion Transfer - v1.3 English - PG213

UltraScale+ Devices Integrated Block for PCI Express v1.3 Product Guide (PG213)

Document_ID
PG213
Release_Date
2026-07-31
Version
v1.3 English

The user application can abort the transfer of a completion transaction on the completer completion interface at any time during the transfer of the payload by asserting the discontinue signal in the s_axis_cc_tuser bus. The integrated block nullifies the corresponding TLP on the link to avoid data corruption.

The user application can assert this signal in any cycle during the transfer, when the Completion being transferred has an associated payload. The user application can either choose to terminate the packet prematurely in the cycle where the error was signaled (by asserting s_axis_cc_tlast), or can continue until all bytes of the payload are delivered to the integrated block. In the latter case, the integrated block treats the error as sticky for the following beats of the packet, even if the user application deasserts the discontinue signal before reaching the end of the packet.

The discontinue signal can be asserted only when s_axis_cc_tvalid is active-High. The integrated block samples this signal when s_axis_cc_tvalid and s_axis_cc_tready are both asserted. Thus, after assertion, the discontinue signal should not be deasserted until s_axis_cc_tready is asserted.

When the integrated block is configured as an Endpoint, this error is reported by the integrated block to the Root Complex to which it is attached, as an Uncorrectable Internal Error using the Advanced Error Reporting (AER) mechanisms.