C.2.9. AXI transfer sequences

This section describes the different sequences of events that can occur during AXI read or write operations.

Table C.9 lists the cycles for an example single-word write operation with waits on each channel:

Table C.9. Cycle by cycle activity for a write transaction

Cyclectsstatus[0:2]Description
00
CASI_MASTER_WAIT,
CASI_MASTER_WAIT,
CASI_MASTER_WAIT
No action. AXI slave function driveTransaction() is not called by AXI master.
10-Null transaction (optional). Master calls the slave with an empty transaction. This might be used for arbitration.
20
CASI_MASTER_READY,
CASI_MASTER_WAIT,
CASI_MASTER_WAIT
Address transfer. Master calls the slave with a valid transaction. The slave does not change the status on return from driveTransaction().
30
CASI_SLAVE_READY,
CASI_MASTER_WAIT,
CASI_MASTER_WAIT
Master calls the slave again. Slave accepts address by changing status.
41
CASI_SLAVE_READY,
CASI_MASTER_READY,
CASI_MASTER_WAIT
Write data transfer. Master calls slave with a transaction with the data elements filled in. The slave does not change the status on return.
51
CASI_SLAVE_READY,
CASI_SLAVE_READY,
CASI_MASTER_WAIT
Master calls the slave again. Slave accepts data by changing status.
62
CASI_SLAVE_READY,
CASI_SLAVE_READY,
CASI_MASTER_READY
Write response transfer. Slave calls notifyEvent() in AXI master with the response elements filled in. The master does not change the status on return.
72
CASI_SLAVE_READY,
CASI_SLAVE_READY,
CASI_MASTER_READY
Slave calls the master again. Master accepts data by changing status.
80
CASI_MASTER_WAIT,
CASI_MASTER_WAIT,
CASI_MASTER_WAIT
No action (optional). If no additional writes are pending, all of the channels are inactive and driveTransaction() is not called from master.

The actual transfer sequence can differ considerably from the sequence shown in Table C.9:

Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0359B
Non-Confidential