CMOS TRIPLE BUS SyncFIFO™
WITH BUS-MATCHING AND
BYTE SWAPPING 64 x 36 x 2
FEATURES:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Two independent FIFOs (64 X 36 storage capacity each) buffer
data between bidirectional 36-bit port A and two unidirectional
18/9-bit ports (Port B transmits, Port C receives)
Clock frequencies up to 67 MHz (10 ns access time)
Free-running clock lines for each port: CLKA, CLKB and CLKC,
may be asynchronous or coincident (simultaneous reading and
writing of data is permitted)
IDT Standard timing
Empty flag functions: EFA (synchronized by CLKA) and EFB
(synchronized by CLKB)
Full flag functions: FFA (synchronized by CLKA) and FFC
(synchronized by CLKC)
Programmable Almost-Empty and Almost-Full flags; each has
four default offsets (4, 8, 12 and 16)
Bus sizing of 18-bits (word) and 9-bits (byte) for ports B and C
Byte order swapping on ports B and C
Passive parity checking on ports A and C
Parity generation can be selected for ports A and B
Master Reset clears data and configures FIFO
IDT723616
OBSOLETE PART
Width can be easily expanded by adding FIFOs
Auto power down minimizes power dissipation
Available in a space-saving 128-pin Thin Quad Flatpack (TQFP)
High performance sub-micron CMOS technology
Industrial temperature range (–40oC to +85oC) is available
Green parts available, see ordering information
DESCRIPTION:
R
T
O
R
F
A
P ED
E D
T
S
N
E
N
E
L
G
M
O
I
S
M
S
B
E
O
O EC
D
R EW
T
N
O
N
The IDT723616 is a monolithic, high-speed, low-power, CMOS Triple Bus
SyncFIFO™ (clocked) memory which supports clock frequencies up to 67
MHz and has read access times as fast as 10 ns. Two independent 64 x 36
dual-port SRAM FIFOs on board each chip buffer data between a bidirectional
36-bit bus (Port A) and two unidirectional 18-bit buses (Port B transmits data,
Port C receives data.) FIFO data can be read out of ports B and written into
port C using either 18-bit or 9-bit formats.
Reset (RST) initializes the read and write pointers to the first location of the
memory array and selects one of four possible default flag offset settings: 4, 8,
12 or 16.
Each FIFO has flags to indicate empty and full conditions and two programmable flags (Almost-Full and Almost-Empty) to indicate when a selected
FUNCTIONAL BLOCK DIAGRAM
64 x 36
Write
Pointer
Output
Register
Parity
check
RAM
ARRAY
Bus Matching and
Byte Swapping
PEFA
PGB
Parity
Generation
Port-A
Control
Logic
Input
Register
CLKA
CSA
W/RA
ENA
18
Port-B
Control
Logic
B0 - B17
CLKB
RENB
Read
Pointer
36
FFA
AFA
Status Flag
Logic
FIFO 1
FS0
FS1
A0 - A35
FIFO 2
RAM
ARRAY
64 x 36
Parity
Check
Input
Register
Write
Pointer
FFC
AFC
Bus Matching and
Byte Swapping
Read
Pointer
36
Output
Register
ODD/EVEN
FIFO2,
FIFO1
Reset/
Control
Logic
Status Flag
Logic
Parity
Generation
EFA
AEA
RST
Common
Port
Control
Logic
(B and C)
Programmable Flag
Offset Registers
EFB
AEB
SWB0
SWB1
SWC0
SWC1
SIZ0
SIZ1
PGA
18
Port-C
Control
Logic
PEFC
C0 - C17
CLKC
WENC
3520 drw01
IDT and the IDT logo are registered trademarks of Integrated Device Technology, Inc. SyncFIFO is a trademark of Integrated Device Technology, Inc.
COMMERCIAL AND INDUSTRIAL TEMPERATURE RANGES
FEBRUARY 2009
1
DSC-3107/3
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
DESCRIPTION (CONTINUED)
This device is a clocked FIFO, which means each port employs a
synchronous interface. All data transfers through a port are gated to the LOWto-HIGH transition of a continuous (free-running) port clock by enable signals.
The clocks for each port are independent of one another and can be
asynchronous or coincident. The enables for each port are arranged to
provide a simple bidirectional interface between microprocessors and/or
buses controlled by a synchronous interface.
number of words is stored in memory. Data on Port B can be accessed in 18bit and 9-bit formats. FIFO Data on Port C can be input in 18-bit and 9-bit formats.
Byte-order swapping on ports B and C is possible with any bus size selection.
Parity is checked passively on ports A and C and may be ignored if not desired.
Parity generation can be selected for data read from ports A and B. Two or
more devices can be used in parallel to create wider or deeper FIFO
configurations.
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
CLKA
W/RA
NC
Vcc
PGA
PEFA
NC
SWC1
FS1
FS0
ODD/EVEN
RST
GND
NC
SWC0
SWB1
SWB0
SIZ1
SIZ0
NC
PEFC
PGB
Vcc
NC
CLKC
CLKB
Vcc
A26
A25
A24
A23
A22
A21
GND
A20
A19
A18
A17
A16
A15
A14
A13
A12
A11
A10
GND
A9
A8
A7
Vcc
A6
A5
A4
A3
GND
A2
A1
A0
EFA
AEA
AFA
FFA
CSA
ENA
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
INDEX
GND
A27
A28
A29
GND
Vcc
A30
A31
A32
A33
A34
A35
GND
B17
B16
B15
B14
B13
B12
GND
Vcc
B11
B10
B9
Vcc
GND
PIN CONFIGURATION
NOTE:
1. NC - No internal connection.
TQFP (PK128-1, ORDER CODE: PF)
TOP VIEW
2
NC
B8
B7
B6
B5
B4
B3
GND
B2
B1
B0
C17
C16
C15
C14
C13
C12
C11
C10
GND
C9
C8
C7
Vcc
C6
C5
C4
C3
GND
C2
C1
C0
EFB
AEB
AFC
FFC
RENB
WENC
3520 drw02
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
This FIFO employs IDT Standard Mode timing; that is to say, the first word
written to an empty FIFO is deposited into the memory array. A read operation
is required to access that word (along with all other words residing in memory).
Each FIFO has an Empty Flag (EFA and EFB) and a Full Flag (FFA and
FFC). EF indicates whether or not the FIFO memory is empty. FF shows
whether the memory is full or not.
Each FIFO has a programmable Almost-Empty flag (AEA and AEB) and a
programmable Almost-Full flag (AFA and AFC). AEA and AEB indicate when
a selected number of words written to FIFO memory achieve a predetermined
"almost-empty state". AFA and AFC indicate when a selected number of words
written to the memory achieve a predetermined "almost-full state".
FFA, FFC, AFA and AFC are two-stage synchronized to the port clock that
writes data into its array. EFA, EFB, AEA, and AEB are two-stage synchronized
to the port clock that reads data from its array. Four default offset settings are
also provided. The AEA and AEB threshold can be set at 4, 8, 12 or 16 locations
from the empty boundary and the AFA and AFC threshold can be set at 4, 8,
12 or 16 locations from the full boundary. All these choices are made using the
FS0 and FS1 inputs during Reset.
Two or more FIFOs may be used in parallel to create wider data paths. Such
a width expansion requires no additional, external components.
If, at any time, the FIFO is not actively performing a function, the chip will
automatically power down. During the power down state, supply current
consumption (ICC) is at a minimum. Initiating any operation (by activating
control inputs) will immediately take the device out of the Power Down state.
The IDT723616 are characterized for operation from 0°C to 70°C. They
are fabricated using IDT’s high speed, submicron CMOS technology.
3
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
PIN DESCRIPTION
Symbol
A0-A35
AEA
B0-B17
C0-C17
CLKA
Name
Port A Data
Port A Almost-Empty
Flag
Port B Almost-Empty
Flag
Port A Almost-Full
Flag
Port C Almost-Full
Flag
Port B Data.
Port-C Data
Port A Clock
CLKB
Port B Clock
I
CLKC
Port-C Clock
I
CSA
Port A Chip Select
I
EFA
Port A Empty Flag
O
EFB
Port B Empty Flag
O
ENA
FFA
Port A Enable
Port A Full Flag
I
O
FFC
Port C Full Flag
O
FS1, FS0
Flag-Offset Selects
I
ODD/
EVEN
Odd/Even Parity
Select
I
PEFA
Port A Parity Error
Flag
O
AEB
AFA
AFC
I/O
I/O
O
O
O
O
O
I
I
Description
36-bit bidirectional data port for side A.
Programmable Almost-Empty flag synchronized to CLKA. It is LOW when the number of 36-bit
words in FIFO2 is less than or equal to the value in the offset register, X.
Programmable Almost-Empty flag synchronized to CLKB. It is LOW when the number of 36-bit
words in FIFO1 is less than or equal to the value in the offset register, X.
Programmable Almost-Full flag synchronized to CLKA. It is LOW when the number of 36-bit empty
locations in FIFO1 is less than or equal to the value in the offset register, X.
Programmable Almost-Full flag synchronized to CLKC. It is LOW when the number of
36-bit empty locations in FIFO2 is less than or equal to the value in the offset register, X.
18-bit output data port for side B.
18-bit input data port for side C.
CLKA is a continuous clock that synchronizes all data transfers through port A and can be
asynchronous or coincident to CLKB and CLKC. EFA, FFA, AFA, and AEA are synchronized
to the LOW-to-HIGH transition of CLKA.
CLKB is a continuous clock that synchronizes all data read from port B and can be asynchronous
or coincident to CLKA and CLKC. Port B byte swapping and data port sizing operations are also
synchronous to the LOW-to-HIGH transition of CLKB. EFB and AEB are synchronized to the
LOW-to-HIGH transition of CLKB.
CLKC is a continuous clock that synchronizes all data written to port C and can be asynchronous
or coincident to CLKA and CLKC. FFC and AFC are synchronized to the LOW-to-HIGH transition
of CLKC.
CSA must be LOW to enable a LOW-to-HIGH transition of CLKA to read or write data on port A.
The A0-A35 outputs are in the high-impedance state when CSA is HIGH.
EFA is synchronized to the LOW-to-HIGH transition of CLKA. When EFA is LOW, FIFO2 is empty,
and reads from its memory are disabled. Data can be read from FIFO2 to the output register
when EFA is HIGH. EFA is forced LOW when the device is reset and is set HIGH by the second
LOW-to-HIGH transition of CLKA after data is loaded into empty FIFO2 memory.
EFB is synchronized to the LOW-to-HIGH transition of CLKB. When EFB is LOW, the FIFO1 is
empty, and reads from its memory are disabled. Data can be read from FIFO1 to the output
register when EFB is HIGH. EFB is forced LOW when the device is reset and is set HIGH by the
second LOW-to-HIGH transition of CLKB after data is loaded into empty FIFO1 memory.
ENA must be HIGH to enable a LOW-to-HIGH transition of CLKA to read or write data on port A.
FFA is synchronized to the LOW-to-HIGH transition of CLKA. When FFA is LOW, FIFO1 is full,
and writes to its memory are disabled. FFA is forced LOW when the device is reset and is set
HIGH by the second LOW-to-HIGH transition of CLKA after reset.
FFC is synchronized to the LOW-to-HIGH transition of CLKC. When FFC is LOW, FIFO2 is full,
and writes to its memory are disabled. FFC is forced LOW when the device is reset and is set
HIGH by the second LOW-to-HIGH transition of CLKC after reset.
The LOW-to-HIGH transition of RST latches the values of FS0 and FS1, which selects one of four
preset values for the Almost-Full flag and Almost-Empty flag offset.
Odd parity is checked on each port when ODD/EVEN is HIGH, and even parity is checked when
ODD/EVEN is LOW. ODD/EVEN also selects the type of parity generated for each port if parity
generation is enabled for a read operation.
When any byte applied to terminals A0-A35 fails parity, PEFA is LOW. Bytes are organized as
A0-A8, A9-A17, A18-A26, and A27-A35, with the most significant bit of each byte serving as
the parity bit. The type of parity checked is determined by the state of the ODD/EVEN input.
The parity trees used to check the A0-A35 inputs are shared by the mail2 register to generate
parity if parity generation is selected by PGA. Therefore, if a mail2 read parity generation is
setup by having W/RA LOW, and PGA HIGH, the PEFA flag is forced HIGH regardless of the
A0-A35 inputs.
4
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
PIN DESCRIPTION (CONTINUED)
Symbol
PEFC
Name
Port C Parity Error
Flag
PGA
Port A Parity
Generation
I
PGB
Port B Parity
Generation
I
RENB
RST
Port B Read Enable
Reset
I
I
SIZ0, SIZ1
Bus Size Select
(Ports B and C)
I
SWB0
SWB1
Port B Byte Swap
I
SWC0
Port C Byte Swap
I
W/RA
Port A Write/Read
Select
Port C Write Enable
I
WENC
I/O
O
I
Description
When any valid byte applied to terminals B0-B17 fails parity, PEFC is LOW. Bytes are organized
as B0-B8 and B9-B17 with the most significant bit of each byte serving as the parity bit. A byte
is valid when it is used by the bus size selected for Port C. The type of parity checked is
determined by the state of the ODD/ EVEN input.
The parity trees used to check the B0-B17 inputs are shared by the mail 1 register to generate parity if
parity generation is selected by PGB. Therefore, if a mail1 read with parity generation is setup by
having WENC LOW, SIZ1 and SIZ0 HIGH, and PGB HIGH, the PEFC flag is forced HIGH
regardless of the state of the B0-B17 inputs.
Parity is generated for data reads from port A when PGA is HIGH. The type of parity generated
is selected by the state of the ODD/EVEN input. Bytes are organized as A0-A8, A9-A17, A18-A26,
and A27-A35. The generated parity bits are output in the most significant bit of each byte.
Parity is generated for data reads from port B when PGB is HIGH. The type of parity generated
is selected by the state of the ODD/EVEN input. Bytes are organized as B0-B8 and B9-B17. The
generated parity bits are output in the most significant bit of each byte.
RENB must be HIGH to enable a LOW-to-HIGH transition of CLKB to read data on port B.
To reset the device, four LOW-to-HIGH transitions of CLKA, four LOW-to-HIGH transitions of CLKB,
and four LOW-to-HIGH transitions of CLKC must occur while RST is LOW. This sets the AFA and
AFC flags HIGH and the EFA, EFB, AEA, AEB, FFA, and FFC flags LOW. The LOW-to-HIGH
transition of RST latches the status of the FS1 and FS0 inputs to select Almost-Full and AlmostEmpty flag offsets.
The levels on these inputs determine the bus size for ports B and C . These levels must be
stable before Master Reset and must remain static for the duration of FIFO operation. Either
a word or a byte size may be selected for both ports B and C together; the ports cannot be
configured independently.
The levels on these inputs select one of four modes of byte-order swapping for Port B. These levels
must be stable before Master Reset and must remain static for the duration of FIFO operation. The
four modes are no swap, byte swap, word swap, and byte-word swap. Byte-order swapping is
possible with any bus size selection.
The levels on these inputs select one of four modes of byte-order swapping for Port C. These levels
must be stable before Master Reset and must remain static for the duration of FIFO operation. The
four modes are no swap, byte swap, word swap, and byte-word swap. Byte-order swapping is
possible with any bus size selection.
A HIGH selects a write operation and a LOW selects a read operation on port A for a LOW-to-HIGH
transition of CLKA. The A0-A35 outputs are in the high-impedance state when W/RA is HIGH.
A HIGH selects a Port C write operation for a LOW-to-HIGH transition of CLKC.
5
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
ABSOLUTE MAXIMUM RATINGS OVER OPERATING FREE-AIR TEMPERATURE
RANGE (UNLESS OTHERWISE NOTED)(1)
Symbol
Rating
VCC
Supply Voltage Range
VI
Commercial
Unit
–0.5 to 7
V
Input Voltage Range
–0.5 to VCC+0.5
V
VO(2)
Output Voltage Range
–0.5 to VCC+0.5
V
IIK
Input Clamp Current, (VI < 0 or VI > VCC)
±20
mA
IOK
Output Clamp Current, (VO < 0 or VO > VCC)
±50
mA
IOUT
Continuous Output Current, (VO = 0 to VCC)
±50
mA
ICC, IGND
Continuous Current Through VCC or GND
±500
mA
TSTG
Storage Temperature Range
–65 to 150
°C
(2)
NOTES:
1. Stresses beyond those listed under "Absolute Maximum Ratings" may cause permanent damage to the device. These are stress ratings only and functional operation of
the device at these or any other conditions beyond those indicated under "Recommended Operating Conditions" is not implied. Exposure to absolute-maximum-rated conditions
for extended periods may affect device reliability.
2. The input and output voltage ratings may be exceeded provided the input and output current ratings are observed.
RECOMMENDED OPERATING CONDITIONS
Symbol
Parameter
Min.
Max.
Unit
4.5
5.5
V
HIGH Level Input Voltage
2
—
V
VIL
LOW-Level Input Voltage
—
0.8
V
IOH
HIGH-Level Output Current
—
–4
mA
IOL
LOW-Level Output Current
—
8
mA
TA
Operating Free-air Temperature
0
70
°C
VCC
Supply Voltage
VIH
ELECTRICAL CHARACTERISTICS OVER RECOMMENDED OPERATING FREE-AIR
TEMPERATURE RANGE (UNLESS OTHERWISE NOTED)
IDT723616
Commercial & Industrial(1)
tA = 15, 20 ns
Parameter
Test Conditions
Min.
Typ.(1)
Max.
Unit
2.4
—
—
V
VOH
VCC = 4.5V, IOH = –4 mA
VOL
VCC = 4.5 V, IOL = 8 mA
—
—
0.5
V
II
VCC = 5.5 V, VI = VCC or 0
—
—
±50
µA
IOZ
VCC = 5.5 V, VO = VCC or 0
—
—
±50
µA
ICC
VCC = 5.5 V, IO = 0 mA, VI = VCC or GND
—
—
1
mA
CIN
VI = 0, f = 1 MHz
—
4
—
pF
COUT
VO = 0, f = 1 MHz
—
8
—
pF
(3)
NOTES:
1. Industrial temperature range product for 20ns speed grade is available as a standard device. All other speed grades are available by special order.
2. All typical values are at VCC = 5V, TA = 25°C.
3 For additional ICC information, see following page.
6
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
400
VCC = 5.5V
350
f data = 1/2 f s
T A = 25° C
300
C L = 0 pF
VCC = 5V
mA
200
ICC(f)
Supply Current
VCC = 4.5V
250
150
100
50
0
0
10
20
30
40
50
60
fs ⎯ Clock Frequency ⎯ MHz
70
80
3520 drw04
Figure 1. Typical Characteristics: Supply Current vs Clock Frequency
CALCULATING POWER DISSIPATION
The ICC(f) current for the graph in Figure 1 was taken while simultaneously reading and writing the FIFO on the IDT723616 with CLKA and CLKB set to
fs. All data inputs and data outputs change state during each clock cycle to consume the highest supply current. Data outputs were disconnected to normalize
the graph to a zero-capacitance load. Once the capacitive lead per data-output channel is known, the power dissipation can be calculated with the equation
below.
With ICC(f) taken from Figure 1, the maximum power dissipation (PT) of the IDT723616 can be calculated by:
where:
CL
=
fo
=
VOH
=
PT = VCC x ICC(f) + Σ(CL x VOH2 x fo)
output capacitance load
switching frequency of an output
output high level voltage
When no reads or writes are occurring on the IDT723616, the power dissipated by a single clock (CLKA or CLKB) input running at frequency
f S is calculated by:
PT=VCC x fS x 0.290 mA/MHz
7
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
SWITCHING CHARACTERISTICS OVER RECOMMENDED RANGES OF SUPPLY
VOLTAGE AND OPERATING FREE-AIR TEMPERATURE
(Commercial: VCC = 5.0V ±10%, TA = 0°C to +70°C; Industrial; VCC = 5.0V ± 10%,TA = 40°C to +85°C)
Symbol
Parameter
Commercial
Com’l & Ind’l(1)
IDT723616L15
Min.
Max.
IDT723616L20
Min.
Max.
Unit
fS
Clock Frequency, CLKA, CLKB, or CLKC
–
66.7
–
50
MHz
tCLK
Clock Cycle Time, CLKA, CLKB, or CLKC
15
–
20
–
ns
tCLKH
Pulse Duration, CLKA, CLKB, and CLKC
6
–
8
–
ns
tCLKL
Pulse Duration, CLKA, CLKB, and CLKC
6
–
8
–
ns
tDS
Setup Time, A0-A35 before CLKA↑ and C0-C17 before CLKC↑
4
–
5
–
ns
tENS
Setup Time, CSA, W/RA, and ENA before CLKA↑; RENB before CLKB↑;
WENC before CLKC↑
5
–
5
–
ns
tSZS
Setup Time, SIZ0 and SIZ1 before CLKB↑ and CLKC↑
4
–
5
–
ns
tSWS
Setup Time, SWB0 and SWB1 before CLKB↑, SWCO and SWC1, before CLKC↑
5
–
7
–
ns
tPGS
Setup Time, ODD/EVEN and PGA before CLKA↑; ODD/EVEN and PGB before
CLKB↑(2)
4
–
5
–
ns
tRSTS
Setup Time, RST LOW before CLKA↑, CLKB↑, or CLKC↑(3)
5
–
6
–
ns
tFSS
Setup Time, FS0 and FS1 before RST HIGH
5
–
6
–
ns
tDH
Hold Time, A0-A35 after CLKA↑ and C0-C17 after CLKC↑
1
–
1
–
ns
tENH
Hold Time, CSA, W/RA, and ENA after CLKA↑; RENB after CLKB↑; WENB
after CLKC↑
1
–
1
–
ns
tSZH
Hold Time, SIZ0 and SIZ1 after CLKB↑ and CLKC↑
2
–
2
–
ns
tSWH
Hold Time, SWB0 and SWB1 after CLKB↑, SWC0 and SWC1 after CLKC↑
0
–
0
–
ns
tPGH
Hold Time, ODD/EVEN and PGA after CLKA↑; ODD/EVEN and PGB after
CLKB↑(2)
0
–
0
–
ns
tRSTH
Hold Time, RST LOW after CLKA↑, CLKB↑ or CLKC↑(2)
5
–
6
–
ns
tFSH
Hold Time, FS0 and FS1 after RST HIGH
4
–
4
–
ns
(4)
tSKEW1
Skew Time, between CLKA↑ and CLKB↑ for EFB and FFA; between CLKC↑
and CLKA↑ for EFA and FFC
8
–
8
–
ns
tSKEW2(4)
Skew Time, between CLKA↑ and CLKB↑ for AEB and AFA; between CLKC↑
and CLKA↑ for AEA and AFC
14
–
16
–
ns
NOTES:
1. Industrial temperature range product for 20ns speed grade is available as a standard device. All other speed grades are available by special order.
2. Only applies for a clock edge that does a FIFO read.
3. Requirement to count the clock edge as one of at least four needed to reset a FIFO.
4. Skew time is not a timing constraint for proper device operation and is only included to illustrate the timing relationships among CLKA cycle, CLKB cycle and CLKC.
8
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
SWITCHING CHARACTERISTICS OVER RECOMMENDED RANGES OF SUPPLY
VOLTAGE AND OPERATING FREE-AIR TEMPERATURE, CL = 30PF
(Commercial: VCC = 5.0V ±10%, TA = 0°C to +70°C; Industrial; VCC = 5.0V ± 10%,TA = 40°C to +85°C)
Symbol
Parameter
Commercial
Com’l & Ind’l(1)
IDT723616L15
Min.
Max.
IDT723616L20
Min.
Max.
Unit
tA
Access Time, CLKA↑ to A0-A35 and CLKB↑ to B0-B17
2
10
2
12
ns
tWFF
Propagation Delay Time, CLKA↑ to FFA and CLKC↑ to FFC
2
10
2
12
ns
tREF
Propagation Delay Time, CLKA↑ to EFA and CLKB↑ to EFB
2
10
2
12
ns
tPAE
Propagation Delay Time, CLKA↑ to AEA and CLKB↑ to AEB
2
10
2
12
ns
Propagation Delay Time, CLKA↑ to AFA and CLKC↑ to AFC
2
10
2
12
ns
tPPE
Propagation delay time, CLKB↑ to PEFB
2
10
2
12
ns
tPDPE
Propagation Delay Time, A0-A35 valid to PEFA valid; C0-C17 valid to PEFC
valid
2
10
2
11
ns
tPOPE
Propagation Delay Time, ODD/EVEN to PEFA and PEFC
2
10
2
12
ns
tPEPE
Propagation Delay Time, W/RA or PGA to PEFA
1
10
1
12
ns
tEN
Enable Time, CSA and W/RA LOW to A0-A35 active and RENB HIGH to B0-B17
active
2
10
2
12
ns
tDIS
Disable Time, CSA or W/RA HIGH to A0-A35 at high-impedance and RENB LOW
to B0-B17 at high-impedance
1
8
1
9
ns
tPAF
(2)
NOTE:
1. Industrial temperature range product for 20ns speed grade is available as a standard device. All other speed grades are available by special order.
2. Only applies when a new port B bus size is implemented by the rising CLKB edge.
9
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
SIGNAL DESCRIPTIONS
FIFO WRITE/READ OPERATION
The state of Port A data A0-A35 outputs is controlled by the Port A chip
select (CSA) and the Port A write/read select (W/RA). The A0-A35 outputs are
in the high-impedance state when either CSA or W/RA is HIGH. The A0-A35
outputs are active when both CSA and W/RA are LOW. Data is loaded into
FIFO1 from the A0-A35 inputs on a LOW-to-HIGH transition of CLKA when
CSA is LOW, W/RA is HIGH, ENA is HIGH, and FFA is HIGH. Data is read
from FIFO2 to the A0-A35 outputs by a LOW-to-HIGH transition of CLKA when
CSA is LOW, W/RA is LOW, ENA is HIGH, and EFA is HIGH (see Table 2).
The state of the Port B data (B0-B17) outputs is controlled by Port B read
select (RENB). The B0-B17 outputs are in the high-impedance state when
REN is LOW. The B0-B17 outputs are active when REN IS HIGH. Data is
read from FIFO1 to the B0-B17 outputs by a LOW-to-HIGH transition of
CLKB when RENB is HIGH, EFB is HIGH, and either SIZ0 or SIZ1 is LOW
(see Table 3).
Data is loaded into FIFO2 from the C0-C17 inputs on a LOW-to-HIGH
transition of CLKC when WENC is HIGH, FFC is HIGH, and either SIZ0 or
SIZ1 is LOW (see Table 4).
The setup and hold time constraints to the Port Clocks for the Port A chip select
(CSA) and write/read selects (W/RA, RENB, WENC) are only for enabling
write and read operations and are not related to high-impedance control of the
data outputs. If a port enable is LOW during a clock cycle, the Port Chip select
(for Port A) and write/read select (for all ports) can change states during the
setup and hold time window of the cycle.
RESET
The IDT723616 is reset by taking the reset (RST) input LOW for at least
four Port A clock (CLKA), four Port B clock (CLKB) and four Port C clock
(CLKC) LOW-to-HIGH transitions. The reset input can switch asynchronously to the clocks. A device reset initializes the internal read and write
pointers of each FIFO and forces the full flags (FFA, FFC) LOW, the empty
flags (EFA, EFB) LOW, the Almost-Empty flags (AEA, AEB) LOW and the
Almost-Full flags (AFA, AFC) HIGH. After a reset, FFA is set HIGH after
two LOW-to-HIGH transitions of CLKA and FFC is set HIGH after two
LOW-to-HIGH transitions of CLKC. The device must be reset after power
up before data is written to its memory.
A LOW-to-HIGH transition on the RST input loads the Almost-Full and
Almost-Empty Offset register (X) with the values selected by the flagselect (FS0, FS1) inputs. The values that can be loaded into the registers
are shown in Table 1.
TABLE 1 — FLAG PROGRAMMING
FS1
FS0
RST
ALMOST-FULL AND
ALMOST-EMPTY FLAG
OFFSET REGISTER (X)
H
H
↑
16
H
L
↑
12
L
H
↑
8
L
L
↑
4
TABLE 2 — PORT-A ENABLE FUNCTION TABLE
CSA
W/RA
ENA
CLKA
A0-A35 Outputs
Port Functions
H
X
X
X
In High-Impedance State
None
L
H
L
X
In High-Impedance State
None
L
H
H
↑
In High-Impedance State
FIFO1 Write
L
L
L
X
Active, FIFO2 Output Register
None
L
L
H
↑
Active, FIFO2 Output Register
FIFO2 Read
TABLE 3 — PORT-B ENABLE FUNCTION TABLE
RENB
SIZ1, SIZ0
L
X
H
One or the other LOW
(1)
CLKB
B0-B17 Outputs
Port Functions
X
In High-Impedance State
None
↑
Active, FIFO1 Output Register
FIFO1 read
NOTE:
1. At no time during the operation of the FIFO is it permissible to apply a LOW logic level simultaneously to both SIZ0 and SIZ1, nor is it permissible to apply a HIGH logic level
simultaneously to both these inputs. These state combinations are reserved.
TABLE 4 — PORT-C ENABLE FUNCTION TABLE
WENC
SIZ1, SIZ0
CLKC
C0-C17 Inputs
Port Functions
L
X
X
In High-Impedance State
None
H
One or the other LOW(1)
↑
In High-Impedance State
FIFO2 write
NOTE:
1. At no time during the operation of the FIFO is it permissible to apply a LOW logic level simultaneously to both SIZ0 and SIZ1, nor is it permissible to apply a HIGH logic level
simultaneously to both these inputs. These state combinations are reserved.
10
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
SYNCHRONIZED FIFO FLAGS
Each FIFO is synchronized to its Port Clock through two flip-flop stages. This
is done to improve flag reliability by reducing the probability of metastable
events on the output when CLKA operates asynchronously relative to CLKB
or CLKC. EFA, AEA, FFA, and AFA are synchronized to CLKA. EFB and AEB
are synchronized to CLKB. FFC and AFC are synchronized to CLKC. Tables
5 and 6 show the relationship of each port flag to FIFO1 and FIFO2.
location is ready to be written in a minimum of three cycles of the full flag
synchronizing clock. Therefore, a full flag is LOW if less than two cycles of the
full flag synchronizing clock have elapsed since the next memory write location
has been read. The second LOW-to-HIGH transition on the full flag synchronization clock after the read sets the full flag HIGH and the data can be written
in the following clock cycle.
A LOW-to-HIGH transition on a full flag synchronizing clock begins the first
synchronization cycle of a read if the clock transition occurs at time t SKEW1 or
greater after the read. Otherwise, the subsequent clock cycle can be the first
synchronization cycle (see Figure 14 and 15).
EMPTY FLAGS (EFA, EFB)
The empty flag of a FIFO is synchronized to the Port Clock that reads
data from its array. When the empty flag is HIGH, new data can be read
to the FIFO output register. When the empty flag is LOW, the FIFO is
empty and attempted FIFO reads are ignored. When reading FIFO1 with
a byte or word size on Port B, EFB is set LOW when the fourth byte or
second word of the last long word is read.
The read pointer of a FIFO is incremented each time a new word is
clocked to the output register. The state machine that controls an empty
flag monitors a write-pointer and read-pointer comparator that indicates when
the FIFO SRAM status is empty, empty+1, or empty+2. A word written to a FIFO
can be read to the FIFO output register in a minimum of three cycles of the empty
flag synchronizing clock. Therefore, an empty flag is LOW if a word in memory
is the next data to be sent to the FIFO output register and two cycles of the Port
Clock that reads data from the FIFO have not elapsed since the time the word
was written. The empty flag of the FIFO is set HIGH by the second LOW-toHIGH transition of the synchronizing clock, and the new data word can be read
to the FIFO output register in the following cycle.
A LOW-to-HIGH transition on an empty flag synchronizing clock begins the
first synchronization cycle of a write if the clock transition occurs at time tSKEW1
or greater after the write. Otherwise, the subsequent clock cycle can be the
first synchronization cycle (see Figure 12 and 13).
ALMOST-EMPTY FLAGS (AEA, AEB)
The Almost-Empty flag of a FIFO is synchronized to the Port Clock that reads
data from its array. The state machine that controls an Almost-Empty flag
monitors a write-pointer and a read-pointer comparator that indicates when
the FIFO SRAM status is almost-empty, almost-empty+1, or almost-empty+2.
The almost-empty state is defined by the value of the Almost-Full and AlmostEmpty Offset register (X). This register is loaded with one of four preset values
during a device reset (see Reset above). An Almost-Empty flag is LOW when
the FIFO contains X or less long words in memory and is HIGH when the FIFO
contains (X+1) or more long words.
Two LOW-to-HIGH transitions of the Almost-Empty flag synchronizing clock
are required after a FIFO write for the Almost-Empty flag to reflect the new level
of fill. Therefore, the Almost-Empty flag of a FIFO containing (X+1) or more
long words remains LOW if two cycles of the synchronizing clock have not
elapsed since the write that filled the memory to the (X+1) level. An AlmostEmpty flag is set HIGH by the second LOW-to-HIGH transition of the
synchronizing clock after the FIFO write that fills memory to the (X+1) level.
A LOW-to-HIGH transition of an Almost-Empty flag synchronizing clock begins
the first synchronization cycle if it occurs at time tSKEW2 or greater after the
write that fills the FIFO to (X+1) long words. Otherwise, the subsequent
synchronizing clock cycle can be the first synchronization cycle (see Figure
16 and 17).
FULL FLAG (FFA, FFC)
The full flag of a FIFO is synchronized to the Port Clock that writes data to
its array. When the full flag is HIGH, a memory location is free in the SRAM
to receive new data. No memory locations are free when the full flag is LOW
and attempted writes to the FIFO are ignored.
Each time a word is written to a FIFO, the write pointer is incremented.
The state machine that controls a full flag monitors a write-pointer and
read-pointer comparator that indicates when the FIFO SRAM status is full, full1, or full-2. From the time a word is read from a FIFO, the previous memory
ALMOST-FULL FLAGS (AFA, AFC)
The Almost-Full flag of a FIFO is synchronized to the Port Clock that writes
data to its array. The state machine that controls an Almost-Full flag monitors
a write-pointer and read-pointer comparator that indicates when the FIFO
SRAM status is almost-full, almost-full-1, or almost-full-2. The almost-full state
is defined by the value of the Almost-Full and Almost-Empty Offset register (X).
TABLE 6 — FIFO2 FLAG OPERATION
TABLE 5 — FIFO1 FLAG OPERATION
Number of 36-Bit
Words in the FIFO1(1)
0
Synchronized
to CLKB
Synchronized
to CLKA
EFB
AEB
AFA
FFA
L
L
H
H
Number of 36-Bit
Words in the FIFO2(1
Synchronized
to CLKA
Synchronized
to CLKC
EFA
AEA
AFC
FFC
0
L
L
H
H
H
L
H
H
1 to X
H
L
H
H
1 to X
(X+1) to [64–(X+1)]
H
H
H
H
(X+1) to [64–(X+1)]
H
H
H
H
(64–X) to 63
H
H
L
H
(64–X) to 63
H
H
L
H
64
H
H
L
L
64
H
H
L
L
NOTE:
1. X is the value in the Almost-Empty flag and Almost-Full flag Offset register.
11
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
This register is loaded with one of four preset values during a device reset (see
Reset above). An Almost-Full flag is LOW when the FIFO contains (64-X) or
more long words in memory and is HIGH when the FIFO contains [64-(X+1)]
or less long words.
Two LOW-to-HIGH transitions of the Almost-Full flag synchronizing clock
are required after a FIFO read for the Almost-Full flag to reflect the new level
of fill. Therefore, the Almost-Full flag of a FIFO containing [64-(X+1)] or less
words remains LOW if two cycles of the synchronizing clock have not elapsed
since the read that reduced the number of long words in memory to [64-(X+1)].
An Almost-Full flag is set HIGH by the second LOW-to-HIGH transition of the
synchronizing clock after the FIFO read that reduces the number of long words
in memory to [64-(X+1)]. A LOW-to-HIGH transition of an Almost-Full flag
synchronizing clock begins the first synchronization cycle if it occurs at time
tSKEW2 or greater after the read that reduces the number of long words in
memory to [64-(X+1)]. Otherwise, the subsequent synchronizing clock cycle
can be the first synchronization cycle (see Figure 18 and 19).
data port size selection. The order of the bytes are rearranged within the long
word, but the bit order within the bytes remains constant.
The swap configuration can be selected independently for ports B and C.
The Port B Swap Select inputs (SWB0 and SWB1) are used to choose the byte
arrangement for Port B. The Port C Swap Select inputs (SWC0 and SWC1)
are used to choose the byte arrangement for Port C. The levels applied to the
swap select must be static throughout FIFO operation. These levels can only
be changed when the FIFO is idle (no read or write activity) just preceding
Master Reset operation. Figures 3 and 4 are examples of the byte-order
swapping operations available for 18-bit words. Performing a byte swap and
bus size simultaneously for a FIFO1 read first rearranges the bytes as shown
in Figure 3, then outputs the bytes as shown in Figure 2. Simultaneous bus
sizing and byte swapping operations for FIFO2 writes first loads the data
according to Figure 2, then swaps the bytes as shown in Figure 4 when the
long word is loaded to FIFO2 RAM.
PARITY CHECKING
The Port A inputs (A0-A35) have four parity trees to check the parity of
incoming (or outgoing) data; the Port B inputs (B0-B17) have two parity trees
to check the parity of outgoing data; Port C inputs (C0-C17) have two parity
trees to check the parity of incoming data. A parity failure on one or more bytes
of the Port A data bus is reported by a LOW level on the port parity error flag
(PEFA). A parity failure on one or more bytes of the Port C data bus that are
valid for the bus size implementation is reported by a LOW level on the Port
C parity error flag (PEFC). Odd or even parity checking can be selected, and
the parity error flags can be ignored if this feature is not desired.
Parity status is checked on each input bus according to the level of the ODD/
EVEN parity select input. A parity error on one or more valid bytes of a port
is reported by a LOW level on the corresponding port parity error flag (PEFA,
PEFC) output. Port A bytes are arranged as A0-A8, A9-A17, A18-A26, and
A27-A35. Port C bytes are arranged as C0-C8 and C9-C17, and its valid bytes
are those used in a Port C bus size implementation. When ODD/EVEN parity
is selected, a port parity error flag (PEFA, PEFC) is LOW if any byte on the
port has an ODD/EVEN number of LOW levels applied to the bits.
BUS SIZING
Both ports B and C, taken together, may be configured for either an 18bit word or a 9-bit byte format, thus determining the word width of the data
read from FIFO1 or written to FIFO2. Whichever bus size is selected
applies to both ports B and C. It is not possible to configure the bus width of ports
B and C independently.
The levels applied to the bus size select (SIZ0, SIZ1) inputs must be static
through out FIFO operation. These levels can only be changed when the FIFO
is idle (no read or write activity) just preceding Master Reset operation. The
bus size as selected using SIZ0 and SIZ1 is implemented according to Figure
2. Note that neither a HIGH nor a LOW logic level should be applied to both
SIZ0 and SIZ1 at the same time; these states are reserved.
Only 36-bit long-word data is written to or read from the two FIFO memories
on the IDT723616. Bus-matching operations are done after data is read from
the FIFO1 RAM and before data is written to the FIFO2 RAM.
BUS-MATCHING FIFO1 READS
Data is read from the FIFO1 RAM in 36-bit long word increments. Since
Port B can only have a byte or word size, only the first one or two bytes
appear on the selected portion of the FIFO1 output register, with the rest
of the long word stored in auxiliary registers. In this case, subsequent
FIFO1 reads with the same bus size implementation output the rest of the
long word to the FIFO1 output register in the order shown by Figure 2.
When reading data from FIFO1 in byte format, the unused B0-B17
outputs remain inactive but static, with the unused FIFO1 output register
bits holding the last data value to decrease power consumption.
PARITY GENERATION
A HIGH level on the Port A parity generate select (PGA) or Port B parity
generate select (PGB) enables the IDT723616 to generate parity bits for port
reads from a FIFO. Port A bytes are arranged as A0-A8, A9-A17, A18-26,
and A27-A35, with the most significant bit of each byte used as the parity bit.
Port B bytes are arranged as B0-B8 and B9-B17, with the most significant bit
of each byte used as the parity bit. A write to a FIFO stores the levels applied
to all nine inputs of a byte regardless of the state of the parity generate select
(PGA, PGB) inputs. When data is read from a port with parity generation
selected, the lower eight bits of each byte are used to generate a parity bit
according to the level on the ODD/EVEN select. The generated parity bits are
substituted for the levels originally written to the most significant bits of each byte
as the word is read to the data outputs.
Parity bits for FIFO data are generated after the data is read from SRAM
and before the data is written to the output register. Therefore, the Port A parity
generate select (PGA) and ODD/EVEN parity select (ODD/EVEN) have setup
and hold time constraints to the Port A clock (CLKA) and the Port B parity
generate select (PGB) and ODD/EVEN have setup and hold-time constraints
to the Port B clock (CLKB). These timing constraints only apply for a rising clock
edge used to read a new long word to the FIFO output register.
BUS-MATCHING FIFO2 WRITES
Data is written to the FIFO2 RAM in 36-bit long word increments. Data
can be written to FIFO2 with a byte or word bus size. This action stores the
initial bytes or words in auxiliary registers. The CLKC rising edge that
writes the fourth byte or the second word of long word to FIFO2 also stores
the entire long word in FIFO2 RAM. The bytes are arranged in the manner
shown in Figure 2.
BYTE SWAPPING
The byte-order arrangement of data read from FIFO1 or data written to
FIFO2 can be changed synchronous to the rising edge of CLKB. Four
modes of byte-order swapping (including no swap) can be done with any
12
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
A35⎯A27
A26⎯A18
BYTE ORDER ON PORT A:
A
B
B17⎯B9
B8⎯B0
A
B
B17⎯B9
B8⎯B0
SIZ1
SIZ0
L
H
C
D
A17⎯A9
1st: Read
from FIFO1
2nd: Read
from FIFO1
A8⎯A0
Write to FIFO1/
Read From FIFO2
D
C
C17⎯C9
C8⎯C0
C
D
C17⎯C9
C8⎯C0
A
B
C17⎯C9
C8⎯C0
1st: Write
to FIFO2
2nd: Write
to FIFO2
WORD SIZE
B17⎯B9
SIZ1
H
SIZ0
L
B8⎯B0
1st: Read
from FIFO1
A
B17⎯B9
2nd: Read
from FIFO1
B
B17⎯B9
B8⎯B0
D
C17⎯C9
B8⎯B0
BYTE SIZE
2nd: Write
to FIFO2
C8⎯C0
B
C17⎯C9
4th: Read
from FIFO1
C8⎯C0
C
3rd: Read
from FIFO1
C
B17⎯B9
C17⎯C9
B8⎯B0
1st: Write
to FIFO2
D
3rd: Write
to FIFO2
C8⎯C0
A
4th: Write
to FIFO2
3520 fig01
NOTE:
1. At no time during the operation of the FIFO is it permissible to apply a LOW logic level simultaneously to both SIZ0 and SIZ1, nor is it permissible to apply a HIGH logic level
simultaneously to both these inputs. These state combinations are reserved.
Figure 2. Bus Sizing
13
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
Byte order on Port A:
SWB1 SWB0
L
L
A35⎯A27
A26⎯A18
A17⎯A9
A8⎯A0
A
B
C
D
B17⎯B9
B8⎯B0
A
B
1st: Read from FIFO1
C
D
2nd: Read from FIFO1
Write to FIFO1
NO SWAP
SWB1 SWB0
L
H
B17⎯B9
B8⎯B0
D
C
1st: Read from FIFO1
B
A
2nd: Read from FIFO1
BYTE SWAP
SWB1 SWB0
H
L
B17⎯B9
B8⎯B0
C
D
1st: Read from FIFO1
A
B
2nd: Read from FIFO1
WORD SWAP
SWB1 SWB0
H
H
B17⎯B9
B8⎯B0
B
A
1st: Read from FIFO1
D
C
2nd: Read from FIFO1
BYTE-WORD SWAP
Figure 3. Port B Byte Swapping (Word Size Example)
14
3520 fig01a
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
A35⎯A27
BYTE ORDER ON PORT A:
A
A26⎯A18
A17⎯A9
A8⎯A0
B
C
D
C17⎯C9
SWC1 SWC0
L
Read from FIFO2
C8⎯C0
C
D
1st: Write to FIFO2
A
B
2nd: Write to FIFO2
L
NO SWAP
C17⎯C9
C8⎯C0
B
A
1st: Write to FIFO2
D
C
2nd: Write to FIFO2
SWC1 SWC0
L
H
BYTE SWAP
C17⎯C9
C8⎯C0
A
B
1st: Write to FIFO2
C
D
2nd: Write to FIFO2
SWC1 SWC0
H
L
WORD SWAP
C17⎯B9
SWC1 SWC0
H
C8⎯B0
D
C
1st: Write to FIFO2
B
A
2nd: Write to FIFO2
H
BYTE-WORD SWAP
Figure 4. Port C Byte Swapping (Word Size Example)
15
3520 fig01b
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
CLKA
CLKB
} tRSTH
CLKC
tRSTS }
tFSH
tFSS
RST
FS1,FS0
0,1
tWFF
tWFF
FFA
tREF
EFA
tWFF
tWFF
FFB
tREF
EFB
tPAE
AEA
tPAF
AFA
tPAE
AEB
tPAF
AFC
3520 drw05
Figure 5. Device Reset Loading the X Register with the Value of Eight
tCLKH
tCLK
tCLKL
CLKA
FFA HIGH
tENS
tENH
tENS
tENH
tENS
tENH
CSA
W/RA
tENS
tENH
tENS
tENH
ENA
tDH
tDS
A0 - A35
ODD/
EVEN
PEFA
W1(1)
W2(1)
tPDPE
No Operation
tPDPE
Valid
Valid
3520 drw06
NOTE:
1. Written to FIFO1.
Figure 6. Port-A Write Cycle Timing for FIFO1
16
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
CLKC
FFC HIGH
tENH
tENS
tENH
tENS
WENC
tDH
tDS
C0-C17
ODD/EVEN
tPDPE
tPDPE
PEFC
VALID
VALID
3520 drw07
NOTE:
1. PEFC indicates parity error for the following bytes: C17-C9 and C8-C0.
DATA SWAP TABLE FOR WORD WRITES TO FIFO2
SWAP
WRITE
MODE
NO.
SWC1
SWC0
L
L
L
H
H
H
L
H
DATA WRITTEN TO FIFO2
DATA READ FROM FIFO2
C17-C9
C8-C0
A35-27
A26-A18
A17-A9
A8-A0
1
C
D
A
B
C
D
2
A
B
1
B
A
A
B
C
D
2
D
C
A
B
C
D
A
B
C
D
1
A
B
2
C
D
1
2
D
B
C
A
Figure 7. Port-C Word Write Cycle Timing for FIFO2
17
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
CLKC
FFC HIGH
tENS
tENH
tENS
tENH
WENC
tDS
tDH
C0-C8
ODD/EVEN
tPPE
tPDPE
PEFC
tPDPE
tPDPE
Valid
Valid
Valid
3520 drw08
Valid
NOTE:
1. PEFC indicates parity error for the following byte: C8—C0.
DATA SWAP TABLE FOR BYTE WRITES TO FIFO2
SWC1
L
L
H
H
SWAP
WRITE
MODE
NO.
SWC0
L
H
L
H
DATA WRITTEN TO FIFO2
C8-C0
1
D
2
3
C
B
4
A
1
2
3
A
B
C
4
D
1
2
3
B
A
D
4
C
1
2
3
4
C
D
A
B
A35-27
DATA READ FROM FIFO2
A26-A18
A8-A0
A
B
C
D
A
B
C
D
A
B
C
D
A
B
C
D
Figure 8. Port-C Byte Write Cycle Timing for FIFO2
18
A17-A9
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
CLKB
EFB
HIGH
tENH
tENS
RENB
tPGS
PGB,
ODD/
EVEN
tPGH
tEN
tA
Previous Data
B0-B17
tDIS
tA
Read 1
Read 2
3520drw09
DATA SWAP TABLE FOR WORD READS FROM FIFO1
SWAP MODE
DATA WRITTEN TO FIFO1
READ
NO.
SWB1
SWB0
A35-A27
A26-A18
A17-A9
A8-A0
L
L
A
B
C
D
L
H
A
B
C
H
L
A
B
H
H
A
B
DATA READ FROM FIFO1
B17-B9
B8-B0
1
2
A
C
B
D
D
1
2
D
B
C
A
C
D
1
2
C
A
D
B
C
D
1
2
B
D
A
C
Figure 9. Port-B Word Read Cycle Timing for FIFO1
19
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
CLKB
EFB HIGH
tENS
tENH
RENB
tSZS
PGB,
ODD/
EVEN
tSZH
tPGS
tPGH
tEN
B0-B8
tA
tA
tA
Previous Data
Read 1
tDIS
tA
Read 2
Read 4
Read 3
3520 drw10
NOTE:
1. Unused bytes hold last FIFO1 output register data for byte-size reads.
DATA SWAP TABLE FOR BYTE READS FROM FIFO1
SWAP MODE
SWB1
L
L
H
H
DATA WRITTEN TO FIFO 1
SWB0
L
H
L
H
A35-A27
A
A
A
A
A26-A18
READ
NO.
A17-A9
B
C
B
C
B
C
B
C
A8-A0
D
D
D
D
Figure 10. Port-B Byte Read Cycle Timing for FIFO1
20
DATA READ
FROM FIFO 1
B17-B9
1
2
3
4
A
B
C
D
1
2
3
4
D
C
B
A
1
2
3
4
C
D
A
B
1
2
3
4
B
A
D
C
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
tCLK
tCLKH
tCLKL
CLKA
EFA HIGH
CSA
W/RA
tENS
tENH
tENS
tENH
tENH
tENS
ENA
tEN
A0 - A35
tPGS
Previous Data
tPGH
No Operation
tA
tA
Word 1 (1)
tPGS
tDIS
Word 2 (1)
tPGH
PGA,
ODD/
EVEN
3520 drw11
NOTE:
1. Read from FIFO2.
Figure 11. Port-A Read Cycle Timing for FIFO2
tCLK
tCLKH tCLKL
CLKA
CSA
LOW
WRA
HIGH
tENS
tENH
HIGH
tDS
tDH
ENA
FFA
A0 - A35
W1
(1)
tSKEW1
CLKB
tCLK
tCLKH tCLKL
1
2
tREF
EFB
tREF
FIFO1 Empty
tENS
tENH
RENB
tEN
B0 -B17
tA
tA
Read 1
Previous Data
tDIS
Read 2
3520 drw12
NOTES:
1. tSKEW1 is the minimum time between a rising CLKA edge and a rising CLKB edge for EFB to transition HIGH in the next CLKB cycle. If the time between the rising CLKA edge
and rising CLKB edge is less than tSKEW1, then the transition of EFB HIGH may occur one CLKB cycle later than shown.
2. Port-B size is word or byte; EFB is set LOW by the last word or byte read from FIFO1, respectively. (The word-size case is shown.)
Figure 12. EFB Flag Timing and First Data Read when FIFO1 is Empty
21
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
tCLK
tCLKH tCLKL
CLKC
tENS
tENH
WENC
FFC
HIGH
tDS
C0 - C17
tDH tDS
Write 1
tDH
Write 2
(1)
tCLKH
1
tSKEW1
CLKA
EFA
tCLK
tCLKL
2
tREF
tREF
FIFO2 Empty
CSA
LOW
W/RA
LOW
tENS
tENH
ENA
tA
A0 -A35
W1
3520 drw13
NOTES:
1. tSKEW1 is the minimum time between a rising CLKC edge and a rising CLKA edge for EFA to transition HIGH in the next CLKA cycle. If the time between the rising CLKC
edge and rising CLKA edge is less than tSKEW1, then the transition of EFA HIGH may occur one CLKA cycle later than shown.
2. Port-C size is word or byte; tSKEW1 is referenced to the rising CLKC edge that writes the last word or byte of the long word, respectively. (The word-size case is shown.)
Figure 13. EFA Flag Timing and First Data Read when FIFO2 is Empty
tCLKH
tCLK
tCLKL
CLKB
tENH
tENS
RENB
EFB
HIGH
tEN
tA
tDIS
tA
Read 1
B0 - B17
Previous Word in
FIFO1 Output Register
Read 2
tSKEW1
(1)
tCLKH
CLKA
1
tCLK
tCLKL
2
tWFF
FFA
tWFF
FIFO1 Full
CSA
LOW
WRA
HIGH
tENS
tENH
ENA
tDS
tDH
A0 - A35
To FIFO1
3520 drw14
NOTES:
1. tSKEW1 is the minimum time between a rising CLKB edge and a rising CLKA edge for FFA to transition HIGH in the next CLKA cycle. If the time between the rising CLKB
edge and rising CLKA edge is less than tSKEW1, then FFA may transition HIGH one CLKA cycle later than shown.
2. Port-B size is word or byte; tSKEW1 is referenced from the rising CLKB edge that reads the last word or byte of the long word, respectively. (The word-size case is shown.)
Figure 14. FFA Flag Timing and First Available Write when FIFO1 is Full
22
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
tCLKH
tCLK
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
tCLKL
CLKA
CSA LOW
W/RA LOW
tENH
tENS
ENA
EFA HIGH
A0 - A35
tA
Previous Word in FIFO2 Output Register
Next Word From FIFO2
tSKEW1(1)
CLKC
tCLKH
1
tCLK
tCLKL
2
tWFF
tWFF
FFC
FIFO2 Full
tENH
tENS
WENC
tDS
tDH
tDH
tDS
C0 - C17
3520 drw15
To FIFO2
NOTES:
1. tSKEW1 is the minimum time between a rising CLKA edge and a rising CLKB edge for FFB to transition HIGH in the next CLKB cycle. If the time between the rising CLKA edge
and rising CLKB edge is less than tSKEW1, then FFB may transition HIGH one CLKB cycle later than shown.
2. Port-C size is word or byte; FFC is set LOW by the last word or byte write of the long word, respectively. (The word-size case is shown.)
Figure 15. FFC Flag Timing and First Available Write when FIFO2 is Full
CLKA
tENS
tENH
ENA
tSKEW2
(1)
1
CLKB
2
tPAE
tPAE
AEB
X Long Word in FIFO1
(X+1) Long Words in FIFO1
tENS
tENH
RENB
3520 drw16
NOTES:
1. tSKEW2 is the minimum time between a rising CLKA edge and a rising CLKB edge for AEB to transition HIGH in the next CLKB cycle. If the time between the rising CLKA
edge and rising CLKB edge is less than tSKEW2, then AEB may transition HIGH one CLKB cycle later than shown.
2. FIFO1 Write (CSA = LOW, W/RA = HIGH).
3. Port-B size is word or byte; AEB is set LOW by the last word or byte read of the long word, respectively.
Figure 16. Timing for AEB when FIFO1 is Almost-Empty
CLKC
tENS
tENH
WENC
t SKEW2 (1)
CLKA
AEA
1
2
tPAE
tPAE
X Long Words in FIFO2
(X+1) Long Words in FIFO2
tENH
tENS
ENA
3520 drw17
NOTES:
1. tSKEW2 is the minimum time between a rising CLKC edge and a rising CLKA edge for AEA to transition HIGH in the next CLKA cycle. If the time between the rising CLKC edge
and rising CLKA edge is less than tSKEW2, then AEA may transition HIGH one CLKA cycle later than shown.
2. FIFO2 read (CSA = LOW, W/RA = LOW).
3. Port-C size is word or byte; tSKEW2 is referenced from the rising CLKC edge that writes the last word or byte of the long word, respectively.
Figure 17. Timing for AEA when FIFO2 is Almost-Empty
23
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
tSKEW2
(1)
CLKA
1
2
tENH
tENS
ENA
tPAF
AFA [64-(X+1)] Long Words in FIFO1
tPAF
(64-X) Long Words in FIFO1
CLKB
tENS
tENH
RENB
3520 drw18
NOTES:
1. tSKEW2 is the minimum time between a rising CLKA edge and a rising CLKB edge for AFA to transition HIGH in the next CLKA cycle. If the time between the rising CLKA
edge and rising CLKB edge is less than tSKEW2, then AFA may transition HIGH one CLKB cycle later than shown.
2. FIFO1 Write (CSA = LOW, W/RA = HIGH).
3. Port-B size is word or byte; tSKEW2 is referenced from the last word or byte read of the long word, respectively.
Figure 18. Timing for AFA when FIFO1 is Almost-Full
tSKEW2 (1)
1
CLKC
2
tENH
tENS
WENC
tPAF
AFC
(64-X) Long Words in FIFO2
[64-(X+1)] Long Words in FIFO2
tPAF
CLKA
tENH
tENS
ENA
3520drw19
NOTES:
1. tSKEW2 is the minimum time between a rising CLKC edge and a rising CLKA edge for AFC to transition HIGH in the next CLKC cycle. If the time between the rising
CLKC edge and rising CLKA edge is less than tSKEW2, then AFC may transition HIGH one CLKA cycle later than shown.
2. Port-C size is word or byte; AFC is set LOW by the last word or byte read of the long word, respectively.
Figure 19. Timing for AFC when FIFO2 is Almost-Full
ODD/
EVEN
W/RA
PGA
tPOPE
PEFA
Valid
tPOPE
Valid
tPEPE
tPEPE
Valid
Valid
3520 drw20
Figure 20. ODD/EVEN, W/RA and PGA to PEFA Timing
ODD/
EVEN
tPOPE
tPOPE
PEFC
Valid
Valid
Valid
3520 drw21
Figure 21. ODD/EVEN to PEFC Timing
24
™ WITH
IDT723616 CMOS TRIPLE BUS SyncFIFO™
BUS-MATCHING AND BYTE SWAPPING 64 x 36 x 2
COMMERCIAL AND INDUSTRIAL
TEMPERATURE RANGES
PARAMETER MEASUREMENT INFORMATION
5V
1.1 kΩ
From Output
Under Test
30 pF
(1)
680Ω
LOAD CIRCUIT
3V
Timing
Input
1.5 V
GND
tS
th
GND
tW
3V
1.5 V
1.5 V
1.5 V
1.5 V
3V
Data,
Enable
Input
Low-Level
Input
GND
VOLTAGE WAVEFORMS
SETUP AND HOLD TIMES
1.5 V
1.5 V
GND
VOLTAGE WAVEFORMS
PULSE DURATIONS
3V
Output
Enable
1.5 V
tPLZ
1.5 V
GND
tPZL
1.5 V
Low-Level
Output
≈3 V
Input
VOL
tPZH
VOH
High-Level
Output
3V
High-Level
Input
1.5 V
tPHZ
3V
1.5 V
1.5 V
tPD
tPD
In-Phase
Output
GND
1.5 V
1.5 V
≈OV
VOH
VOL
VOLTAGE WAVEFORMS
PROPAGATION DELAY TIMES
VOLTAGE WAVEFORMS
ENABLE AND DISABLE TIMES
3520 drw22
NOTE:
1. Includes probe and jig capacitance.
Figure 22. Load Circuit and Voltage Waveforms
25
ORDERING INFORMATION
X
XXXXXX
Device Type Power
XX
X
Speed Package
X
X
Process/
Temperature
Range
BLANK
I(1)
Commercial (0°C to +70°C)
Industrial (40°C to +85°C)
G(2)
Green
PF
Thin Quad Flat Pack (TQFP, PK128-1)
15
20
Commercial Only
Com'l & Ind'l
L
Low Power
723616
4 x 36 x 2⎯Triple Bus SyncFIFO
Clock Cycle Time (tCLK)
Speed in Nanoseconds
3520 drw23
NOTES:
1. Industrial temperature range product for 20ns speed grade is available as a standard device. All other speed grades are available by special order.
2. Green parts available. For specific speeds and packages contact your sales office.
DATASHEET DOCUMENT HISTORY
03/05/2002
02/04/2009
11/21/2014
08/08/2019
pgs. 1, 6, 8, 9 and 26.
pgs. 1, and 26.
PDN# CQ-14-08 issued. See IDT.com for PDN specifics.
Datasheet changed to Obsolete Status.
CORPORATE HEADQUARTERS
6024 Silver Creek Valley Road
San Jose, CA 95138
for SALES:
800-345-7015 or 408-284-8200
fax: 408-284-2775
www.idt.com
26
for Tech Support:
408-360-1753
email: FIFOhelp@idt.com
IMPORTANT NOTICE AND DISCLAIMER
RENESAS ELECTRONICS CORPORATION AND ITS SUBSIDIARIES (“RENESAS”) PROVIDES TECHNICAL
SPECIFICATIONS AND RELIABILITY DATA (INCLUDING DATASHEETS), DESIGN RESOURCES (INCLUDING
REFERENCE DESIGNS), APPLICATION OR OTHER DESIGN ADVICE, WEB TOOLS, SAFETY INFORMATION, AND
OTHER RESOURCES “AS IS” AND WITH ALL FAULTS, AND DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE, OR NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY RIGHTS.
These resources are intended for developers skilled in the art designing with Renesas products. You are solely responsible
for (1) selecting the appropriate products for your application, (2) designing, validating, and testing your application, and (3)
ensuring your application meets applicable standards, and any other safety, security, or other requirements. These
resources are subject to change without notice. Renesas grants you permission to use these resources only for
development of an application that uses Renesas products. Other reproduction or use of these resources is strictly
prohibited. No license is granted to any other Renesas intellectual property or to any third party intellectual property.
Renesas disclaims responsibility for, and you will fully indemnify Renesas and its representatives against, any claims,
damages, costs, losses, or liabilities arising out of your use of these resources. Renesas' products are provided only subject
to Renesas' Terms and Conditions of Sale or other applicable terms agreed to in writing. No use of any Renesas resources
expands or otherwise alters any applicable warranties or warranty disclaimers for these products.
(Rev.1.0 Mar 2020)
Corporate Headquarters
Contact Information
TOYOSU FORESIA, 3-2-24 Toyosu,
Koto-ku, Tokyo 135-0061, Japan
www.renesas.com
For further information on a product, technology, the most
up-to-date version of a document, or your nearest sales
office, please visit:
www.renesas.com/contact/
Trademarks
Renesas and the Renesas logo are trademarks of Renesas
Electronics Corporation. All trademarks and registered
trademarks are the property of their respective owners.
© 2020 Renesas Electronics Corporation. All rights reserved.