CY7C43634/CY7C43644
CY7C43664/CY7C43684
29
PRELIMINARY
will be read from port A as the least signif icant byte (word) of
the l ong word; the byte (wor d) writ ten to P ort B last will be read
from Port A as the most significant byte (word) of the long
word.
Af ter Mast er Res et, the FWFT selec t funct ion is acti ve , permit-
ting a choice between two possible timing modes: CY Stan-
dard mode or First Word F all Thr ough (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 Stan-
dard mode. This mode uses the Empty Flag function (EFA,
EFB) t o indi ca te wheth er or not there are an y wor ds pres ent i n
the FIFO memory. It uses the Full Flag function (FFA, FFB) to
indicate w hether 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 t he Master Reset (MRS1,MRS2) input is H IGH, a LOW
on th e BE/FWFT input during the next LOW-to-HIGH transition
of CLKA (for FIFO1) and CLKB (for FIFO2) wil l select FWFT
mode. This mode uses the Output Ready function (ORA,
ORB) to i ndicate whet her or not there is v alid data at th e data
outpu ts (A0–35 or B0–35) . It also uses th e Input Ready fu nct ion
(IRA, IRB) 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 re-
quest necessary. Subsequent words must be accessed by
performing a formal read operation.
Following Master Reset , the level applied to the BE/FWFT in-
put to choose the desired timing mode must remain static
throughout th e FIFO operation.
Programming the Almost Empty and Almost Full Flags
Four registers in the CY7C436X4 are used to hold the offset
values for the Al m ost Empty and Almost Full flags . The Port B
Almost Empty flag (AEB) offset register is labeled X1 and the
Por t A Almost Empty flag (AEA) offset register is labeled X2.
The Por t A Almost Full flag (AFA) offset register is labeled Y1
and the Port B Almost Ful l flag (AFB) offset registe r i s labele d
Y2. The index of each register name corresponds with preset
values during the reset of a FIFO, programmed in parallel us-
ing 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 Emp ty flag and Al most Full flag of fset
registers with one of the three preset values l isted in
Table 1
,
the Serial Program Mode (SPM) and at least one of the
fl ag-sel ect input s must be HIGH during th e LOW -to-HI GH tran-
sit ion of its M aster Rese t i nput (MRS1 and MRS2). For exam-
ple, to load the preset val ue of 64 into X1 and Y1, SPM, FS0
and FS1 must be HIGH when FIFO1 reset (MRS1) returns
HIGH . Fl ag-offs et registers associ ated with FIFO 2 are loade d
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 FI FO’s can be reset simultaneously or at dif-
ferent times.
To program the X1, X2, Y1, and Y2 regi sters f rom Port A, pe r-
form a Master Reset on bo th FIFOs simul taneously with SPM
HIGH and FS0 and FS1 LOW during the LOW-to-HIGH tran-
sition of MRS1 and MRS2. After this reset is complete, the first
four writes to FIFO1 do not store data in RAM but load the
offset registers i n the order Y1, X1, Y2, X2. The Por t A data
inputs used by the offset registers are (A7–0), (A8–0), (A9–0),
(A11–0), or (A 13–0), for the CY7C436X4, respectively . The high-
est numbered input is used as the most significant bit of the
binary number in each case . Valid pr ogr ammi ng va lues for the
regis ters range from 1 to 252 for the CY7C43624; 1 to 508 f or
the CY7C43634; 1 to 1012 for the CY7C43644; 1 to 4092 for
the CY7C43664; 1 to 16380 for the CY7C43684. After all the
offset registers are programmed from Port A, the Port B Full/In-
put Ready (FFB/I RB) is set HIGH and both FIFOs begin nor-
mal operation.
To program t he X1, X2, Y1, a nd Y2 regist ers serially, i nitiate a
Master Reset with SPM LOW, FS0/SD LOW and FS1/SEN
HIGH during the LOW -to-HIGH tra nsition of MRS1 an d 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. Thirty-tw-, thirty-six, forty, forty-eight, or fifty-six bit
writes are needed to complete the programming for the
CY7C436X4, r especti vel y. The f our r egist ers are written in t he
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 signifi cant bit of the X2 register. Each r egister
value can be programmed from 1 to 252 (CY7C43624), 1 to
508 (CY7C43634), 1 to 1020 (CY7C43644), 1 to 4092
(CY7C43664), or 1 to 16380 (CY7C43684).
When the option to program the offset regist ers seri ally is cho-
sen, the Port A Full/I nput Ready (FFA/IRA) flag remains LOW
until all register bits are written. FFA/IRA is set HIGH by the
LO W-to-HIGH transiti on of CLKA afte r the last bit is loaded to
allow normal FIFO1 operation. The Port B Full/Input ready
(FFB/IRB) flag also remains LOW throughout the serial pro-
gramming process, unti l all register bits are writ ten. FFB/IRB
is set HIGH by the LOW-to-HIGH transition of CLKB after the
last bi t i s loaded to allow normal FIFO2 operati on.
SPM, FS0/SD, and FS1/SEN function the same way in both
CY Standard and FWFT modes.
FIFO Write/ Read O peration
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
LO W-to-HIGH transition of CLKA when CSA is LOW, W/RA is
HIGH, ENA is HIGH, MBA is LOW , an d FF A/IRA is HI GH. Data
is read from FIFO2 to the A0–35 outputs by a LOW-to-HIGH
transition of CLKA when CSA is L OW, W /R A is L OW, E NA is
HIGH, MBA is LOW, and EFA/ORA is HIGH (see
Ta bl e 2
).
FIFO reads and write s on Port A are independent of any con-
current Port B operation.
The Port B control s ignals are identical to those o f Port A with
the exception that the Por t B Write/Read select (W /RB) is the
inverse of the Por t A Write/Read select (W/RA). The state of
the Por t B data (B0–35) lines is controlled by the Port B Chip
Select (CSB ) and P ort B Writ e/Read sel ect (W/RB). The B0–35
lines are in the high-impedance state when either CSB is
HIGH or W/RB is LOW. The B0–35 lines are active outputs
when CSB is LOW and W/RB is HIGH.
Data is loaded into FIFO2 from the B0–35 inputs on a
LO W-to-HIGH transition of CLKB when CSB is LOW, W/RB is
LO W, ENB is HIGH, MBB is LO W, and FF B/IRB is HI GH. Data
is read from FIFO1 to the B0–35 outputs by a LOW-to-HIGH