This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Lock Signal for AXI Slave

According to what I read in AXi spec sheet, AxLOCK signals are used by the Masters for a locked access to a slave and it's the arbiter/interconnect which takes care of the AxLOCK signal.
Am I right when I say that, "Slave doesn't care if it's Locked access or not and it's just the Master and Interconnect's business"?

But yes, if the Master seeks Exclusive access via AxLOCK, then the slave will have to monitor what's happening. Only thing I'm confused about is a Locked access.


Regards
Tarun Mittal

  • For most AXI slave they won't care about whether the current transfer is part of a LOCKed sequence or not, they will simply perform the requested transfer and allow the interconnect logic to ensure no other master accesses "interrupt" the locked sequence to this slave.

    However if the AXI slave has multiple slave ports (for example a dual port RAM or multi-port memory controller), those will need to ensure that any LOCKed access sequence on one port is not corrupted by accesses on other ports. This could be implemented by ensuring the LOCKed access has to wait until all other active accesses complete and then block further access requests on those other ports while this port's LOCKed sequence is performed. Or as LOCKed sequences cannot extend past a 4KB boundary, restrict accesses to 4KB range addressed by this LOCKed sequence to just this one port, allowing other ports to access different 4KB regions in the slave.