English
Language : 

PXS20RM Datasheet, PDF (308/1368 Pages) Freescale Semiconductor, Inc – PXS20 Microcontroller
Crossbar Switch (XBAR)
15.4.1.2 Fixed Priority Operation
When operating in fixed-priority mode, each master is assigned a unique priority level in the MPR (Master
Priority Register). If two masters both request access to a slave port the master with the highest priority in
the selected priority register will gain 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 (unless the slave
port is in a parked state). 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 new requesting master will be granted control over the slave port at the next clock edge.
The exception to this rule is if the master that currently has control over the slave port is running a fixed
length burst transfer or a locked transfer. In this case the new requesting master will have to wait until the
end of the burst transfer or locked transfer before it will be granted control of the slave port. If the master
is running an undefined length burst transfer the new requesting master must wait until an arbitration point
for the undefined length burst transfer before it will be granted control of the slave port. Arbitration points
for an undefined length burst are defined in the MGPCR for each master.
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 will be forced to wait until the master that currently has control
of the slave port either runs an IDLE cycle or runs a non IDLE cycle to a location other than the current
slave port.
15.4.1.3 Round-Robin Priority Operation
When operating in round-robin mode, each master is assigned a relative priority based on the master
number.This relative priority is compared to the ID of the last master to perform a transfer on the slave bus.
The highest priority requesting master will become owner of the slave bus as the next transfer boundary
(accounting for locked and fixed-length burst transfers). Priority is based on how far ahead the ID of the
requesting master is to the ID of the last master (ID is defined by master port number, not the hmaster
field).
Once 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 will be granted access to
the slave port at the next assertion of sX_hready, or possibly on the next clock cycle if the current master
has no pending access request.
As an example of arbitration in round-robin mode, assume the XBAR is implemented with master ports 0,
1, 4 and 5. If the last master of the slave port was master 1, and master 0, 4 and 5 make simultaneous
requests, they will be serviced in the order 4, 5 and then 0.
Parking may still be used in a round-robin mode, but will not affect the round-robin pointer unless the
parked master actually performs a transfer. Handoff will occur to the next master in line after one cycle of
arbitration. If the slave port is put into low power park mode the round-robin pointer will be reset to point
at master port 0, giving it the highest priority.
15-14
PXS20 Microcontroller Reference Manual, Rev. 1
Freescale Semiconductor