CY7C43686 [CYPRESS]
1K/4K/16K x36/x18/x2 Tri Bus FIFO; 1K / 4K / 16K X36 / X18 / X2三总线FIFO型号: | CY7C43686 |
厂家: | CYPRESS |
描述: | 1K/4K/16K x36/x18/x2 Tri Bus FIFO |
文件: | 总39页 (文件大小:641K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
CY7C43666 CY7C436461K/4K/16K x36/x18/x2 Tri Bus FIFO
CY7C43646
CY7C43666
CY7C43686
1K/4K/16K x36/x18/x2 Tri Bus FIFO
• Fully asynchronous and simultaneous read and write
operation permitted
• Mailbox bypass register for each FIFO
Features
• High-speed, low-power, first-in first-out (FIFO) memo-
ries w/ three independent ports (one bidirectional x36,
and two unidirectional x18)
• 1K x36/x18x2 (CY7C43646)
• 4K x36/x18x2 (CY7C43666)
• 16K x36/x18x2 (CY7C43686)
• Parallel and Serial Programmable Almost Full and
Almost Empty flags
• Retransmit function
• Standard or FWFT mode user-selectable
• Partial Reset
• Big or Little Endian format for word or byte bus sizes
• 128-pin TQFP packaging
• Easily expandable in width and depth
• 0.35-micron CMOS for optimum speed/power
• High speed 133-MHz operation (7.5-ns read/write
cycle times)
• Low power
— ICC= 100 mA
— ISB= 10 mA
Logic Block Diagram
MBF1
CLKA
Mail1
CSA
Register
Port A
Control
Logic
W/RA
ENA
MBA
RT2
1K/4K/16K
x36
Dual Ported
Memory
B
0−17
CLKB
RENB
CSB
SIZEB
MBB
RTI
Port B
Control
Logic
MRS1
PRS1
FIFO1,
Mail1
Reset
Logic
Read
Pointer
Write
Pointer
FFA/IRA
AFA
Status
Flag Logic
EFB/ORB
AEB
Common
BE
Port Logic
(B and C)
SPM
FS0/SD
FS1/SEN
Timing
Mode
Programmable
Flag Offset
Registers
BE/FWFT
A
0−35
Status
Flag Logic
FFC/IRC
AFC
EFA/ORA
AEA
FIFO2,
Mail2
Reset
Logic
MRS2
PRS2
Write
Pointer
Read
Pointer
C
0−17
256/512/1K
4K/16K x36
Dual Ported
Memory
CLKC
WENC
Port C
Control
Logic
SIZEC
MBC
Mail2
Register
MBF2
Cypress Semiconductor Corporation
•
3901 North First Street
•
San Jose, CA 95134
•
408-943-2600
Document #: 38-06023 Rev. *C
Revised September 26, 2003
CY7C43646
CY7C43666
CY7C43686
Selection Guide
CY7C43646/66/86
-7
CY7C43646/66/86
-10
CY7C43646/66/86
-15
Unit
MHz
ns
Maximum Frequency
133
6
100
8
66.7
10
Maximum Access Time
Minimum Cycle Time
Minimum Data or Enable Set-up
Minimum Data or Enable Hold
Maximum Flag Delay
7.5
3
0
10
4
0
15
5
0
8
ns
ns
ns
ns
6
8
Active Power Supply
Commercial
Industrial
CY7C43646
100
100
100
100
CY7C43686
16K x 36
128 TQFP
mA
Current (ICC1
)
CY7C43666
4K x 36
128 TQFP
Density
Package
1K x 36
128 TQFP
Pin Configuration
TQFP
Top View
W/RA
ENA
CLKA
GND
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
CLKB
PRS2
CC
V
C
C
17
A
35
16
A
34
C
C
15
A
A
33
32
14
GND
MBC
V
CC
A
31
C
C
C
C
C
C
13
12
11
A
30
GND
A
A
A
A
A
A
A
29
28
27
26
25
24
23
10
9
8
CY7C43646
CY7C43666
CY7C43686
RT1
C
C
7
6
SIZEB
GND
BE/FWFT
GND
C
5
A
22
C
C
C
C
4
3
2
V
CC
A
A
A
A
21
20
19
18
1
C
0
GND
GND
B
17
A
A
A
A
A
17
16
15
14
13
B
16
SIZEC
73
V
15
72
CC
B
71
70
69
68
67
66
65
B
14
RT2
B
13
A
B
12
12
GND
GND
A
B
11
11
A
B
10
10
Document #: 38-06023 Rev. *C
Page 2 of 39
CY7C43646
CY7C43666
CY7C43686
memory). In the First-Word Fall-Through Mode (FWFT), the
first long-word (36-bit-wide) written to an empty FIFO appears
automatically on the outputs, no read operation required
(nevertheless, accessing subsequent words does necessitate
a formal read request). The state of the BE/FWFT pin during
FIFO operation determines the mode in use.
Each FIFO has a combined Empty/Output Ready flag
(EFA/ORA and EFB/ORB) and a combined Full/Input Ready
flag (FFA/IRA and FFC/IRC). The EF and FF functions are
selected in the CY Standard Mode. EF indicates whether the
memory is full or not. The IR and OR functions are selected in
the First-Word Fall-Through Mode. IR indicates whether or not
the FIFO has available memory locations. OR shows whether
the FIFO has data available for reading or not. It marks the
presence of valid data on the outputs.[1]
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.”[2]
IRA, IRC, AFA, and AFC are synchronized to the port clock
that writes data into its array. ORA, ORB, AEA, and AEB are
synchronized to the port clock that reads data from its array.
Programmable offset for AEA, AEB, AFA, and AFC are loaded
in parallel using Port A or in serial via the SD input. Three
default offset settings are also provided. The AEA and AEB
threshold can be set at 8, 16, or 64 locations from the empty
boundary and AFA and AFC threshold can be set at 8, 16, or
64 locations from the full boundary. All these choices are made
using the FS0 and FS1 inputs during Master Reset.
Functional Description
The CY7C436X6 is a monolithic, high-speed, low-power,
CMOS Bidirectional Synchronous (clocked) FIFO memory,
which supports clock frequencies up to 133 MHz and has read
access times as fast as 6 ns. Two independent 1K/4K/16K x36
dual-port SRAM FIFOs on board each chip buffer data in
opposite directions.
The CY7C436X6 is a synchronous (clocked) FIFO, meaning
each port employs a synchronous interface. All data transfers
through a port are gated to the LOW-to-HIGH transition of a
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 with synchronous control.
Communication between each port may bypass the FIFOs via
two mailbox registers. The mailbox registers’ width matches
the selected Port B or Port C bus width. Each mailbox register
has a flag (MBF1 and MBF2) to signal when new mail has
been stored.
Two kinds of reset are available on the CY7C436X6: Master
Reset and Partial Reset. Master Reset initializes the read and
write pointers to the first location of the memory array,
configures the FIFO for Big or Little Endian byte arrangement
and selects serial flag programming, parallel flag
programming, or one of the three possible default flag offset
settings, 8, 16, or 64. Each FIFO has its own independent
Master Reset pin, MRS1 and MRS2.
Partial Reset also sets the read and write pointers to the first
location of the memory. Unlike Master Reset, any settings
existing prior to Partial Reset (i.e., programming method and
partial flag default offsets) are retained. Partial Reset is useful
since it permits flushing of the FIFO memory without changing
any configuration settings. Each FIFO has its own,
independent Partial Reset pin, PRS1 and PRS2.
The CY7C436X6 have two modes of operation. In the CY
Standard Mode, 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
Two or more devices may be used in parallel to create wider
data paths. Such a width expansion requires no additional
external components.
The CY7C436X6 are characterized for operation from 0°C to
70°C commercial, and from –40°C to 85°C industrial. Input
ESD protection is greater than 2001V, and latch-up is prevented by
the use of guard rings.
Pin Definitions
Signal Name
A0–35
Description
Port A Data
I/O
Function
I/O 36-bit bidirectional data port for side A.
AEA
Port A Almost
Empty Flag
O
O
O
O
O
Programmable Almost Empty flag synchronized to CLKA. It is LOW when the
number of words in FIFO2 is less than or equal to the value in the Almost Empty A
offset register, X2.[2]
Programmable Almost Empty flag synchronized to CLKB. It is LOW when the
number of words in FIFO1 is less than or equal to the value in the Almost Empty B
offset register, X1.[2]
Programmable Almost Full flag synchronized to CLKA. It is LOW when the number
of empty locations in FIFO1 is less than or equal to the value in the Almost Full A offset
register, Y1.[2]
Programmable Almost Full flag synchronized to CLKC. It is LOW when the number
of empty locations in FIFO2 is less than or equal to the value in the Almost Full B offset
register, Y2.[2]
AEB
AFA
Port B Almost
Empty Flag
Port A Almost
Full Flag
AFC
B0–17
Port C Almost
Full Flag
Port B Data
18-bit output data port for port B.
Document #: 38-06023 Rev. *C
Page 3 of 39
CY7C43646
CY7C43666
CY7C43686
Pin Definitions (continued)
Signal Name
Description
I/O
Function
BE/FWFT
Big Endian/
First-Word
Fall-Through
Select
I
This is a dual-purpose pin. During Master Reset, a HIGH on BE will select Big Endian
operation. In this case, depending on the bus size, the most significant byte or word
on Port A is transferred to Port B first for A-to-B data flow. For data flowing from Port
C to Port A, the first word/byte written to Port C will come out as the most significant
word/byte on Port A. On the other hand a LOW on BE will select Little Endian operation.
In this case, the least significant byte or word on Port A is transferred to Port B first for
A to B data flow. Similarly, the first word/byte written into Port C will come out as the
least significant word/byte on Port A for C-to-A data flow. After Master Reset, this pin
selects the timing mode. A HIGH on FWFT selects CY Standard Mode, a LOW selects
First-Word Fall-Through Mode. Once the timing mode has been selected, the level on
this pin must be static throughout device operation.
C0–17
CLKA
Port B Data
Port A Clock
I
I
18-bit input data port for port C.
CLKA is a continuous clock that synchronizes all data transfers through Port A
and can be asynchronous or coincident to CLKB. FFA/IRA, EFA/ORA, AFA, and AEA
are all synchronized to the LOW-to-HIGH transition of CLKA.
CLKB
CLKC
Port B Clock
Port C Clock
I
I
CLKB is a continuous clock that synchronizes all data transfers through Port B
and can be asynchronous or coincident to CLKA. EFB/ORB and AEB are all synchro-
nized to the LOW-to-HIGH transition of CLKB.
CLKC is a continuous clock that synchronizes all data transfers through Port C
and can be asynchronous or coincident to CLKA. FFC/IRC, and AFC are all synchro-
nized to the LOW-to-HIGH transition of CLKC.
CSA
Port A Chip
Select
Port B Chip
Select
I
I
CSA must be LOW to enable a LOW-to HIGH transition of CLKA to read or write
on Port A. The A0−35 outputs are in the high-impedance state when CSA is HIGH.
CSB
CSB must be LOW to enable a LOW-to HIGH transition of CLKB to read or write
on Port B. The B0–17 outputs are in the high-impedance state when CSB is HIGH.
EFA/ORA
Port A
O
This is a dual-function pin. In the CY Standard Mode, the EFA function is selected.
EFA indicates whether or not the FIFO2 memory is empty. In the FWFT Mode, the ORA
function is selected. ORA indicates the presence of valid data on A0−35 outputs,
available for reading. EFA/ORA is synchronized to the LOW-to-HIGH transition of
CLKA.[1]
Empty/Output
Ready Flag
EFB/ORB
Port B
O
This is a dual-function pin. In the CY Standard Mode, the EFB function is selected.
EFB indicates whether or not the FIFO1 memory is empty. In the FWFT Mode, the ORB
function is selected. ORB indicates the presence of valid data on B0–17 outputs,
available for reading. EFB/ORB is synchronized to the LOW-to-HIGH transition of
CLKB.[1]
Empty/Output
Ready Flag
ENA
Port A Enable
Port B Enable
I
I
ENA must be HIGH to enable a LOW-to-HIGH transition of CLKA to read or write
data on Port A.
ENB
ENB must be HIGH to enable a LOW-to-HIGH transition of CLKB to read or write
data on Port B.
FFA/IRA
Port A Full/Input
Ready Flag
O
This is a dual-function pin. In the CY Standard Mode, the FFA function is selected.
FFA indicates whether or not the FIFO1 memory is full. In the FWFT mode, the IRA
function is selected. IRA indicates whether or not there is space available for writing to
the FIFO1 memory. FFA/IRA is synchronized to the LOW-to-HIGH transition of CLKA.
FFC/IRC
PortCFull/Input
Ready Flag
O
This is a dual-function pin. In the CY Standard Mode, the FFC function is selected. FFC
indicates whether or not the FIFO2 memory is full. In the FWFT mode, the IRC function
is selected. IRC indicates whether or not there is space available for writing to the
FIFO2 memory. FFC/IRC is synchronized to the LOW-to-HIGH transition of CLKB.
Notes:
1. When reading from the FIFO under FWFT, ORA/ORB signal should be included in the read logic to ensure proper operation. To read without gating the boundary
flag (e.g., in bursts), use CY standard mode.
2. When FIFO is operated at the almost empty/full boundary, there may be an uncertainty of up to three clock cycles for flag assertion and deassertion. Refer to
“Designing with CY7C436xx Synchronous FIFO” application notes for more details on flag uncertainties.
Document #: 38-06023 Rev. *C
Page 4 of 39
CY7C43646
CY7C43666
CY7C43686
Pin Definitions (continued)
Signal Name
Description
I/O
Function
FS1/SEN
Flag Offset
Select 1/Serial
Enable
Flag Offset
Select 0/Serial
Data
I
FS1/SEN and FS0/SD are dual-purpose inputs used for flag offset register
programming. During Master Reset, FS1/SEN and FS0/SD, together with SPM, select
the flag offset programming method. Three offset register programming methods are
available: automatically load one of three preset values (8, 16, or 64), parallel load from
Port A, or serial load. When serial load is selected for flag offset register programming,
FS1/SEN is used as an enable synchronous to the LOW-to-HIGH transition of CLKA.
When FS1/SEN is LOW, a rising edge on CLKA load the bit present on FS0/SD into
the X and Y registers. The number of bit writes required to program the offset registers
is 32 for the CY7C43626, 36 for the CY7C43636, 40 for the CY7C43646, 48 for the
CY7C43666, and 56 for the CY7C43686. The first bit write stores the Y-register MSB
and the last bit write stores the X-register LSB.
FS0/SD
I
MBA
MBB
Port A Mailbox
Select
I
I
A HIGH level on MBA chooses a mailbox register for a Port A read or write
operation. When a read operation is performed on Port A, a HIGH level on MBA selects
data from the Mail2 register for output and a LOW level selects FIFO2 output register
data for output. When a write operation is performed on Port A, a High level on MBA
will write the data into Mail 1 register, while a Low level will write the data into FIFO 1.
A HIGH level on MBB chooses a mailbox register for a Port B read operation. When
a read operation is performed on Port B, a HIGH level on MBB selects data from the
Mail1 register for output and a LOW level selects FIFO1 output register data for output.
Port B Mailbox
Select
MBC
Port C Mailbox
Select
I
When a write operation is performed on Port C, a HIGH level on MBC writes data
into Mail2 register, and a LOW level writes into FIFO2.
MBF1
Mail1 Register
Flag
O
MBF1 is set LOW by a LOW-to-HIGH transition of CLKA that writes data to the Mail1
register. Writes to the Mail1 register are inhibited while MBF1 is LOW. MBF1 is set
HIGH by a LOW-to-HIGH transition of CLKB when a Port B read is selected and MBB
is HIGH. MBF1 is set HIGH following either a Master or Partial Reset of FIFO1.
MBF2
MRS1
Mail2 Register
Flag
O
I
MBF2 is set LOW by a LOW-to-HIGH transition of CLKB that writes data to the Mail2
register. Writes to the Mail2 register are inhibited while MBF2 is LOW. MBF2 is set
HIGH by a LOW-to-HIGH transition of CLKA when a Port A read is selected and MBA
is HIGH. MBF2 is set HIGH following either a Master or Partial Reset of FIFO2.
A LOW on this pin initializes the FIFO1 read and write pointers to the first location
of memory and sets the Port B output register to all zeroes. A LOW pulse on MRS1
selects the programming method (serial or parallel) and one of three programmable
flag default offsets for FIFO1. It also configures Port B for bus size and endian
arrangement. Four LOW-to-HIGH transitions of CLKA and four LOW-to-HIGH transi-
tions of CLKB must occur while MRS1 is LOW.
FIFO1 Master
Reset
MRS2
FIFO2 Master
Reset
I
A LOW on this pin initializes the FIFO2 read and write pointers to the first location
of memory and sets the Port A output register to all zeroes. A LOW pulse on MRS2
selects one of three programmable flag default offsets for FIFO2. Four LOW-to-HIGH
transitions of CLKA and four LOW-to-HIGH transitions of CLKB must occur while MRS2
is LOW.
PRS1
PRS2
FIFO1 Partial
Reset
I
I
A LOW on this pin initializes the FIFO1 read and write pointers to the first location
of memory and sets the Port B output register to all zeroes. During Partial Reset, the
currently selected bus size, endian arrangement, programming method (serial or
parallel), and programmable flag settings are all retained.
A LOW on this pin initializes the FIFO2 read and write pointers to the first location
of memory and sets the Port A output register to all zeroes. During Partial Reset, the
currently selected bus size, endian arrangement, programming method (serial or
parallel), and programmable flag settings are all retained.
FIFO2 Partial
Reset
RENB
RT1
Port B Read
Enable
I
I
RENB must be HIGH to enable a LOW-to-HIGH transition of CLKB to read data on
Port B.
FIFO1
A LOW strobe on this pin will retransmit data on FIFO1. This is achieved by bringing
the read pointer back to location zero. The user will still need to perform read operations
to retransmit the data. Retransmit function applies to CY standard mode only.
Retransmit
Document #: 38-06023 Rev. *C
Page 5 of 39
CY7C43646
CY7C43666
CY7C43686
Pin Definitions (continued)
Signal Name
Description
I/O
Function
RT2
FIFO2
I
A LOW strobe on this pin will retransmit data on FIFO2. This is achieved by bringing
the read pointer back to location zero. The user will still need to perform read operations
to retransmit the data. Retransmit function applies to CY standard mode only.
Retransmit
SIZEB
SIZEC
Bus Size Select
I
I
A HIGH on this pin when BM is HIGH selects byte bus (9-bit) size on Port B. A
LOW on this pin when BM is HIGH selects word (18-bit) bus size. SIZEB works with
BM and BE to select the bus size and endian arrangement for Port B. The level of
SIZEB must be static throughout device operation.
A HIGH on this pin when BM is HIGH selects byte bus (9-bit) size on Port C. A
LOW on this pin when BM is HIGH selects word (18-bit) bus size. SIZEC works with
BM and BE to select the bus size and endian arrangement for Port B. The level of
SIZEC must be static throughout device operation.
Bus Size Select
SPM
Serial
I
I
A LOW on this pin selects serial programming of partial flag offsets. A HIGH on
Programming
this pin selects parallel programming or default offsets (8, 16, or 64).
W/RA
Port A
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−35 outputs are in the high-impedance state
when W/RA is HIGH.
Write/Read
Select
WENC
Port C Write
Enable
I
WENC must be HIGH to enable a LOW-to-HIGH transition of CLKC to write data
on Port C.
Almost Empty flag (AEA, AEB) LOW, and the Almost Full flag
(AFA, AFC) HIGH. A Partial Reset also forces the Mailbox flag
(MBF1, MBF2) of the parallel mailbox register HIGH. After a
Partial Reset, the FIFO’s Full/Input Ready flag is set HIGH
Signal Description
Master Reset (MRS1, MRS2)
Each of the two FIFO memories of the CY7C436X6 undergoes
a complete reset by taking its associated Master Reset
(MRS1, MRS2) input LOW for at least four Port A clock (CLKA)
and four Port B clock (CLKB) LOW-to-HIGH transitions. The
Master Reset inputs can switch asynchronously to the clocks.
A Master Reset initializes the internal read and write pointers
and forces the Full/Input Ready flag (FFA/IRA, FFC/IRC)
LOW, the Empty/Output Ready flag (EFA/ORA, EFB/ORB)
LOW, the Almost Empty flag (AEA, AEB) LOW, and the Almost
Full flag (AFA, AFC) HIGH. A Master Reset also forces the
Mailbox flag (MBF1, MBF2) of the parallel mailbox register
HIGH. After a Master Reset, the FIFO’s Full/Input Ready flag
is set HIGH after two clock cycles to begin normal operation.
A Master Reset must be performed on the FIFO after
power-up, before data is written to its memory.
A LOW-to-HIGH transition on a FIFO Master Reset (MRS1,
MRS2) input latches the value of the Big Endian (BE) input or
determines the order by which bytes are transferred through
Port B.
A LOW-to-HIGH transition on a FIFO reset (MRS1, MRS2)
input latches the values of the Flag select (FS0, FS1) and
Serial Programming Mode (SPM) inputs for choosing the
Almost Full and Almost Empty offset programming method
(see Almost Empty and Almost Full flag offset programming
below).
after two clock cycles to begin normal operation.
Whatever flag offsets, programming method (parallel or
serial), and timing mode (FWFT or CY Standard mode) are
currently selected at the time a Partial Reset is initiated, those
settings will remain unchanged upon completion of the reset
operation. A Partial Reset may be useful in the case where
reprogramming a FIFO following a Master Reset would be
inconvenient.
Big Endian/First-Word Fall-Through (BE/FWFT)
This is a dual-purpose pin. At the time of Master Reset, the BE
select function is active, permitting a choice of Big or Little
Endian byte arrangement for data written to Port C or read
from Port B. This selection determines the order by which
bytes (or words) of data are transferred through these ports.
For the following illustrations, assume that a byte (or word) bus
size has been selected for Port B and Port C.
A HIGH on the BE/FWFT input when the Master Reset (MRS1
and MRS2) inputs go from LOW to HIGH will select a Big
Endian arrangement. When data is moving in the direction
from Port A to Port B, the most significant byte (word) of the
long-word written to Port A will be transferred to Port B first;
the least significant byte (word) of the long-word written to Port
A will be transferred to Port B last. When data is moving in the
direction from Port C to Port A, the byte (word) written to Port
C first will be transferred to Port A as the most significant byte
(word) of the long-word; the byte (word) written to Port C last
will be transferred to Port A as the least significant byte (word)
of the long- word.
Partial Reset (PRS1, PRS2)
Each of the two FIFO memories of the CY7C436X6 undergoes
a limited reset by taking its associated Partial Reset (PRS1,
PRS2) input LOW for at least four Port A clock (CLKA) and four
Port B clock (CLKB) LOW-to-HIGH transitions. The Partial
Reset inputs can switch asynchronously to the clocks. A
Partial Reset initializes the internal read and write pointers and
forces the Full/Input Ready flag (FFA/IRA, FFC/IRC) LOW, the
Empty/Output Ready flag (EFA/ORA, EFB/ORB) LOW, the
A LOW on the BE/FWFT input when the Master Reset (MRS1
and MRS2) inputs go from LOW to HIGH will select a Little
Endian arrangement. When data is moving in the direction
from Port A to Port B, the least significant byte (word) of the
long-word written to Port A will be transferred to Port B first;
Document #: 38-06023 Rev. *C
Page 6 of 39
CY7C43646
CY7C43666
CY7C43686
the most significant byte (word) of the long-word written to Port
A will be transferred to Port B last. When data is moving in the
direction from Port C to Port A, the byte (word) written to Port
C first will be transferred to port A as the least significant byte
(word) of the long-word; the byte (word) written to Port C last
will be transferred to Port A as the most significant byte (word)
of the long- word.
After Master Reset, the FWFT select function is active,
permitting a choice between two possible timing modes: CY
Standard Mode or First-Word Fall-Through (FWFT) Mode.
Once the Master Reset (MRS1, MRS2) input is HIGH, a HIGH
on the BE/FWFT input during the next LOW-to-HIGH transition
of CLKA (for FIFO1) and CLKB (for FIFO2) will select CY
Standard Mode. This mode uses the Empty Flag function
(EFA, EFB) to indicate whether or not there are any words
present in the FIFO memory. It uses the Full Flag function
(FFA, FFC) to indicate whether or not the FIFO memory has
any free space for writing. In CY Standard Mode, every word
read from the FIFO, including the first, must be requested
using a formal read operation.
Once the Master Reset (MRS1, MRS2) input is HIGH, a LOW
on the BE/FWFT input at the second LOW-to-HIGH transition
of CLKA (for FIFO1) and CLKC (for FIFO2) will select FWFT
Mode. This mode uses the Output Ready function (ORA,
ORB) to indicate whether or not there is valid data at the data
outputs (A0–35 or B0–17). It also uses the Input Ready function
(IRA, IRC) to indicate whether or not the FIFO memory has
any free space for writing. In the FWFT mode, the first word
written to an empty FIFO goes directly to data outputs, no read
request necessary. Subsequent words must be accessed by
performing a formal read operation.
first four writes to FIFO1 do not store data in RAM but load the
offset registers in the order Y1, X1, Y2, X2. The Port A data
inputs used by the offset registers are (A0–9), (A0–11), or
(A0–13), for the CY7C436X6, respectively. The highest
numbered input is used as the most significant bit of the binary
number in each case. Valid programming values for the
registers range from 0 to 1023 for the CY7C43646; 1 to 4095
for the CY7C43666; 0to 16383 for the CY7C43686. After all
the offset registers are programmed from Port A, the Port C
Full/Input Ready (FFC/IRC) is set HIGH and both FIFOs begin
normal operation.
To program the X1, X2, Y1, and Y2 registers serially, initiate a
Master Reset with SPM LOW, FS0/SD LOW and FS1/SEN
HIGH during the LOW-to-HIGH transition of MRS1 and MRS2.
After this reset is complete, the X and Y register values are
loaded bit-wise through the FS0/SD input on each
LOW-to-HIGH transition of CLKA that the FS1/SEN input is
LOW. 40, 48, or 56 bit writes are needed to complete the
programming for the CY7C436X6, respectively. The four
registers are written in the order Y1, X1, Y2, and, finally, X2.
The first-bit write stores the most significant bit of the Y1
register and the last-bit write stores the least significant bit of
the X2 register. Each register value can be programmed from
0 to 1023 (CY7C43646), 0 to 4095 (CY7C43666), or 0 to
16383 (CY7C43686).
When the option to program the offset registers serially is
chosen, the Port A Full/Input Ready (FFA/IRA) flag remains
LOW until all register bits are written. FFA/IRA is set HIGH by
the LOW-to-HIGH transition of CLKA after the last bit is loaded
to allow normal FIFO1 operation. The Port C Full/Input ready
(FFC/IRC) flag also remains LOW throughout the serial
programming process, until all register bits are written.
FFC/IRC is set HIGH by the LOW-to-HIGH transition of CLKC
after the last bit is loaded to allow normal FIFO2 operation.
Following Master Reset, the level applied to the BE/FWFT
input to choose the desired timing mode must remain static
throughout the FIFO operation.
SPM, FS0/SD, and FS1/SEN function the same way in both
Programming the Almost Empty and Almost Full Flags
CY Standard and FWFT modes.
Four registers in the CY7C436X6 are used to hold the offset
values for the Almost Empty and Almost Full flags. The Port B
Almost Empty flag (AEB) offset register is labeled X1 and the
Port A Almost Empty flag (AEA) offset register is labeled X2.
The Port A Almost Full flag (AFA) offset register is labeled Y1
and the Port C Almost Full flag (AFC) offset register is labeled
Y2. The index of each register name corresponds with preset
values during the reset of a FIFO, programmed in parallel
using the FIFO’s Port A data inputs, or programmed in serial
using the Serial Data (SD) input (see Table 1).
To load a FIFO’s Almost Empty flag and Almost Full flag offset
registers with one of the three preset values listed in Table 1.
The Serial Program Mode (SPM) and at least one of the
flag-select inputs must be HIGH during the LOW-to-HIGH
transition of its Master Reset input (MRS1 and MRS2). For
example, to load the preset value of 64 into X1 and Y1, SPM,
FS0, and FS1 must be HIGH when FIFO1 reset (MRS1)
returns HIGH. Flag-offset registers associated with FIFO2 are
loaded with one of the preset values in the same way with
Master Reset (MRS2). When using one of the preset values
for the flag offsets, the FIFOs can be reset simultaneously or
at different times.
FIFO Write/Read Operation
The state of the Port A data (A0–35) lines is controlled by Port
A Chip Select (CSA) and Port A Write/Read Select (W/RA).
The A0–35 lines are in the high-impedance state when either
CSA or W/RA is HIGH. The A0–35 lines are active outputs
when both CSA and W/RA are LOW.
Data is loaded into FIFO1 from the A0–35 inputs on a
LOW-to-HIGH transition of CLKA when CSA is LOW, W/RA is
HIGH, ENA is HIGH, MBA is LOW, and FFA/IRA is HIGH. Data
is read from FIFO2 to the A0–35 outputs by a LOW-to-HIGH
transition of CLKA when CSA is LOW, W/RA is LOW, ENA is
HIGH, MBA is LOW, and EFA/ORA is HIGH (see Table 2).
FIFO reads and writes on Port A are independent of any
concurrent Port B operation.
The state of the Port B data (B0–17) lines is controlled by the
Port B Chip Select (CSB) and Port B Read select (RENB). The
B
0–17 lines are in the high-impedance state when either CSB
is HIGH or RENB is LOW. The B0–17 lines are active outputs
when CSB is LOW and RENB is HIGH.
Data is loaded into FIFO2 from the C0–17 inputs on a
LOW-to-HIGH transition of CLKC when WENC is LOW, MBC
is LOW, and FFC/IRC is HIGH. Data is read from FIFO1 to the
B0–17 outputs by a LOW-to-HIGH transition of CLKB when
CSB is LOW, RENB is HIGH, MBB is LOW, and EFB/ORB is
To program the X1, X2, Y1, and Y2 registers from Port A,
perform a Master Reset on both FIFOs simultaneously with
SPM HIGH and FS0 and FS1 LOW during the LOW-to-HIGH
transition of MRS1 and MRS2. After this reset is complete, the
Document #: 38-06023 Rev. *C
Page 7 of 39
CY7C43646
CY7C43666
CY7C43686
HIGH (see Table 3). FIFO reads on Port B and writes to Port
simultaneously forcing the Output Ready flag HIGH and
C are independent of any concurrent Port A operation.
shifting the word to the FIFO output register.
The set-up and hold time constraints to the port clocks for the
port Chip Selects and Write/Read Selects 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’s Chip Select and
Write/Read Select may change states during the set-up and
hold time window of the cycle.
When operating the FIFO in FWFT Mode with the Output
Ready flag LOW, the next word written is automatically sent to
the FIFO’s output register by the LOW-to-HIGH transition of
the port clock that sets the Output Ready flag HIGH, data
residing in the FIFO’s memory array is clocked to the output
register only when a read is selected using the port’s Chip
Select, Write/Read Select, Enable, and Mailbox Select.
In the CY Standard Mode, from the time a word is written to a
FIFO, the Empty Flag will indicate the presence of data
available for reading in a minimum of two 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 have not elapsed since the time the
word was written. The Empty Flag of the FIFO remains LOW
until the second LOW-to-HIGH transition of the synchronizing
clock occurs, forcing the Empty Flag HIGH; only then can data
be read.
A LOW-to-HIGH transition on an Empty/Output Ready 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.
When operating the FIFO in CY Standard Mode, regardless of
whether the Empty Flag is LOW or HIGH, data residing in the
FIFO’s memory array is clocked to the output register only
when a read is selected using the port’s Chip Select,
Write/Read Select, Enable, and Mailbox Select.
Full/Input Ready Flags (FFA/IRA, FFC/IRC)
This is a dual-purpose flag. In FWFT Mode, the Input Ready
(IRA and IRC) function is selected. In CY Standard Mode, the
Full Flag (FFA and FFC) function is selected. For both timing
modes, when the Full/Input Ready flag is HIGH, a memory
location is free in the SRAM to receive new data. No memory
locations are free when the Full/Input Ready flag is LOW and
attempted writes to the FIFO are ignored.
The Full/Input Ready flag of a FIFO is synchronized to the port
clock that writes data to its array. For both FWFT and CY
Standard modes, each time a word is written to a FIFO, its
write pointer is incremented. The state machine that controls
a Full/Input Ready flag monitors a write pointer and read
pointer comparator that indicates when the FIFO SRAM status
is full, or full–1. From the time a word is read from a FIFO, its
previous memory location is ready to be written to in a
minimum of two cycles of the Full/Input Ready flag synchro-
nizing clock. Therefore, an Full/Input Ready flag is LOW if less
than two cycles of the Full/Input Ready flag synchronizing
clock have elapsed since the next memory write location has
been read. The second LOW-to-HIGH transition on the
Full/Input Ready flag synchronizing clock after the read sets
the Full/Input Ready flag HIGH.
Synchronized FIFO Flags
Each FIFO is synchronized to its port clock through at least two
flip-flop stages. This is done to improve flag-signal reliability by
reducing the probability of the metastable events when CLKA,
CLKB, and CLKC operate asynchronously to one another.
EFA/ORA, AEA, FFA/IRA, and AFA are synchronized to
CLKA. EFB/ORB and AEB are synchronized to CLKB.
FFC/IRC and AFC are synchronized to CLKC. Table 5 and
Table 6 show the relationship of each port flag to FIFO1 and
FIFO2.
Empty/Output Ready Flags (EFA/ORA, EFB/ORB)
These are dual-purpose flags. In the FWFT Mode, the Output
Ready (ORA, ORB) function is selected. When the Output
Ready flag is HIGH, new data is present in the FIFO output
register. When the Output Ready flag is LOW, the previous
data word is present in the FIFO output register and attempted
FIFO reads are ignored.(See footnote #1)
In the CY Standard Mode, the Empty Flag (EFA, EFB) function
is selected. When the Empty flag is HIGH, data is available in
the FIFO’s RAM memory for reading to the output register.
When Empty flag is LOW, the previous data word is present in
the FIFO output register and attempted FIFO reads are
ignored.
A LOW-to-HIGH transition on a Full/Input Ready flag synchro-
nizing clock begins the first synchronization cycle of a read if
the clock transition occurs at time tSKEW1 or greater after the
read. Otherwise, the subsequent clock cycle can be the first
synchronization cycle.
The Empty/Output Ready flag of a FIFO is synchronized to the
port clock that reads data from its array. For both the FWFT
and CY Standard modes, the FIFO read pointer is incremented
each time a new word is clocked to its output register. The
state machine that controls an Output Ready flag monitors a
write pointer and read pointer comparator that indicates when
the FIFO SRAM status is empty, or empty+1.
In FWFT Mode, from the time a word is written to a FIFO, it
can be shifted to the FIFO output register in a minimum of
three cycles of the Output Ready flag synchronizing clock.
Therefore, an Output Ready flag is LOW if a word in memory
is the next data to be sent to the FIFO output register and three
cycles have not elapsed since the time the word was written.
The Output Ready flag of the FIFO remains LOW until the third
LOW-to-HIGH transition of the synchronizing clock occurs,
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
read pointer comparator that indicates when the FIFO SRAM
status is almost empty, or almost empty+1. The Almost Empty
state is defined by the contents of register X1 for AEB and
register X2 for AEA. These registers are loaded with preset
values during a FIFO reset, programmed from Port A, or
programmed serially (see Almost Empty flag and Almost Full
flag offset programming above). An Almost Empty flag is LOW
when its FIFO contains X or less words and is HIGH when its
FIFO contains (X+1) or more words. [2]
Document #: 38-06023 Rev. *C
Page 8 of 39
CY7C43646
CY7C43666
CY7C43686
Two LOW-to-HIGH transitions of the Almost Empty flag
synchronizing clock are required after a FIFO write for its
Almost Empty flag to reflect the new level of fill. Therefore, the
Almost Empty flag of a FIFO containing (X+1) or more words
remains LOW if two cycles of its synchronizing clock have not
elapsed since the write that filled the memory to the (X+1)
level. An Almost Empty flag is set HIGH by the second
LOW-to-HIGH transition of its 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) words.
Otherwise, the subsequent synchronizing clock cycle may be
the first synchronization cycle.
size is also 18 bits, then the usable width of the Mail2 register
employs data lines C0-17. If the selected Port C bus size is 9
bits, then the usable width of the Mail2 register employs data
lines C0-8. (In this case, C9-17 are “Don’t Care” inputs.)
Writing data to a mail register sets its corresponding flag
(MBF1 or MBF2) LOW. Attempted writes to a mail register are
ignored while the mail flag is LOW.
When data outputs of a port are active, the data on the bus
comes from the FIFO output register when the port Mailbox
Select input is LOW and from the mail register when the port
Mailbox Select input is HIGH.
The Mail1 Register flag (MBF1) is set HIGH by
a
LOW-to-HIGH transition on CLKB when a Port B read is
selected by CSB, RENB, and ENB with MBB HIGH. For an
Almost Full Flags (AFA, AFC)
18-bit bus size, 18 bits of mailbox data are placed on B0–17
For a 9-bit bus size, 9 bits of mailbox data are placed on B0–8
(In this case, B9-17 are indeterminate.)
.
.
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 or full–1. The Almost Full state is defined by
the contents of register Y1 for AFA and register Y2 for AFC.
These registers are loaded with preset values during a FIFO
reset, programmed from Port A, or programmed serially (see
Almost Empty flag and Almost Full flag offset programming
above). An Almost Full flag is LOW when the number of words
in its FIFO is greater than or equal to (1024–Y), (4096–Y), or
(16384–Y) for the CY7C436X6 respectively. An Almost Full
flag is HIGH when the number of words in its FIFO is less than
or equal to [1024–(Y+1)], [4096–(Y+1)], or [16384–(Y+1)] for
the CY7C436X6 respectively.[2]
Two LOW-to-HIGH transitions of the Almost Full flag synchro-
nizing clock are required after a FIFO read for its Almost Full
flag to reflect the new level of fill. Therefore, the Almost Full
flag of a FIFO containing [1024/4096/16384–(Y+1)] or less
words remains LOW if two cycles of its synchronizing clock
have not elapsed since the read that reduced the number of
words in memory to [1024/4096/16384–(Y+1)]. An Almost Full
flag is set HIGH by the second LOW-to-HIGH transition of its
synchronizing clock after the FIFO read that reduces the
number of words in memory to [1024/4096/16384–(Y+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
words in memory to [1024/4096/16384–(Y+1)]. Otherwise, the
subsequent synchronizing clock cycle may be the first
synchronization cycle.
The Mail2 Register flag (MBF2) is set HIGH by
a
LOW-to-HIGH transition on CLKA when a Port A read is
selected by CSA, W/RA, and ENA with MBA HIGH.
The data in a mail register remains intact after it is read and
changes only when new data is written to the register. The
Endian Select feature has no effect on the mailbox data.
Bus Sizing
The Port B and Port C buses can be configured in a 18-bit word
or 9-bit byte format for data read from FIFO1 or written to
FIFO2. The levels applied to the Port B Bus Size Select
(SIZEB) and the Port C Bus Size Select (SIZEC) determine the
width of the buses. The bus size can be selected indepen-
dently for Ports B and C. These levels should be static
throughout FIFO operation. Both bus size selections are
implemented at the completion of Master Reset, by the time
the Full/Input Ready flag is set HIGH.
Two different methods for sequencing data transfer are
available for Port B when the bus size selection is either byte
or word-size. They are referred to as Big Endian (most signif-
icant byte first) and Little Endian (least significant byte first).
The level applied to the Big Endian Select (BE) input during
the LOW-to-HIGH transition of MRS1 and MRS2 selects the
endian method that will be active during FIFO operation. BE is
a “don’t care” input when the bus size selected for Port B is
long-word. The endian method is implemented at the
completion of Master Reset, by the time the Full/Input Ready
flag is set HIGH.
Only 36-bit long-word data is written to or read from the two
FIFO memories on the CY7C436X6. Bus-matching operations
are done after data is read from the FIFO1 RAM and before
data is written to FIFO2 RAM. These bus-matching operations
are not available when transferring data via mailbox registers.
Furthermore, both the word- and byte-size bus selections limit
the width of the data bus that can be used for mail register
operations. In this case, only those byte lanes belonging to the
selected word- or byte-size bus can carry mailbox data. The
remaining data outputs will be indeterminate. The remaining
data inputs will be “don’t care” inputs. For example, when a
word-size bus is selected, then mailbox data can be trans-
mitted only between A0-17 and B0-17. When a byte-size bus is
selected, then mailbox data can be transmitted only between
Mailbox Registers
Each FIFO has a 36-bit bypass register to pass command and
control information between Port A and Port B/Port C without
putting it in queue. The Mailbox Select (MBA, MBB, MBC)
inputs choose between a mail register and a FIFO for a port
data transfer operation. The usable width of both the Mail1 and
Mail2 registers matches the selected bus size for Port C.
A LOW-to-HIGH transition on CLKA writes A0-35 data to the
Mail1 Register when a Port A write is selected by CSA, W/RA,
and ENA with MBA HIGH.
When sending data from Port C to Port A via the Mail2 register,
the following is the case: A LOW-to-HIGH transition on CLKC
writes C0-17 data to the Mail2 register when a Port C write is
selected by WENC with MBC HIGH. If the selected Port C bus
A0-8 and B0-8.
Document #: 38-06023 Rev. *C
Page 9 of 39
CY7C43646
CY7C43666
CY7C43686
Bus-Matching FIFO1 Reads
Retransmit (RT1, RT2)
Data is written to the FIFO1 RAM in 36-bit long-word incre-
ments. If byte or word size is implemented on Port B, 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
output the rest of the long-word to the FIFO1 output register.
The retransmit feature is beneficial when transferring packets
of data. It enables the receipt of data to be acknowledged by
the receiver and retransmitted if necessary. Retransmit
function applies to CY standard mode only.
The number of 36-/18-/9-bit words written into the FIFO should
be less than full depth minus 2/4/8 words between the reset of
the FIFO (master or partial) and Retransmit setup. A LOW
pulse on RT1, (RT2) resets the internal read pointer to the first
physical location of the FIFO. CLKA and CLKB may be free
running but RENB and (ENA) must be disabled during and
tRTR after the retransmit pulse. With every valid read cycle
after retransmit, previously accessed data is read and the read
pointer is incremented until it is equal to the write pointer. Flags
are governed by the relative locations of the read and write
pointers and are updated during a retransmit cycle. Data
written to the FIFO after activation of RT1, (RT2) are trans-
mitted also.
When reading data from FIFO1 as byte, the unused B9-17
outputs are indeterminate.
Bus-Matching FIFO2 Writes
Data is written to the FIFO2 RAM in 18-bit word increments.
Data written to FIFO2 with a byte or word bus size stores the
initial bytes or words in auxiliary registers. The CLKC rising
edge that writes the word to FIFO2 also stores the entire
long-word in FIFO2 RAM.
When reading data from FIFO2 in byte format, the unused
C8–17 outputs are LOW.
The full depth of the FIFO can be repeatedly retransmitted.
Document #: 38-06023 Rev. *C
Page 10 of 39
CY7C43646
CY7C43666
CY7C43686
PORT B BUS SIZING
A27–35
A
A0–8
D
A18–26
A9–17
BYTE ORDER ON
PORT A:
Write to FIFO1
B
C
B9–17
B0–8
BE
SIZEB
1st: Read from
FIFO1
H
L
A
B9–17
C
B
B0–8
D
2nd: Read from
FIFO1
(A) WORD SIZE – BIG ENDIAN
B9–17
C
B0–8
D
BE
L
SIZEB
1st: Read from
FIFO1
L
B9–17
A
B0–8
B
2nd: Read from
FIFO1
(B) WORD SIZE – LITTLE ENDIAN
B9–17
B0–8
A
BE
H
SIZEB
H
1st: Read from
FIFO1
B9–17
B0–8
B
2nd: Read from
FIFO1
B9–17
B0–8
3rd: Read from
FIFO1
C
B0–8
D
B9–17
4th: Read from
FIFO1
(C) BYTE SIZE – BIG ENDIAN
B9–17
B9–17
B9–17
B9–17
B0–8
D
BE
L
SIZEB
1st: Read from
FIFO1
H
B0–8
C
2nd: Read from
FIFO1
B0–8
B
3rd: Read from
FIFO1
B0–8
A
4th: Read from
FIFO1
(D) BYTE SIZE – LITTLE ENDIAN
Document #: 38-06023 Rev. *C
Page 11 of 39
CY7C43646
CY7C43666
CY7C43686
PORT C BUS SIZING
A27–35
A
A0–8
D
A18–26
B
A9–17
C
BYTE ORDER ON
PORT A:
Read from
FIFO2
C9–17
C0–8
BE
SIZEC
1st: Write to
FIFO2
H
L
A
C9–17
C
B
C0–8
D
2nd: Write to
FIFO2
(A) WORD SIZE – BIG ENDIAN
C9–17
C
C0–8
D
BE
L
SIZEC
1st: Write to
FIFO2
L
C9–17
A
C0–8
B
2nd: Write to
FIFO2
(B) WORD SIZE – LITTLE ENDIAN
C9–17
C9–17
C9–17
C9–17
C0–8
A
BE
H
SIZEC
H
1st: Write to
FIFO2
C0–8
B
2nd: Write to
FIFO2
C0–8
C
3rd: Write to
FIFO2
C0–8
D
4th: Write to
FIFO2
(C) BYTE SIZE – BIG ENDIAN
C9–17
C9–17
C9–17
C9–17
C0–8
BE
L
SIZEC
1st: Write to
FIFO2
H
D
C0–8
2nd: Write to
FIFO2
C
C0–8
B
3rd: Write to
FIFO2
C0–8
A
4th: Write to
FIFO2
(D) BYTE SIZE – LITTLE ENDIAN
Document #: 38-06023 Rev. *C
Page 12 of 39
CY7C43646
CY7C43666
CY7C43686
Table 1. Flag Programming[2]
SPM FS1/SEN FS0/SD
MRS1
MRS2
X1 and Y1 Registers[3]
X2 and Y2 Registers[4]
H
H
H
H
H
H
H
L
H
H
H
H
L
L
L
H
H
L
H
H
L
↑
X
↑
X
↑
X
↑
↑
↑
↑
↑
X
↑
X
↑
X
↑
↑
↑
↑
↑
↑
64
X
16
X
X
64
X
16
L
H
H
L
8
X
X
Parallel programming via Port A
Serial programming via SD
Reserved
8
Parallel programming via Port A
Serial programming via SD
Reserved
L
L
L
L
H
H
L
Reserved
Reserved
Reserved
Reserved
L
Table 2. Port A Enable Function Table
CSA
H
L
L
L
L
L
L
L
W/RA
ENA
X
L
H
H
L
H
L
H
MBA
X
X
L
H
L
L
H
H
CLKA
A0–35 OUTPUTS
In high-impedance state
In high-impedance state
In high-impedance state
In high-impedance state
Active, FIFO2 output register
Active, FIFO2 output register
Active, Mail2 register
PORT FUNCTION
X
H
H
H
L
L
L
L
X
X
↑
↑
X
↑
X
↑
None
None
FIFO1 write
Mail1 write
None
FIFO2 read
None
Active, Mail2 register
Mail2 read (set MBF2 HIGH)
Table 3. Port B Enable Function Table
CSB
RENB
X
L
H
L
H
MBB
X
L
L
H
H
CLKB
B0–17 OUTPUTS
In high-impedance state
Active, FIFO1 output register
Active, FIFO1 output register
Active, Mail1 register
PORT FUNCTION
H
L
L
L
L
X
X
↑
X
↑
None
None
FIFO1 read
None
Active, Mail1 register
Mail1 read (set MBF1 HIGH)
Table 4. Port C Enable Function Table
WENC
MBC
CLKC
C0–17 INPUTS
PORT FUNCTION
FIFO2 write
Mail2 write
None
H
H
L
L
H
L
↑
↑
X
X
In high-impedance state
In high-impedance state
In high-impedance state
Active, Mail1 register
L
H
None
Notes:
3. X1 register holds the offset for AEB; Y1 register holds the offset for AFA.
4. X2 register holds the offset for AEA; Y2 register holds the offset for AFC.
Document #: 38-06023 Rev. *C
Page 13 of 39
CY7C43646
CY7C43666
CY7C43686
Table 5. FIFO1 Flag Operation (CY Standard and FWFT Modes)[2]
Number of Words in FIFO Memory[5, 6, 7, 8]
Synchronized to CLKB
Synchronized to CLKA
CY7C43646
0
1 TO X1
CY7C43666
0
CY7C43686
0
1 TO X1
EFB/ORB
AEB
L
L
AFA
H
H
FFA/IRA
L
H
H
H
H
H
1 TO X1
(X1+1) to
(X1+1) to
(X1+1) to [16384–
(Y1+1)]
H
H
[1024–(Y1+1)]
[4096–(Y1+1)]
(1024–Y1) to 1023
1024
(4096–Y1) to 4095 (16384–Y1) to 16383
4096 16384
H
H
H
H
L
L
H
L
Table 6. FIFO2 FLAG OPERATION (CY Standard and FWFT Modes)[2]
Number of Words in FIFO Memory[6, 7, 9, 10]
Synchronized to CLKA
Synchronized to CLKC
CY7C43646
CY7C43666
0
CY7C43686
EFA/ORA
AEA
L
L
AFC
H
H
FFC/IRC
0
0
L
H
H
H
H
H
1 TO X2
1 TO X2
1 TO X2
(X2+1) to
(X2+1) to
(X2+1) to
H
H
[1024–(Y2+1)]
[4096–(Y2+1)]
[16384–(Y2+1)]
(1024–Y2) to 1023 (4096–Y2) to 4095 (16384–Y2) to 16383
1024 4096 16384
Table 7. Data Size for Word Writes to FIFO2
H
H
H
H
L
L
H
L
Size Mode[11]
Write No. Data Written to FIFO2
Data Read From FIFO2
BM
H
SIZE
L
BE
H
C9–17
C0–8
B
D
D
B
A27–35
A
A18–26
B
A9–17
C
A0–8
D
1
2
1
2
A
C
C
A
H
L
L
A
B
C
D
Table 8. Data Size for Byte Writes to FIFO2
Data Written to
FIFO2
Size Mode[11]
Write No.
Data Read From FIFO2
BM
H
SIZE
H
BE
H
C0–8
A
B
C
D
D
C
B
A27–35
A
A18–26
B
A9–17
C
A0–8
D
1
2
3
4
1
2
3
4
H
H
L
A
B
C
D
A
Notes:
5. X1 is the Almost Empty offset for FIFO1 used by AEB. Y1 is the Almost Full offset for FIFO1 used by AFA. Both X1 and Y1 are selected during a FIFO1 reset
or port A programming.
6. When a word loaded to an empty FIFO is shifted to the output register, its previous FIFO memory location is free.
7. Data in the output register does not count as a “word in FIFO memory”. Since in FWFT mode, the first word written to an empty FIFO goes unrequested to the
output register (no read operation necessary), it is not included in the FIFO memory count.
8. The ORB and IRA functions are active during FWFT mode; the EFB and FFA functions are active in CY Standard mode.
9. X2 is the Almost Empty offset for FIFO2 used by AEA. Y2 is the Almost Full offset for FIFO2 used by AFC. Both X2 and Y2 are selected during a FIFO2 reset
or port A programming.
10. The ORA and IRC functions are active during FWFT mode; the EFA and FFC functions are active in CY Standard mode.
11. BE is selected at Master Reset. SIZEC must be static throughout device operation.
Document #: 38-06023 Rev. *C
Page 14 of 39
CY7C43646
CY7C43666
CY7C43686
Table 9. Data Size for Word Reads from FIFO1
Size Mode[11]
Data Read From
FIFO1
Data Written to FIFO1
Read No.
BM
H
SIZE
L
BE
H
A27–35
A
A18–26
A9–17
C
A0–8
D
B9–17
B0–8
B
D
D
B
1
2
1
2
A
C
C
A
H
L
L
A
B
C
D
B
Table 10.Data Size for Byte Reads from FIFO1
Size Mode[11]
Data Read From
FIFO1
Data Written to FIFO1
Read No.
BM
SIZE
BE
A27–35
A18–26
A9–17
A0–8
B0–8
H
H
H
A
B
C
D
1
2
3
4
1
2
3
4
A
B
C
D
D
C
B
A
H
H
L
A
B
C
D
Document #: 38-06023 Rev. *C
Page 15 of 39
CY7C43646
CY7C43666
CY7C43686
DC Input Voltage[13]................................. –0.5V to VCC+0.5V
Output Current into Outputs (LOW)............................. 20 mA
Maximum Ratings[12, 14]
(Above which the useful life may be impaired. For user guide-
Static Discharge Voltage...........................................> 2001V
lines, not tested.)
(per MIL-STD-883, Method 3015)
Storage Temperature .................................–65°C to +150°C
Latch-up Current.....................................................> 200 mA
Ambient Temperature with
Operating Range
Power Applied.............................................. –55°C to +125°C
Ambient
Supply Voltage to Ground Potential............... –0.5V to +7.0V
[15]
Range
Commercial
Industrial
Temperature
0°C to +70°C
VCC
DC Voltage Applied to Outputs
5.0V±0.5V
5.0V±0.5V
in High-Z State[13] ....................................–0.5V to VCC+0.5V
−40°C to +85°C
Electrical Characteristics Over the Operating Range
7C43646/66/86
Parameter
Description
Output HIGH Voltage
Output LOW Voltage
Input HIGH Voltage
Input LOW Voltage
Input Leakage Current
Output OFF, High-Z Current
Test Conditions
VCC = 4.5V., IOH = −4.0 mA
VCC = 4.5V., IOL = 8.0 mA
Min.
2.4
Max.
Unit
V
V
V
V
µA
µA
VOH
VOL
VIH
VIL
0.5
VCC
0.8
+10
+10
2.0
–0.5
–10
–10
IIX
VCC = Max.
VSS < VO< VCC
IOZL
IOZH
[16]
ICC1
Active Power Supply Current
Average Standby Current
Com’l
Ind
Com’l
Ind
100
100
10
mA
mA
mA
mA
[17]
ISB
10
Capacitance[18]
Parameter
CIN
Description
Input Capacitance
Output Capacitance
Test Conditions
TA = 25°C, f = 1 MHz,
CC = 5.0V
Max.
4
8
Unit
pF
pF
V
COUT
AC Test Loads and Waveforms (-10 and -15)
R1 = 1.1 KΩ
ALL INPUT PULSES
5V
OUTPUT
3.0V
90%
10%
90%
10%
GND
CL = 30 pF
R2 = 680Ω
≤ 3 ns
≤ 3 ns
INCLUDING
JIG AND
SCOPE
V
/2
ALL INPUT PULSES
CC
3.0V
GND
90%
10%
90%
10%
50Ω
I/O
Z0 = 50Ω
≤ 3 ns
≤ 3 ns
Notes:
12. 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 abso-
lute-maximum-rated conditions for extended periods may affect device reliability.
13. The input and output voltage ratings may be exceeded provided the input and output current ratings are observed.
14. The Voltage on any input or I/O pin cannot exceed the power pin during power-up.
15. Operating V Range for -7 speed is 5.0V ± 0.25V.
CC
16. Input signals switch from 0V to 3V with a rise/fall time of less than 3 ns, clocks and clock enables switch at 20 MHz, while data inputs switch at 10 MHz. Outputs
are unloaded.
17. All inputs = V – 0.2V, except RCLK and WCLK (which are at frequency = 0 MHz). All outputs are unloaded.
CC
18. Tested initially and after any design or process changes that may affect these parameters.
Document #: 38-06023 Rev. *C
Page 16 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Characteristics Over the Operating Range
7C43646/
66/86
-7
7C43646/
66/86
7C43646/
66/86
-10
-15
Parameter
fS
tCLK
tCLKH
tCLKL
Description
Min. Max. Min. Max.
Min.
Max. Unit
Clock Frequency, CLKA,CLKB, or CLKC
Clock Cycle Time, CLKA,CLKB, or CLKC
Pulse Duration, CLKA,CLKB, or CLKC HIGH
Pulse Duration, CLKA,CLKB, or CLKC LOW
133
100
67
MHz
ns
7.5
3.5
3.5
3
10
4
4
15
6
6
ns
ns
ns
Set-up Time, A0–35 before CLKA↑ B0–17 before
CLKB↑, and C0–17 before CLKC↑
4
5
tDS
Set-up Time, CSA, W/RA, ENA, and MBA before
CLKA↑; RENB and MBB before CLKB↑ and WENC
and MBC before CLKC↑
3
4
5
ns
tENS
tRSTS
tFSS
Set-up Time, MRS1, MRS2, PRS1, PRS2, RT1 or
2.5
6
4
7
7
5
ns
ns
ns
RT2 LOW before CLKA↑ or CLKB↑[19]
Set-up Time, FS0 and FS1 before MRS1 and MRS2
HIGH
Set-up Time, BE/FWFT before MRS1 and MRS2
HIGH
7.5
7.5
5
tBES
tSPMS
tSDS
tSENS
tFWS
Set-up Time, SPM before MRS1 and MRS2 HIGH
Set-up Time, FS0/SD before CLKA↑
Set-up Time, FS1/SEN before CLKA↑
Set-up Time, FWFT before CLKA↑
5
3
3
0
0
7
4
4
0
0
7.5
5
5
0
0
ns
ns
ns
ns
ns
Hold Time, A0–35 before CLKA↑ B0–17 before CLKB↑,
and C0–17 before CLKC↑
tDH
Hold Time, CSA, W/RA, ENA, and MBA before
CLKA↑ RENB and MBB before CLKB↑ and WENC
and MBC before CLKC↑
0
0
0
ns
tENH
Hold Time, MRS1, MRS2, PRS1, PRS2, RT1 or RT2
1
1
2
1
4
2
ns
ns
tRSTH
LOW after CLKA↑ or CLKB↑[19]
Hold Time, FS0 and FS1 after MRS1 and MRS2
HIGH
tFSH
tBEH
tSPMH
tSDH
Hold Time, BE/FWFT after MRS1 and MRS2 HIGH
Hold Time, SPM after MRS1 and MRS2 HIGH
Hold Time, FS0/SD after CLKA↑
Hold Time, FS1/SEN after CLKA↑
Hold Time, FS1/SEN HIGH after MRS1 and MRS2
HIGH
1
1
0
0
0
1
1
0
0
1
2
2
0
0
2
ns
ns
ns
ns
ns
tSENH
tSPH
Skew Time between CLKA↑ and CLKB↑ for
5
7
5
8
7.5
12
ns
ns
[20]
tSKEW1
EFA/ORA, EFB/ORB, FFA/IRA, and FFC/IRC
Skew Time between CLKA↑ and CLKB↑ for AEA,
[20]
tSKEW2
AEB, AFA, AFC
tA
Access Time, CLKA↑ to A0–35 and CLKB↑ to B0–17
Propagation Delay Time, CLKA↑ to FFA/IRA and
CLKB↑ to FFC/IRC
1
1
6
6
1
1
8
8
3
2
10
8
ns
ns
tWFF
Notes:
19. Requirement to count the clock edge as one of at least four needed to reset a FIFO.
20. Skew time is not a timing constraint for proper device operation and is only included to illustrate the timing relationship between CLKA cycle and CLKB cycle.
Document #: 38-06023 Rev. *C
Page 17 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Characteristics Over the Operating Range (continued)
7C43646/
7C43646/
66/86
7C43646/
66/86
66/86
-7
-10
-15
Parameter
tREF
Description
Min. Max. Min. Max.
Min.
Max. Unit
Propagation Delay Time, CLKA↑ to EFA/ORA and
1
1
1
0
6
6
6
6
1
1
1
0
8
8
8
8
1
1
1
0
8
ns
ns
ns
ns
CLKB↑ to EFB/ORB
Propagation Delay Time, CLKA↑ to AEA and CLKB↑
8
tPAE
to AEB
Propagation Delay Time, CLKA↑ to AFA and CLKC↑
8
tPAF
to AFC
Propagation Delay Time, CLKA↑ to MBF1 LOW or
MBF2 HIGH and CLKB↑ to MBF2 LOW or MBF1
HIGH
Propagation Delay Time, CLKA↑ to B0–17[21] and
12
tPMF
tPMR
tMDV
1
1
1
7
6
6
2
2
1
11
9
3
3
1
12
11
15
ns
ns
ns
[22]
CLKB↑ to A0–35
Propagation Delay Time, MBA to A0–35 Valid and
MBB to B0–17 Valid
Propagation Delay Time, MRS1 or PRS1 LOW to
AEB LOW, AFA HIGH, FFA/IRA LOW, EFB/ORB
LOW and MBF1 HIGH and MRS2 or PRS2 LOW to
AEA LOW, AFC HIGH, FFC/IRC LOW, EFA/ORA
LOW and MBF2 HIGH
Enable Time, CSA or W/RA LOW to A0–35 Active and
CSB LOW and RENB HIGH to B0–17 Active
Disable Time, CSA or W/RA HIGH to A0–35 at High
Impedance and CSB HIGH or RENB LOW to B0–17
at High Impedance
10
tRSF
tEN
1
1
5
5
2
1
8
6
2
1
10
8
ns
ns
tDIS
tRTR
Retransmit recovery Time
90
90
90
ns
Notes:
21. Writing data to the Mail1 register when the B
22. Writing data to the Mail2 register when the A
outputs are active and MBB is HIGH.
outputs are active and MBA is HIGH.
0–17
0–35
Document #: 38-06023 Rev. *C
Page 18 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms
FIFO1 Master Reset Loading X1 and Y1 with a Preset Value of Eight [23, 24]
CLKA
CLKB
tRSTS
tRSTH
MRS1
tFWS
tBES
tSPMS
tFSS
tBEH
tSPMH
tFSH
BE/FWFT
SPM
FS1/SEN,
FS0/SD
tWFF
tRSF
FFA/IRA
tRSF
tRSF
tRSF
EFB/ORB
AEB
AFA
tRSF
MBF1
Notes:
23. PRS1 and MBC must be HIGH during Master Reset until the rising edge of FFA/IRA goes HIGH.
24. If BE/FWFT is HIGH, then EFB/ORB will go LOW one CLKB cycle earlier than the case where BE/FWFT is LOW.
Document #: 38-06023 Rev. *C
Page 19 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
FIFO2 Master Reset Loading X1 and Y1 with a Preset Value of Eight [25, 26]
CLKC
CLKA
tRSTS
tRSTS
MRS2
tFWS
tBES
tBEH
BE/FWFT
tSPMS
tFSS
tSPMH
tFSH
SPM
FS1/SEN,
FS0,SD
tWFF
tRSF
FFC/IRC
tRSF
tRSF
tRSF
EFA/ORA
AEA
AFC
tRSF
MBF2
Notes:
25. PRS2 and MBC must be HIGH during Master Reset until the rising edge of FFC/IRC goes HIGH.
26. If BE/FWFT is HIGH, then EFA/ORA will go LOW one CLKA cycle earlier than the case where BE/FWFT is LOW.
Document #: 38-06023 Rev. *C
Page 20 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
FIFO1 Partial Reset (CY Standard and FWFT Modes)[24, 27]
CLKA
CLKB
tRSTS
tRSTH
PRS1
tWFF
tRSF
FFA/IRA
tRSF
EFB/ORB
tRSF
AEB
tRSF
AFA
tRSF
MBF1
FIFO2 Partial Reset (CY Standard and FWFT Modes)[26, 28]
CLKC
CLKA
tRSTS
tRSTH
PRS2
tWFF
tRSF
FFC/IRC
tRSF
EFA/ORA
tRSF
AEA
tRSF
AFC
tRSF
MBF1
Notes:
27. MRS1 must be HIGH during Partial Reset.
28. MRS2 must be HIGH during Partial Reset.
Document #: 38-06023 Rev. *C
Page 21 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Parallel Programming of the Almost-Full Flag and Almost-Empty Flag Offset Values after Reset
[29]
(CY Standard and FWFT Modes)
CLKA
MRS1, MRS2
tFSS
tFSH
SPM
tFSH
tFSS
FS1/SEN,
FS0/SD
tWFF
FFA/IRA
tENH
tENS
[30]
tSKEW1
ENA
tDH
tDS
A0−35
CLKC
First Word to
tWF
AFA Offset (Y1)
AEA Offset (X2)
AEB Offset
AFC Offset
FFC/IRC
Serial Programming of the Almost-Full Flag and Almost-Empty Flag
Offset Values (CY Standard and FWFT Modes)[31]
CLKA
MRS1, MRS2
tFSS tFSH
SPM
tWFF
[32]
tSKEW1
tSENS tSEN
FFA/IRA
tSENS
tFSS
tSPH
tSENH
tSDH
FS1/SEN
tSDS
tSDH
tSDS
FS0/SD [33]
AFA Offset (Y1) MSB
AEA Offset (X2)
CLKC
tWFF
FFC/IRC
Notes:
29. CSA = LOW, W/RA = HIGH, MBA = LOW. It is not necessary to program offset register on consecutive clock cycles.
30. t
is the minimum time between the rising CLKA edge and a rising CLKB for FFC/IRC to transition HIGH in the next cycle. If the time between the rising edge
SKEW1
of CLKA and rising edge of CLKC is less than t
, then FFC/IRC may transition HIGH one cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 22 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Port A Write Cycle Timing for FIFO1 (CY Standard and FWFT Modes)
tCLK
tCLKL
tCLKH
CLKA
FFA/IRA
HIGH
tENS
tENH
CSA
tENS tENH
W/RA[34]
MBA
tENS tENH
tENH
tENS
tENH
tENH
tENS
tDS
tENS
ENA
tDH
[35]
A0–35
W2[35]
W1
Port C Word Write Cycle Timing for FIFO2 (CY Standard and FWFT Modes)
CLKC
FFC/IRC
HIGH
tENH
tENS tENH
tENS
tENS
MBC
tENS tENH
tENH
WENC
C0–17
tDS tDH
Port C Byte Write Cycle Timing for FIFO2 (CY Standard and FWFT Modes)
CLKC
FFC/IRC
MBC
HIGH
tENH
tENH
tENS
tENH
tENH
tENS
tENS
WENC
C0–8
tDS
tDH
Notes:
31. It is not necessary to program offset register bits on consecutive clock cycles. FIFO write attempts are ignored until IRA is set HIGH.
32. t is the minimum time between the rising CLKA edge and a rising CLKC for FFC/IRC to transition HIGH in the next cycle. If the time between the rising edge
SKEW1
of CLKA and rising edge of CLKC is less than t
, then FFC/IRC may transition HIGH one cycle later than show.
SKEW1
33. Programmable offsets are written serially to the SD input in the order AFA offset (Y1), AEB offset (X1), AFC offset (Y2), and AEA offset (X2).
34. If W/RA switches from read to write before the assertion of CSA, t
35. Written to FIFO1.
= t +t
.
ENS
DIS ENS
Document #: 38-06023 Rev. *C
Page 23 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Port B Byte Read Cycle Timing for FIFO1 (CY Standard and FWFT Modes) [36, 1]
CLKB
EFB/ORB
CSB
HIGH
MBB
t
ENStENH
RENB
tDIS
tA
tMDV
tA
Read3
tA
Read4
[1]
tA
tA
Read2
No Opera-
Read4
tEN
B0–8
Previous
tA
Read1
tA
(Standard Mode)
tDIS
tMDV
tA
OR
tEN
B0–8
Read5
Read2
Read1
Read3
(FWFT Mode)
Port B Word Read Cycle Timing for FIFO1 (CY Standard and FWFT Modes)
CLKB
EFB/ORB
CSB
MBB
ENB
tENH
tEN
tA
tMDV
tDIS
tA
No Operation
Read 2
B0–17
tEN
(Standard Mode)
Read 1
Read 2
Previous Data
tA
tDIS
OR
tMDV
tA
tEN
B0–17
Read 1
Read 3
(FWFT Mode)
Note:
36. Unused bytes B
contain all zeroes for byte-size reads.
9–17
Document #: 38-06023 Rev. *C
Page 24 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
[1]
Port A Byte Read Cycle Timing for FIFO2 (CY Standard and FWFT Modes)
tCLK
tCLKH
tCLKL
CLKA
EFA/ORA
CSA
W/RA[34]
MBA
tENS tENH
tA
tENS
tENS
tENH
tENH
tA
ENA
tDIS
tMDV
No Operation
W2[37]
tEN
A0−35
W1[37]
W2[37]
Previous Data
tA
(Standard Mode)
tA
tDIS
tMDV
OR
tEN
A0−35
W3[37]
W1[37]
(FWFT Mode)
Note:
37. Read From FIFO2.
Document #: 38-06023 Rev. *C
Page 25 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
[38, 39]
ORB Flag Timing and First Data Word Fall Through when FIFO1 is Empty (FWFT Mode)
tCLK
tCLKH
tCLKL
CLKA
CSA
LOW
HIGH
W/RA
tENS tENH
tENS
MBA
tENH
ENA
FFA/IRA
HIGH
tDS tDH
W1
A0–35
CLKB
[40]
tCLKH tCLKL
tSKEW1
tREF
tREF
tCLK
EFB/ORB
CSB
FIFO1 Empty
LOW
LOW
MBB
tENS tENH
RENB
tA
tA
B0–17
W1b
W1a
Old Data in FIFO1 Output Register
Notes:
38. SIZEB = LOW; If BE = HIGH, W1a is the most significant word, W1b is the least significant word. If BE = LOW, W1a is the least significant word, W1b is the most
significant word.
39. If SIZEB = HIGH (byte size), ORB is set LOW by the last byte read from FIFO2.
40. t
is the minimum time between a rising CLKA edge and a rising CLKB edge for ORB to transition HIGH and to clock the next word to the FIFO1 output
SKEW1
register in three CLKB cycles. If the time between the rising CLKA edge and rising CLKB edge is less than t
, then the transition of ORB HIGH and load of
SKEW1
the first word to the output register may occur one CLKB cycle later than shown.
Document #: 38-06023 Rev. *C
Page 26 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
EFB Flag Timing and First Data Read Fall Through when FIFO1 is Empty (CY Standard Mode)[38, 41]
tCLK
tCLKH
tCLKL
CLKA
CSA
LOW
HIGH
W/RA
MBA
tENH
tENS
tENS
tENH
ENA
FFA/IRA
A0–35
HIGH
tDS tDH
W1
[42] tCLKH tCLKL
tSKEW1
CLKB
tREF
tREF
tCLK
EFB/ORB
FIFO1 Empty
CSB
LOW
LOW
MBB
RENB
t
ENS tENH
tA
tA
W1a
B0–17
W1b
Notes:
41. If SIZEB = HIGH (byte size), EFB is set LOW by the last byte read from FIFO2.
42. t 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
SKEW1
CLKA edge and rising CLKB edge is less than t
, then the transition of EFB HIGH may occur one CLKB cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 27 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
[43, 44]
ORA Flag Timing and First Data Word Fall Through when FIFO2 is Empty (FWFT Mode)
tCLK
tCLKH
tCLKL
CLKC
MBC
tENH
tENS
tENH
tENS
WENC
HIGH
tDS
FFC/IRC
tDH
W1a
W1b
tSKEW1
C0–17
CLKA
[45]
tCLKH tCLKL
tREF
tREF
tCLK
FIFO2 Empty
LOW
EFA/ORA
CSA
LOW
W/RA
LOW
MBA
ENA
tENSENH
t
tA
W1
A0–35
Old Data in FIFO2 Output Register
Notes:
43. SIZEC = LOW; If BE = HIGH, W1a is the most significant word, W1b is the least significant word. If BE = LOW, W1a is the least significant word, W1b is the most
significant word.
44. If SIZEC = HIGH (byte size), t
is referenced to the rising CLKC edge that writes the last byte of the long word.
SKEW1
45. t
is the minimum time between a rising CLKC edge and a rising CLKA edge for ORA to transition HIGH and to clock the next word to the FIFO2 output
SKEW1
register in three CLKA cycles. If the time between the rising CLKC edge and rising CLKA edge is less than t
, then the transition of ORA HIGH and load of
SKEW1
the first word to the output register may occur one CLKA cycle later than shown.
Document #: 38-06023 Rev. *C
Page 28 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
EFA Flag Timing and First Data Read when FIFO2 is Empty (CY Standard Mode)[43, 44]
tCLK
tCLKH tCLKL
CLKC
tENH
tENS
MBC
tENH
tENS
WENC
FFC/IRC
C0–17
HIGH
tDS
tDH
W1a
W1b
tSKEW1
tCLKH tCLKL
[46]
CLKA
tREF
tREF
tCLK
EFA/IRA
CSA
FIFO2 Empty
LOW
LOW
W/RA
MBA
ENA
LOW
tENS tENH
tA
A0–35
W1
Notes:
46. t
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
SKEW1
CLKC edge and rising CLKA edge is less than t
, then the transition of EFA HIGH may occur one CLKA cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 29 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
IRA Flag Timing and First Available Write when FIFO1 is Full (FWFT Mode)[47, 48]
tCLK
tCLKL
tCLKH
CLKB
CSB
MBB
LOW
LOW
tENS tENH
RENB
EFB/ORB
B0–17
HIGH
tA
Word A
Word B
[49]
tCLKH tCLKL
tSKEW1
CLKA
tWFF
tWFF
tCLK
FFA/IRA
CSA
FIFO1 Full
LOW
HIGH
W/RA
t
ENStENH
MBA
ENA
tENS ENH
t
tDS
tDH
A0–35
To FIFO1
Notes:
47. SIZEB = LOW; If BE = HIGH, Word A is the most significant word of the last long word in FIFO1, Word B is the least significant word. If BE = LOW, Word A is the
least significant word of the last long word in FIFO1, Word B is the most significant word.
48. If SIZEB = HIGH (byte size), t
is referenced to the rising CLKB edge that reads the last byte write of the long word.
SKEW1
49. t
is the minimum time between a rising CLKB edge and a rising CLKA edge for IRA to transition HIGH in the next CLKA cycle. If the time between the rising
SKEW1
CLKB edge and rising CLKA edge is less than t
, then IRA may transition HIGH one CLKA cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 30 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
[47,48]
FFA Flag Timing and First Available Write when FIFO1 is Full (CY Standard Mode)
tCLK
tCLKH tCLKL
CLKB
CSB
LOW
MBB
LOW
tEN tENH
ENB
EFB/ORB
B0–17
HIGH
tA
Word B
Word A
[50]
t
tCLKL
tSKEW1
CLKH
CLKA
tWFF
tWFF
tCLK
FFA/IRA
CSA
FIFO1 Full
LOW
W/RA
HIGH
tENH
tENS
MBA
ENA
tENS
tENH
tDS tDH
A0−35
Note:
50. t
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
SKEW1
CLKB edge and rising CLKA edge is less than t
, then the transition of FFA HIGH may occur one CLKA cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 31 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
IRC Flag Timing and First Available Write when FIFO2 is Full (FWFT Mode)[51, 52]
tCLK
tCLKL
tCLKH
CLKA
CSA
LOW
LOW
LOW
W/RA
MBA
tENSENH
t
ENA
EFA/ORA
A0–35
HIGH
tA
Previous Word in
FIFO2 Output Registe[r53]
Next Word From FIFO2
tCLKH tCLKL
tSKEW1
CLKC
tWFF
tWFF
tCLK
FFC/IRC
FIFO2 Full
tENH
tENS
MBC
tENH
tENS
WENC
tDS tDH
Word A
C0–17
Word B
Notes:
51. SIZEC = LOW; If BE = HIGH, Word A is the most significant word of the last long word in FIFO2, Word B is the least significant word. If BE = LOW, Word A is the
least significant word of the last long word in FIFO2, Word B is the most significant word.
52. If SIZEC = HIGH (byte size), IRC is set LOW by the last byte write of the long word.
53. t
is the minimum time between a rising CLKA edge and a rising CLKC edge for IRC to transition HIGH in the next CLKB cycle. If the time between the rising
SKEW1
CLKA edge and rising CLKC edge is less than t
, then the transition of IRC HIGH may occur one CLKC cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 32 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
[51, 54]
FFC Flag Timing and First Available Write when FIFO2 is Full (CY Standard Mode)
tCLK
tCLKL
tCLKH
CLKA
CSA
LOW
W/RA
MBA
LOW
LOW
tENS
tENH
ENA
EFA/ORA
A0–35
HIGH
tA
Previous Word in
FIFO2 Output Register
Next Word From FIFO2
tCLKH tCLKL
[55]
tSKEW1
CLKC
tWFF
tWFF
tCLK
FFC/IRC
FIFO2 Full
t
ENS tENH
MBC
tENH
tENS
WENC
tDS tDH
Word A
C0–17
Word B
Timing for AEB when FIFO1 is Almost Empty (CY Standard and FWFT Modes)[56, 57, 2]
CLKA
ENA
tENS
tENH
CLKB
[58]
tSKEW2
tPAE
tENH
(X1+1) Word in FIFO1
AEB
tPAE
(X1+1)Words in FIFO1
tENS
X1 Word in FIFO1
RENB
Notes:
54. If SIZEC = HIGH (byte size), FFC is set LOW by the last byte write of the long word.
55. t is the minimum time between a rising CLKA edge and a rising CLKB edge for FFC to transition HIGH in the next CLKB cycle. If the time between the rising
SKEW1
CLKA edge and rising CLKC edge is less than t
, then the transition of FFC HIGH may occur one CLKC cycle later than shown.
SKEW1
Document #: 38-06023 Rev. *C
Page 33 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Timing for AEA when FIFO2 is Almost Empty (CY Standard and FWFT Modes)[59, 60, 2]
CLKC
tENH
tENS
WENC
CLKA
[61]
tSKEW2
tPAE
tENH
tPAE
(X2+1) Words in FIFO2
tENS
(X2+1) Word in FIFO2
X2 Word in FIFO2
AEA
ENA
[2, 62, 63, 64]
Timing for AFA when FIFO1 is Almost Full (CY Standard and FWFT Modes)
[65]
tSKEW2
CLKA
tENS
tENH
ENA
AFA
tPAF
[D–(Y1+1)] Words in FIFO1
tPAF
(D–Y1)Words in FIFO1
CLKB
RENB
tENH
tENS
[59, 2, 63, 66]
Timing for AFC when FIFO2 is Almost Full (CY Standard and FWFT Modes)
[67]
tSKEW2
CLKC
tENH
tENS
WENC
tPAF
AFC
tPAF
[D–(Y2+1)] Words in FIFO2
(D–Y2)Words in FIFO2
CLKA
ENA
tENH
tENS
Notes:
56. FIFO1 Write (CSA = LOW, W/RA = LOW, MBA = LOW), FIFO1 Read (CSB = LOW, W/RB = HIGH, MBB = LOW). Data in the FIFO1 output register has been
read from the FIFO.
57. If Port B size is word or byte, AEB is set LOW by the last word or byte read from FIFO1, respectively.
58. t
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
SKEW2
CLKA edge and rising CLKB edge is less than t
, then AEB may transition HIGH one CLKB cycle later than shown.
SKEW2
59. FIFO2 Write (MBB = LOW), FIFO2 Read (CSA = LOW, W/RA = LOW, MBA = LOW). Data in the FIFO2 output register has been read from the FIFO.
60. If Port C size is word or byte, t is referenced to the rising CLKC edge that writes the last word or byte of the long word, respectively.
SKEW2
61. t
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
SKEW2
CLKC edge and rising CLKA edge is less than t
, then AEA may transition HIGH one CLKA cycle later than shown.
SKEW2
62. FIFO1 Write (CSA = LOW, W/RA = HIGH, MBA = LOW), FIFO1 Read (CSB = LOW, MBB = LOW). Data in the FIFO1 output register has been read from the FIFO.
63. D = Maximum FIFO Depth = 1K for the CY7C43646, 4K for the CY7C43666, and 16K for the CY7C43686.
64. If Port B size is word or byte, t
is referenced to the rising CLKB edge that writes the last word or byte of the long word, respectively.
SKEW2
65. t
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
SKEW2
CLKA edge and rising CLKB edge is less than t
, then AFA may transition HIGH one CLKB cycle later than shown.
SKEW2
66. If Port C size is word or byte, AFC is set LOW by the last word or byte write of the long word, respectively.
67. t 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
SKEW2
rising CLKC edge and rising CLKA edge is less than t
, then AFC may transition HIGH one CLKA cycle later than shown.
SKEW2
Document #: 38-06023 Rev. *C
Page 34 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Timing for Mail1 Register and MBF1 Flag (CY Standard and FWFT Modes)[68,69]
CLKA
tENH
tENH
tENS
CSA
tENS
W/RA[34]
MBA
tENH
tENH
tDH
tENS
tENS
tDS
ENA
A0–35
CLKB
W1
tPMF
tPMF
MBF1
CSB
MBB
tENH
tENS
RENB
tMDV
tEN
tDIS
tPMR
FIFO1 Output Register
B0–17
W1 (Remains valid in Mail1 Register after read)
Note:
68. If Port A is configured for word size, data can be written to the Mail1 Register using A
(A
are “don’t care” inputs). In this first case, B
will have valid
0-17
0-17
18-35
data. If Port B is configured for byte size, data can be written to the Mail1 Register using A
(A
are “don’t care” inputs). In this second case, B
will have
0–8
9–35
0–8
valid data (B
will be indeterminate).
9–17
69. Simultaneous writing to and reading from mailbox register is not allowed.
Document #: 38-06023 Rev. *C
Page 35 of 39
CY7C43646
CY7C43666
CY7C43686
Switching Waveforms (continued)
Timing for Mail2 Register and MBF2 Flag (CY Standard and FWFT Modes)[69,70]
CLKC
MBC
tENH
tENS
WENC
C0–17
CLKA
tDH
tDS
W1
tPMF
tPMF
MBF2
CSA
W/RA[34]
MBA
ENA
A0−35
tENS
tENH
tMDV
FIFO2 Output Reg-
tEN
tPMR
tDIS
W1 (Remains valid in Mail2 Register after
FIFO1 Retransmit Timing [71, 72, 73, 74, 75]
CLKA
CLKB
RT1
tRSTH
tRSTS
t
RTR
ENB
EFB/FFA
Notes:
70. If Port C is configured for word size, data can be written to the Mail2 register using C
. In this first case A
will have valid data (A
will be indeterminate).
18–35
0–17
0–8
0–17
If Port C is configured for byte size, data can be written to the Mail2 Register using B
(B
are “don’t care” inputs). In this second case, A
will have valid
9–17
0–8
data (A
will be indeterminate).
9–35
71. Retransmit is performed in the same manner for FIFO2.
72. Clocks are free-running in this case. CY standard mode only. Write operation should be prohibited one write clock cycle before the falling edge of RT1, and during
the retransmit operation, i.e. when RT1 is LOW and t after the RT1 rising edge.
RTR
73. The Empty and Full flags may change state during Retransmit as a result of the offset of the read and write pointers, but flags will be valid at t
.
RTR
74. For the AEA, AEB, AFA, and AFB flags, two clock cycle are necessary after t
to update these flags.
RTR
75. The number of 36-/18-/9-bit words written into the FIFO should be less than full depth minus 2/4/8 words between the reset of the FIFO (master or partial) and
the Retransmit setup.
Document #: 38-06023 Rev. *C
Page 36 of 39
CY7C43646
CY7C43666
CY7C43686
Ordering Information
1K x36/18x2 Tri Bus Synchronous FIFO
Speed
Package
Name
A128
A128
A128
Package
Type
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
Operating
Range
Commercial
Commercial
Commercial
(ns)
7
Ordering Code
CY7C43646-7AC
10
15
CY7C43646-10AC
CY7C43646-15AC
4K x36/18x2 Tri Bus Synchronous FIFO
Speed
Package
Name
A128
A128
A128
Package
Type
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
Operating
Range
Commercial
Commercial
Commercial
(ns)
7
Ordering Code
CY7C43666-7AC
10
15
CY7C43666-10AC
CY7C43666-15AC
16K x36/18x2 Tri Bus Synchronous FIFO
Speed
Package
Name
Package
Type
Operating
Range
(ns)
7
Ordering Code
CY7C43686-7AC
A128
A128
A128
A128
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
128-lead Thin Quad Flat Package
Commercial
Commercial
Commercial
Industrial
10
15
15
CY7C43686-10AC
CY7C43686-15AC
CY7C43686–15AI
Document #: 38-06023 Rev. *C
Page 37 of 39
CY7C43646
CY7C43666
CY7C43686
Package Diagram
128-Lead Thin Plastic Quad Flatpack (14 x 20 x 1.4 mm) A128
51-85101-*B
All product and company names mentioned in this document are the trademarks of their respective holders.
Document #: 38-06023 Rev. *C
Page 38 of 39
© Cypress Semiconductor Corporation, 2003. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use
of any circuitry other than circuitry embodied in a Cypress Semiconductor product. Nor does it convey or imply any license under patent or other rights. Cypress Semiconductor does not authorize
its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress
Semiconductor products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress Semiconductor against all charges.
CY7C43646
CY7C43666
CY7C43686
Document History Page
Document Title: CY7C43646/CY7C43666/CY7C43686 1K/4K/16K x36/x18/x2 Tri Bus FIFO
Document Number: 38-06023
Orig. of
REV. ECN No. Issue Date Change
Description of Change
**
106565
05/15/01
SZV
Change from Spec number: 38-00701 to 38-06023
*A
117174
08/28/02
OOR Added footnote to retransmit timing
Added note to retransmit section
*B
*C
122275
129118
12/26/02
09/30/03
RBI
JFU
Power-up requirements added to Maximum Ratings Information
Added mention of Port C behavior under Signal Description
Changed signal behavior of ORB/EFB, ORA/EFA, IRA/FFA, and IRC/FFC in timing
diagrams
Document #: 38-06023 Rev. *C
Page 39 of 39
相关型号:
CY7C43686-12AI
Bi-Directional FIFO, 16KX36, 9ns, Synchronous, CMOS, PQFP128, 14 X 20 MM, 1.40 MM HEIGHT, PLASTIC, TQFP-128
CYPRESS
CY7C439-25DC
Bi-Directional FIFO, 2KX9, 25ns, Asynchronous, CMOS, CDIP28, 0.300 INCH, CERDIP-28
CYPRESS
©2020 ICPDF网 联系我们和版权申明