The arbitration within the BusMatrix determines which input port has access to the shared slave and each shared slave has its own arbitration. Different arbitration schemes provide different system characteristics in terms of access latency and overall system performance.
The following arbitration schemes are supported by the slave switch:
one port always has highest priority
switch on every transfer if other port waiting.
The following arbitration schemes can also be considered for a particular application. However, these schemes are not supported and might require significant modification to the arbitration section of the switch:
ntransfers if other port waiting
switch if other port waiting for
ncycles if other port waiting
switch at the end of fixed length bursts.
The arbitration section of the BusMatrix ensures that when a master performs a sequence of locked transfer to a slave, no other master is allowed access to that slave until the master has completed the sequence.
Using a multi-layer AHB system requires certain restrictions to be placed on the use of locked transfers to prevent a deadlock situation. It is required that a sequence of locked transfers are all performed to the same slave within the system. A bus master can ensure this restriction is met by ensuring that a locked sequence of transfers remains within a 1KB address region.