Locked transfer in the axi interconnect

Hi guys , 

1. I am issuing back to back locked read and write transactions for the axi interconnect . The sequence here is read locked --> write locked transactions  to the  same slave .. if in the middle of a read locked transaction , if i issue a write locked transaction , will the  write requests processes  only when the read locked requests is completed (ie the outstanding requests for the read becomes 0) ....? ( please consider that there are no outstanding transactions on  ar ,aw channel on initiation of the locked request )

2. If i issue a non-locked transfer of read and write requests to the same slave at different regions , can the handshaking happens at the same time for the 2 address channels ..? 

3. I have read that the both the channels (ar and aw) have to be locked before sending the requests of locked transactions to the required slave .. does it mean that the grant of arbiter at the slave port shall change only when the both the locked read and write requests are completed ...? (ie for the both the channels the outstanding transfer are 0.)

Thanks in advance , 

Vishnu Prasad

Parents
  • 1. I am issuing back to back locked read and write transactions for the axi interconnect . The sequence here is read locked --> write locked transactions  to the  same slave .. if in the middle of a read locked transaction , if i issue a write locked transaction , will the  write requests processes  only when the read locked requests is completed (ie the outstanding requests for the read becomes 0) ....? ( please consider that there are no outstanding transactions on  ar ,aw channel on initiation of the locked request )

    Relative ordering of the different channels still applies, even though you are doing LOCKed accesses.

    If you issue the write before waiting for the read to complete, then there is no guarantee what order the accesses will be performed in, and no guarantee what order they reach the subordinate in.

    If you require the write to be ordered after the read, then you must wait for the read to complete first before issuing the write.

    2. If i issue a non-locked transfer of read and write requests to the same slave at different regions , can the handshaking happens at the same time for the 2 address channels ..? 

    Yes.

    3. I have read that the both the channels (ar and aw) have to be locked before sending the requests of locked transactions to the required slave .. does it mean that the grant of arbiter at the slave port shall change only when the both the locked read and write requests are completed ...? (ie for the both the channels the outstanding transfer are 0.)

    LOCKing applies to both reads and writes.  In other words, if a manager issues a LOCKed access, then that subordinate can only be accessed by that manager for both reads and writes until it is unlocked by either an unLOCKing read or write.

Reply
  • 1. I am issuing back to back locked read and write transactions for the axi interconnect . The sequence here is read locked --> write locked transactions  to the  same slave .. if in the middle of a read locked transaction , if i issue a write locked transaction , will the  write requests processes  only when the read locked requests is completed (ie the outstanding requests for the read becomes 0) ....? ( please consider that there are no outstanding transactions on  ar ,aw channel on initiation of the locked request )

    Relative ordering of the different channels still applies, even though you are doing LOCKed accesses.

    If you issue the write before waiting for the read to complete, then there is no guarantee what order the accesses will be performed in, and no guarantee what order they reach the subordinate in.

    If you require the write to be ordered after the read, then you must wait for the read to complete first before issuing the write.

    2. If i issue a non-locked transfer of read and write requests to the same slave at different regions , can the handshaking happens at the same time for the 2 address channels ..? 

    Yes.

    3. I have read that the both the channels (ar and aw) have to be locked before sending the requests of locked transactions to the required slave .. does it mean that the grant of arbiter at the slave port shall change only when the both the locked read and write requests are completed ...? (ie for the both the channels the outstanding transfer are 0.)

    LOCKing applies to both reads and writes.  In other words, if a manager issues a LOCKed access, then that subordinate can only be accessed by that manager for both reads and writes until it is unlocked by either an unLOCKing read or write.

Children