
TPU3 ROM Functions
MPC561/MPC563 Reference Manual, Rev. 1.2
Freescale Semiconductor
D-57
D.20.1.6
SIOP_DATA
This parameter is the data register for all SIOP transfers. Data is shifted out of one end of SIOP_DATA
and shifted in at the other end, the shift direction being determined by the value of BIT_D. In output-only
mode, zero will be shifted into SIOP_DATA and in input-only mode, the data shifted out is ignored. In
clock-only mode, SIOP_DATA is still shifted.
NOTE
The TPU3 does not “justify” the data position in SIOP_DATA (for example,
if an 8-bit bidirectional transfer is made, shifting LSB first, then the bottom
byte of SIOP_DATA will be shifted out and the input data will be shifted
into the upper byte of SIOP_DATA).
NOTE
SIOP_DATA is not buffered. The RCPU should only access it between
completion of one transfer and the start of the next.
D.20.2
Host RCPU Initialization of the SIOP Function
The RCPU initializes the SIOP function by:
1. Disabling the channel by clearing the two channel-priority bits
2. Selecting the SIOP function on the channel by writing the assigned SIOP function number to the
function-select bits
3. Writing CHAN_CONTROL in the clock channel parameter RAM
4. Writing HALF_PERIOD, BIT_D, and XFER_SIZE in the clock-channel parameter RAM to
determine the speed, shift direction, and size of the transfer
5. Writing SIOP_DATA if the data output is to be used
6. Selecting the required operating mode via the two host-sequence bits
7. Issuing a host service request type 0b11
8. Enabling service by assigning H, M, or L priority to the clock channel via the two channel-priority
bits
The TPU3 then starts the data transfer, and issues an interrupt request when the transfer is complete.
Once the function has been initialized, the RCPU only needs to write SIOP_DATA with the new data and
issue a HSR 0b11 to initiate a new transfer. In input-only or clock-only modes, just the HSR 0b11 is
required.
D.20.3
SIOP Function Performance
Like all TPU3 functions, the performance limit of the SIOP function depends, because of the operational
nature of the scheduler, on the service time (latency) associated with other active TPU3 channels. Where
two channels are used for a uni-directional system and no other TPU3 channels are active, the maximum
baud rate is approximately 230 at a bus speed of 16.77 MHz. A three-channel bidirectional system under
the same conditions has a maximum baud rate of approximately 200. When more TPU3 channels are