Crossbar Switch (XBAR)
MPC5566 Microcontroller Reference Manual, Rev. 2
7-10 Freescale Semiconductor
 
The only other time the XBAR has control of the slave port is when no masters are making access requests 
to the slave port and the XBAR is forced to either park the slave port on a specific master, or place the 
slave port into low-power park mode. In these cases, the XBAR forces IDLE for the transfer type.
7.3.5 Priority Assignment
Each master port must be assigned a unique 2-bit priority level in fixed priority mode. If multiple master 
ports are assigned the same priority level within a register (XBAR_MPR) undefined behavior results.
7.3.6 Arbitration
XBAR supports two arbitration schemes; a simple fixed-priority comparison algorithm, and a round-robin 
fairness algorithm. The arbitration scheme is independently programmable for each slave port.
7.3.6.1 Fixed Priority Operation
When operating in fixed-priority arbitration mode, each master is assigned a unique priority level in the 
XBAR_MPR. If two masters both request access to a slave port, the master with the highest priority in the 
selected priority register gains control over the slave port.
Any time a master makes a request to a slave port, the slave port checks to see if the new requesting 
master’s priority level is higher than that of the master that currently has control over the slave port (if any). 
The slave port does an arbitration check at every clock edge to ensure that the proper master (if any) has 
control of the slave port.
If the new requesting master’s priority level is higher than that of the master that currently has control of 
the slave port, the higher priority master is granted control at the termination of any currently pending 
access, assuming the pending transfer is not part of a burst transfer. 
A new requesting master must wait until the end of the fixed-length burst transfer, before it is granted 
control of the slave port. But if the new requesting master’s priority level is lower than that of the master 
that currently has control of the slave port, the new requesting master is forced to wait until the master that 
currently has control of the slave port is finished accessing the current slave port.
7.3.6.2 Round-Robin Priority Operation
When operating in round-robin mode, each master is assigned a relative priority based on the master port 
number. This relative priority is compared to the port number of the last master to perform a transfer on 
the slave bus. The highest priority requesting master becomes the owner of the slave bus at the next transfer 
boundary (accounting for fixed-length burst transfers). Priority is based on how far ahead the port number 
of the requesting master is to the port number of the last master.
After granted access to a slave port, a master may perform as many transfers as desired to that port until 
another master makes a request to the same slave port. The next master in line is granted access to the slave 
port when the current transfer is completed, or possibly on the next clock cycle if the current master has 
no pending access request.