
 Token Transfer Operation
12-19
  Communication Ports
12.7 Token Transfer Operation
Token transfer operation requires handshaking of signals through pins CREQ
and CACK. This is illustrated in Figure 12–6. For clarity, a suffix identifies the
signals at each processor end. For example, CREQb denotes the CREQ sig-
nal at the processor B end. Table 12–4 lists the handshaking events. Steps in
the table are shown by numbers in Figure 12–6.
Notice that an overlap feature is built into CREQ, CSTRB, and CRDY when a
token is transferred between two ’C4x communication ports. This overlap will
cause these signals to drive high (at both ends), ensuring that neither end is
susceptible to floating or low-noise signals. For example, in Figure 14–23,
CSTRB is an output before CREQ goes high, and in Figure 14–24, CSTRB be-
comes an input only after CREQ goes high. Both ’C4xs drive communication
port lines for a period of 0.5 H1/H3, but this is not a problem, because they are
both driving high; as a result, there is no current from one device to the other.
For this reason, the clocks of two ’C4xs connected together must be within a
2:1 ratio (at most, one ’C4x can be twice as fast as the other). If this guideline
is not followed, the overlap will last too long, and the ’C4x with the faster clock
may start driving low before the current bus master has relinquished that line.
This will cause signal contention that could damage communication port driv-
ers.
There is no limit on the time period between CREQ and CACK. The ’C4x can
perform token transfer with a slow non-’C4x device, as long as correct hand-
shaking of CREQ and CACK is maintained and there is no signal contention.
To avoid bus contention problems, you should understand which event trig-
gers the switch of the direction (input-to-output or output-to-input) of each of
the communication port bidirectional lines. This is especially important when
you attempt to build a communication port interface to a non-’C4x device or
when you work with very long ’C4x links. For example, the data lines and
CSTRB should not
be driven after CACK goes low. If they are, this could cause
a bus conflict.
An implementation of a hardware token forcer can be found in the Commu-
nication Portschapter of the TMS320C4x General-Purpose Applications
User’s Guide