MPC563XM Reference Manual, Rev. 1
932
Freescale Semiconductor
Preliminary—Subject to Change Without Notice
Figure 23-70. Multiple Time-Slot Sequences
23.5.5.3.1
Priority Passing
If no channel of the priority level assigned to the time slot is requesting service, the eTPU scheduler can
pass priority to other levels. If no high-level channel is requesting service during a high level time slot, a
middle-level channel is granted service; or, if no middle level-channel is requesting service, a low-level
channel is granted service. If no middle-level channel is requesting service during a middle-level time slot,
a high-level channel is granted service; or, if no high-level channel is requesting service, a low-level
channel is granted service. If no low-level channel is requesting service during a low-level time slot, a
high-level channel is granted service; or, if no high-level channel is requesting service, a middle-level
channel is granted service. If no channel is requesting service, the time slot sequence is reset to state 1 and
the scheduler idles until a request is received.
Priority passing is implemented in hardware and does not contribute to worst-case latency.
23.5.5.3.2
Time-Slot Transition
After each time slot, the eTPU must prepare for the next time slot. This preparation time between each
time slot is called a time-slot transition. See
Section 23.4.1.2, “Time Slot Transition
”. Time-slot transitions
can take from six up to ten system clocks.
23.5.5.3.3
Channel Number Priority
If more than one channel of a priority level is requesting service, the lowest numbered channel is granted
service first. For example, if channels 0, 5, and 9 are all high-level channels requesting service during a
high time slot, channel 0 is granted service first. Continuing this example, if channel 0 requests service
again immediately after being serviced, it is not serviced again until channels 5 and 9 are serviced. This
scheme is implemented so that continuously-requesting low numbered channels do not take all the time on
the eTPU execution unit and leave no time for other channels.
The scheduler uses registers to keep track of which channels have been serviced and which require
servicing. Each channel has two register bit: a service request register (SRR) and a service grant register
(SGR). The SRR is set when a channel requests service. After the channel has been granted service, the
SGR is set and the SRR is cleared.
SGRs are not cleared individually by channel, but rather as priority level groups. The clearing of a group
of SGRs begins a new cycle for that priority level. An SGR group is cleared on the condition that a channel
of that priority level has just been serviced, and no other channel of that priority level is requesting service
(has a set SRR) and has not been granted service (has a clear SGR).
H
M
H
L
H
M
H
New 7-slot
Sequence
H
M
H
L
H
M
H
H
M
H
New 7-slot
New 7-slot
Sequence
Sequence