19
IDT72V51433/72V51443/72V51453 3.3V, MULTI-QUEUE FLOW-CONTROL DEVICES
(16 QUEUES) 18 BIT WIDE CONFIGURATION 589,824, 1,179,648 and 2,359,296 bits
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
NULL QUEUE OPERATION (OF THE READ PORT)
Pipelining of data to the output port enables the device to provide 100% bus
utilizationinstandardmode.Datacanbereadoutofthemulti-queueflow-control
device on every RCLK cycle regardless of queue switches or other opera-
tions. The device architecture is such that the pipeline is constantly filled with
the next words in a selected queue to be read out, again providing 100% bus
utilization. This type of architecture does assume that the user is constantly
switching queues such that during a queue switch, the last data word required
from the previous queue will fall through the pipeline to the output.
Note,thatifreadsceaseattheemptyboundaryofaqueue,thenthelastword
will automatically flow through the pipeline to the output.
The Null-Q is selected via read port address space RDADD[4]. The
RDADD[7:0] bus should be addressed with xxx1xxxx, this address is the
Null-Q. A null queue can be selected when no further reads are required from
a previously selected queue. Changing to a null queue will continue to
propagate data in the pipeline to the previous queue’s output. The Null-Q can
remain selected until a data becomes available in another queue for reading.
The Null-Q can be utilized in either standard or packet mode.
Note: If the user switches the read port to the null queue, this queue is seen
as and treated as an empty queue, therefore after switching to the null queue
the last word from the previous queue will remain in the output register and the
OV flag will go HIGH, indicating data is not valid.
The Null queue operation only has significance to the read port of the multi-
queue, it is a means to force data through the pipeline to the output. Null-Q
selection and operation has no meaning on the write port of the device. Also,
refer to Figure 16, Read Operation and Null Queue Select for diagram.
BUS MATCHING OPERATION
Bus Matching operation between the input port and output port is available.
Duringamasterresetofthemulti-queuethestateofthetwosetuppins,IW(Input
Width) and OW (Output Width) determine the input and output port bus widths
as per the selections shown in Table 3, “Bus Matching Set-up”. 9 bit bytes or
18 bit words can be written into and read from the queues. When writing to or
reading from the multi-queue in a bus matching mode, the device orders data
in a “Little Endian” format. See Figure 3, Bus Matching Byte Arrangement for
details.
The Full flag and Almost Full flag operation is always based on writes and
readsofdatawidthsdeterminedbythewriteportwidth.Forexample,iftheinput
port is x18 and the output port is x9, then two data reads from a full queue will
be required to cause the full flag to go HIGH (queue not full). Conversely, the
OutputValidflagandAlmostEmptyflagoperationsarealwaysbasedonwrites
and reads of data widths determined by the read port. For example, if the input
portisx9andtheoutputportisx18,twowriteoperationswillberequiredtocause
the output valid flag of an empty queue to go LOW, output valid (queue is not
empty).
Note,thattheinputportservesallqueueswithinadevice,asdoestheoutput
port,thereforetheinputbuswidthtoallqueuesisequal(determinedbytheinput
port size) and the output bus width from all queues is equal (determined by the
output port size).
FULL FLAG OPERATION
The multi-queue flow-control device provides a single Full Flag output,
FF.
The
FFflagoutputprovidesafullstatusofthequeuecurrentlyselectedonthe
write port for write operations. Internally the multi-queue flow-control device
monitorsandmaintainsastatusofthefullconditionofallqueueswithinit,however
onlythequeuethatisselectedforwriteoperationshasitsfullstatusoutputtothe
FF flag. This dedicated flag is often referred to as the “active queue full flag”.
When queue switches are being made on the write port, the
FF flag output
will switch to the new queue and provide the user with the new queue status,
onthecycleafteranewqueueselectionismade.Theuserthenhasafullstatus
for the new queue one cycle ahead of the WCLK rising edge that data can be
written into the new queue. That is, a new queue can be selected on the write
port via the WRADD bus, WADEN enable and a rising edge of WCLK. On the
nextrisingedgeofWCLK,the
FFflagoutputwillshowthefullstatusofthenewly
selected queue. On the second rising edge of WCLK following the queue
selection, data can be written into the newly selected queue provided that data
and enable setup & hold times are met.
Note, the
FF flag will provide status of a newly selected queue one WCLK
cycleafterqueueselection,whichisonecyclebeforedatacanbewrittentothat
queue.Thispreventstheuserfromwritingdatatoaqueuethatisfull,(assuming
that a queue switch has been made to a queue that is actually full).
The
FFflagissynchronoustotheWCLKandalltransitionsoftheFFflagoccur
basedonarisingedgeofWCLK.Internallythemulti-queuedevicemonitorsand
keeps a record of the full status for all queues. It is possible that the status of a
FFflagmaybechanginginternallyeventhoughthatflagisnottheactivequeue
flag (selected on the write port). A queue selected on the read port may
experience a change of its internal full flag status based on read operations.
See Figure 9, Write Queue Select, Write Operation and Full Flag Operation
and Figure 11, Full Flag Timing in Expansion Mode for timing information.
EXPANSION MODE - FULL FLAG OPERATION
When multi-queue devices are connected in Expansion mode the
FFflags
of all devices should be connected together, such that a system controller
monitoring and managing the multi-queue devices write port only looks at a
single
FF flag (as opposed to a discrete FF flag for each device). This FF flag
is only pertinent to the queue being selected for write operations at that time.
Remember, that when in expansion mode only one multi-queue device can be
written to at any moment in time, thus the
FF flag provides status of the active
queue on the write port.
Thisconnectionofflagoutputstocreateasingleflagrequiresthatthe
FFflag
output have a High-Impedance capability, such that when a queue selection is
made only a single device drives the
FF flag bus and all other FF flag outputs
connected to the
FF flagbusareplacedintoHigh-Impedance.Theuserdoes
not have to select this High-Impedance state, a given multi-queue flow-control
devicewillautomaticallyplaceits
FFflagoutputintoHigh-Impedancewhennone
of its queues are selected for write operations.
Whenqueueswithinasingledeviceareselectedforwriteoperations,the
FF
flag output of that device will maintain control of the
FF flag bus. Its FFflagwill
simplyupdatebetweenqueueswitchestoshowtherespectivequeuefullstatus.
Themulti-queuedeviceplacesits
FFflagoutputintoHigh-Impedancebased
onthe3bitIDcodefoundinthe3mostsignificantbitsofthewritequeueaddress
bus,WRADD.Ifthe3mostsignificantbitsofWRADDmatchthe3bitIDcodesetup
on the static inputs, ID0, ID1 and ID2 then the
FF flag output of the respective
device will be in a Low-Impedance state. If they do not match, then the
FFflag
output of the respective device will be in a High-Impedance state. See Figure
11, Full Flag Timing in Expansion Mode for details of flag operation, including
when more than one device is connected in expansion.
I W
OW
Write Port
Read Port
0
x18
0
1
x18
x9
1
0
x9
x18
1
x9
TABLE 3
BUS-MATCHING SET-UP