CY7C43646AV
CY7C43666AV
CY7C43686AV
PRELIMINARY
Document #: 38-06026 Rev. ** Page 30 of 40
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 HIG H when FIFO 1 reset (MRS1) retur ns 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.
To program the X1, X2, Y1, and Y2 registers in parallel from
Port A, perfo rm a Mas ter Rese t on both F IFOs simul taneousl y
with SPM HIGH and FS0 and FS1 LOW during the LOW-to-
HIGH transition of MRS1 and MRS 2. After this reset is com-
plete, th e first fou r writes 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 CY7C436X6A V , respectively . The highest num-
bered input is used as the most significant bit of the binary
number in each ca se. Valid programm ing val ues for the regis-
ters range from 0 to 1023 fo r the CY7C436 46AV ; 0 to 4095 for
the CY7C43666AV; 0 to 16383 for the CY7C43686AV. (See
footnote #50) 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 registe rs serial ly, initiate a
Master Reset with SPM LOW, FS0/SD LOW, and FS1/SEN
HIGH during the LOW-t o-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 transi tio n of CLKA th at th e FS1 /SEN input is LOW. 40-,
48-, or 5 6-bi t w ri tes are needed to com pl ete th e p r ogra mmin g
for the CY7C436X6AV, 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.
When the opt ion to p rogram th e of fset re gisters serially is ch o-
sen, th e Po rt A Ful l/In put R ea dy (FFA/IRA) flag remains LO W
until all register bits are written. FFA/IRA is set HIGH by the
LOW -to -HIGH trans itio n of CLKA af ter the last bit is lo ade d to
allow normal FIFO operation. The Port C Full/Input ready
(FFC/IRC) flag also remains LOW throughout the serial pro-
gramming 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.
SPM, FS0/SD, and FS1/SEN function the same way in both
CY Standard and FWFT modes.
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 loa ded into FIFO1 from the A0–35 inputs o n 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 transitio n
of CLKA when CSA is LOW, W/RA is LOW , ENA is HIGH, MBA
is LOW, and EF A/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
B0–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 i nto FIF O2 from the C0–17 inputs on a LOW -t o-
HIGH transition of CLKC when WENC is HIGH, MBC is LOW,
and FFC/IRC i s HIGH (see Table 4). 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 HIGH (see Table 3). FIFO reads on Port B and
writes to Port C are inde pen de nt of an y c onc urre nt Por t A op-
eration.
The set-up and hold tim e co ns trai nts to the port c loc ks for th e
port Ch ip Selects and Writ e/Read sel ects are on ly for enab ling
write and read operations and are not related to high-imped-
ance 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 ch an ge s ta t es du ring th e s et-u p a nd hold time w in dow of
the cycle.
When operating the FIFO in FWFT Mode with the Output
Ready flag LOW , the nex t word written is automa tically 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 re-
siding in the FIFO’s memory array is clocked to the output reg-
ister only when a read is selected using the port’s Chip Sele ct,
Write/Read selec t, Enable, and Mailbox select.
When opera ting the FIFO in CY Standard M ode, 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 selec t, Enable, and Mailbox select.
Synchronized FIFO Flags
Each FIFO is synchronized to its port clock through at least
two fli p-flop stages. Th is is done to improve flag-si gnal reliabi l-
ity by reducing the probability of the metastable events when
CLKA, CLKB, and CLKC operate asynchronously to one an-
other. EF A/ORA, AE A, FF A/IRA, and AF A are synch ronized to
CLKA. EFB/ORB and AEB are synchronized to CLKB.
FFC/IRC and AFC are synchronized to CLKC. Tabl e 5 and
Ta ble 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 Outp ut
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 remains in the FIFO output register, and any FIFO
reads are ignored.
In the CY Standard Mode, the Empty Flag (EF A, EFB) function
is sele cted. When the Empt y Flag is HIGH, dat a is avail able in
the FIFO’s RAM memory for reading to the output register.
When Em pty Flag is LOW, the previous data word remains in
the FIFO output register, and any FIFO reads are ignored.
The Empt y/Ou tput read y fla g of a FIFO is sy nchron ized to the
port clock that reads data from its array. For both the FWFT
and CY Standard modes, the FIFO read pointer is increment-
ed each time a new word is clocked to its output register. The
state machine that controls an Output Ready flag monitors a
write poi nter and read poin ter comp arator that indicat es whe n
the FIFO SRAM status is empty, empty+1, or empty+2.