3.0 Client Interface
(Continued)
QR0001 can handle
one Independent data stream
through each of the X and Y FIFOs, a total of two
streams at once.
Even if the FIFO is not full, the FIFO will
store data associated only with a single head. Multiple data
streams with various heads will not be held in a single FIFO.
The subsequent data streams, with different heads, will be
held in the Tx pipeline, until either FlFO X or Y empties, and
the data (with the different head) is allowed to further pro-
ceed in the pipeline.
5. The LB FIFO. Several streams with different heads can
flow through the LB FIFO at one time. When several pay-
loads are loaded, following a signal head, a head will be
generated for each payload.
For all transmissions, low bandwidth or normal, QR0001 will
keep TxOK asserted for as long as there is space for 20 or
more symbols in the transmit pipeline. As soon as the trans-
mit pipeline has space for
only
20 more symbols, TxOK
negates. The initial negation of TxOK indicates to the client
interface that it must stop transmitting non-null symbols
soon. TxOK is the only handshake mechanism at the trans-
mit port. If TxOK asserts again, the count is voided and the
client can write to the TxPort as many symbols as it wants. If
TxOK negates again, the client must stop writing non-null
symbols within 20 valid transactions.
TL/F/11928–14
FIGURE 3.2. Tx Port Client Interface
The client may pause transmission at any time by present-
ing the null symbol code to the transmit port.
When the client interface wishes to begin transmission of a
data stream, the client first writes a head (H) to the transmit
port. From then on, every payload symbol (type
e
data or
frame) sent to the transmit port is assumed to belong to the
stream identified by the head. The data stream that the cli-
ent writes at the transmit port is unbounded. However, if a
new head is written to the transmit port, the data stream that
follows is associated with the new head. If at any time the
client is not prepared to transmit either a payload or a new
head, a null symbol (N) may be introduced into the transmit
data stream. Null symbols do not propagate into the
QR0001
QuickRing
controller.
streams can be multiplexed together and loaded into the
QR0001 transmit port. The client is free to switch between
source streams at its convenience, as long as it introduces
a new head when the switch occurs.
Logically
distinct
data
Figure 3.3 shows how three independent streams (high
bandwidth) may be multiplexed from the Client Transmit
Port into the QuickRing controller. Stream Q goes first,
sending 2 payloads. It is followed by 1 payload from stream
R, then by 2 payloads from stream S. Two more symbols
from stream Q are sent, etc.
3.3 Transmit Port Timing Relationships
When PIPE is asserted (low voltage level) the type field,
TxT, accompanying the symbol field, TxS, is loaded into the
controller one clock cycle after the symbol that it identifies.
SeeFigure 3.4. When a symbol is presented on TxS at time
t, then the corresponding code is presented on TxT at time
t
a
1. The purpose of delivering the TxT field one clock cycle
after the symbol is so that a simple, synchronous state ma-
chine has one full clock cycle to compute the TxT code
without using extemal latches on the symbol field.
When PIPE is negated (high voltage level), the type field
TxT accompanying the symbol field TxS is loaded into the
controller during the same clock cycle as the symbol it iden-
tifies. Refer to Figure 3.5.
The TxOK function and timing remains unchanged regard-
less of the level of the PIPE signal. Giving a 20 symbol
warning that transmission of non-null symbols may need to
cease.
6