Functional Description - Freescale Semiconductor MCF54455 Reference Manual

Table of Contents

Advertisement

15.5

Functional Description

15.5.1
Arbitration
The crossbar switch supports two arbitration schemes: a simple fixed-priority comparison algorithm and
a simple round-robin fairness algorithm. The arbitration scheme is independently programmable for each
slave port.
15.5.1.1
Fixed-Priority Operation
When operating in fixed-priority mode, each master is assigned a unique priority level in the XBS_PRSn
(priority registers). If two masters request access to a slave port, the master with the highest priority in the
selected priority register gains control over the slave port.
When a master makes a request to a slave port, the slave port checks 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 bus transfer boundary makes certain
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 is 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 must wait until the end of the
burst transfer or locked transfer before it is granted control of the slave port.
If the new requesting master's priority level is lower than the master that currently has control of the slave
port, the new requesting master is forced to wait until the current master runs one of the following cycles:
An IDLE cycle
A non-IDLE cycle to a location other than the current slave port.
15.5.1.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 priority is based on how far ahead the master port number of the requesting master is to the
master port number of the current bus master for this slave. Master port numbers are compared modulo the
total number of bus masters, i.e. take the requesting master port number minus the current bus master's
port number modulo the total number of bus masters. The master port with the highest priority based on
this comparison is granted control over the slave port at the next bus transfer boundary.
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 at the next transfer boundary.
Parking may continue to be used in a round-robin mode, but does not affect the round-robin pointer unless
the parked master actually performs a transfer. Handoff occurs 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 is reset to point at
master port 0, giving it the highest priority.
Freescale Semiconductor
Crossbar Switch (XBS)
15-7

Advertisement

Table of Contents
loading

Table of Contents