Error Interrupts - 4.1 English - PG034

AXI Central Direct Memory Access LogiCORE IP Product Guide (PG034)

Document ID
PG034
Release Date
2025-07-11
Version
4.1 English

Any detected error results in the AXI CDMA gracefully halting. Per AXI4 protocol, all AXI transfers that have been committed with accepted address channel transfers must complete the associated data transfer. Therefore, the AXI CDMA completes all committed AXI4 transfers before setting the CDMASR.IDLE bit. When the CDMASR.IDLE bit is set to 1, the AXI CDMA engine is truly halted.

The pointer to the descriptor associated with the errored transfer is updated to the CURDESC_PNTR register. On the rare occurrence that more than one error is detected, only the CURDESC_PNTR register for one of the errors are logged. To resume operations, a reset must be issued to the AXI CDMA either by a hardware reset or by writing a 1 to the CDMACR.Reset bit.

The following is a list of possible errors:

DMAIntErr
CDMA Internal Error indicates that an internal error in the AXI DataMover was detected. This can occur under two conditions. First, for the DataMover MM2S and S2MM channels, it can occur when a BTT = 0 is written to the primary AXI DataMover command input. This happens if a transfer descriptor is fetched and executed with the CONTROL word having the BTT field = 0.
DMASlvErr
CDMA Slave Error occurs when the slave to or from which data is transferred responds with a SLVERR.
DMADecErr
CDMA Decode Error occurs when the address request is targeted to an address that does not exist.
SGIntErr
Scatter Gather Internal Error occurs when a BTT = 0. This error only occurs if a fetched descriptor already has the Complete bit set. This condition indicates to the AXI CDMA that the descriptor has not been processed by the CPU, and therefore is considered stale.
SGSlvErr
Scatter Gather Slave Error occurs when the slave to or from which descriptors are fetched and updated responds with a SLVERR.
SGDecErr
Scatter Gather Decode Error occurs when the address request is targeted to an address that does not exist.
Note: Scatter Gather error bits are unable to be updated to the descriptor in remote memory. They are only captured in the associated channel CDMASR where the error occurred.