CYPRESS CY7C009V

CY7C008/009
CY7C018/01964K/128K x 8/9 Dual-Port Static RAM
CY7C008/009
CY7C018/019
64K/128K x 8/9 Dual-Port Static RAM
Features
• Automatic power-down
• True Dual-Ported memory cells that allow simultaneous
access of the same memory location
• Expandable data bus to 16/18 bits or more using
Master/Slave chip select when using more than one
device
• 64K x 8 organization (CY7C008)
• 128K x 8 organization (CY7C009)
• On-chip arbitration logic
• 64K x 9 organization (CY7C018)
• Semaphores included to permit software handshaking
between ports
• 128K x 9 organization (CY7C019)
• 0.35-micron CMOS for optimum speed/power
• INT flags for port-to-port communication
• High-speed access: 12[1]/15/20 ns
• Dual Chip Enables
• Low operating power
• Pin select for Master or Slave
— Active: ICC = 180 mA (typical)
• Commercial and Industrial temperature ranges
— Standby: ISB3 = 0.05 mA (typical)
• Fully asynchronous operation
• Available in 100-pin TQFP; Pb-Free packages available
Logic Block Diagram
R/WL
R/WR
CE0L
CE1L
CEL
CE0R
CE1R
CER
OEL
OER
[2]
8/9
8/9
I/O0L–I/O7/8L
I/O
Control
[3]
A0L–A15/16L
[3]
16/17
Address
Decode
I/O
Control
Address
Decode
True Dual-Ported
RAM Array
16/17
16/17
[3]
A0R–A15/16R
16/17
A0L–A15/16L
CEL
OEL
R/WL
SEML
BUSYL
INTL
[2]
I/O0R–I/O7/8R
[3]
A0R–A15/16R
CER
OER
R/WR
SEMR
Interrupt
Semaphore
Arbitration
[4]
[4]
BUSYR
INTR
M/S
Notes:
1.
2.
3.
4.
See page 6 for Load Conditions.
I/O0–I/O7 for x8 devices; I/O0–I/O8 for x9 devices.
A0–A15 for 64K devices; A0–A16 for 128K.
BUSY is an output in master mode and an input in slave mode.
Cypress Semiconductor Corporation
Document #: 38-06041 Rev. *D
•
198 Champion Court
•
San Jose, CA 95134-1709
•
408-943-2600
Revised September 6, 2005
CY7C008/009
CY7C018/019
Functional Description
Each port has independent control pins: chip enable (CE),
read or write enable (R/W), and output enable (OE). Two flags
are provided on each port (BUSY and INT). BUSY signals that
the port is trying to access the same location currently being
accessed by the other port. The interrupt flag (INT) permits
communication between ports or systems by means of a mail
box. The semaphores are used to pass a flag, or token, from
one port to the other to indicate that a shared resource is in
use. The semaphore logic is comprised of eight shared
latches. Only one side can control the latch (semaphore) at
any time. Control of a semaphore indicates that a shared
resource is in use. An automatic power-down feature is
controlled independently on each port by a chip select (CE)
pin.
The CY7C008/009 and CY7C018/019 are low-power CMOS
64K, 128K x 8/9 dual-port static RAMs. Various arbitration
schemes are included on the devices to handle situations
when multiple processors access the same piece of data. Two
ports are provided permitting independent, asynchronous
access for reads and writes to any location in memory. The
devices can be utilized as standalone 8/9-bit dual-port static
RAMs or multiple devices can be combined in order to function
as a 16/18-bit or wider master/slave dual-port static RAM. An
M/S pin is provided for implementing 16/18-bit or wider
memory applications without the need for separate master and
slave devices or additional discrete logic. Application areas
include interprocessor/multiprocessor designs, communications status buffering, and dual-port video/graphics memory.
The CY7C008/009 and CY7C018/019 are available in 100-pin
Thin Quad Plastic Flatpack (TQFP) packages.
Pin Configurations
NC
NC
A6R
A5R
A4R
A3R
A1R
A2R
INTR
A0R
BUSYR
M/S
GND
INTL
BUSYL
A0L
NC
A2L
A1L
A3L
A4L
A5L
A6L
NC
NC
100-Pin TQFP
(Top View)
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
NC
1
75
NC
NC
2
74
NC
A7L
3
73
A7R
A8L
4
72
A8R
A9L
5
71
A9R
A10L
6
70
A10R
A11L
7
69
A11R
A12L
8
68
A12R
A13L
9
67
A13R
A14L
10
66
A14R
A15L
11
65
A15R
[5] A16L
12
64
A16R [5]
VCC
13
63
GND
NC
14
NC
15
NC
NC
CY7C009 (128K x 8)
CY7C008 (64K x 8)
62
NC
61
NC
16
60
NC
17
59
NC
CE0L
18
58
CE0R
CE1L
19
57
CE1R
SEML
20
56
SEMR
R/WL
21
55
R/WR
OEL
22
54
OER
GND
23
53
GND
NC
24
52
GND
NC
25
51
NC
NC
NC
NC
I/O7R
I/O6R
I/O5R
I/O4R
I/O3R
VCC
I/O2R
I/01R
GND
I/O0R
VCC
I/O0L
GND
I/O1L
I/O2L
I/O3L
I/O4L
I/O5L
I/O6L
I/O7L
NC
GND
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
Note:
5. This pin is NC for CY7C008.
Document #: 38-06041 Rev. *D
Page 2 of 19
CY7C008/009
CY7C018/019
NC
A6R
A5R
A4R
A3R
A2R
A0R
A1R
INTR
M/S
VCC
GND
BUSYL
GND
A0L
INTL
A2L
A1L
A3L
A4L
A5L
A6L
NC
NC
100-Pin TQFP
(Top View)
BUSYR
Pin Configurations (continued)
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
NC
1
75
NC
NC
2
74
NC
A7L
3
73
A7R
A8L
4
72
A8R
A9L
5
71
A9R
A10L
6
70
A10R
A11L
7
69
A11R
A12L
8
68
A12R
A13L
9
67
A13R
A14L
10
66
A14R
A15L
11
65
A15R
[6] A16L
12
64
A16R [6]
VCC
13
63
GND
NC
14
NC
15
NC
NC
CY7C019 (128K x 9)
CY7C018 (64K x 9)
62
NC
61
NC
16
60
NC
17
59
NC
CE0L
18
58
CE0R
CE1L
19
57
CE1R
SEML
20
56
SEMR
R/WL
21
55
R/WR
OEL
22
54
OER
GND
23
53
GND
NC
24
52
GND
NC
25
51
NC
NC
NC
I/O8R
I/O7R
I/O6R
I/O5R
I/O4R
I/O3R
VCC
I/O2R
I/01R
GND
I/O0R
VCC
I/O0L
GND
I/O1L
I/O2L
I/O3L
I/O4L
I/O5L
I/O6L
I/O7L
GND
I/O8L
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
Selection Guide
CY7C008/009
CY7C018/019
-12[1]
CY7C008/009
CY7C018/019
-15
CY7C008/009
CY7C018/019
-20
Unit
Maximum Access Time
12
15
20
ns
Typical Operating Current
195
190
180
mA
Typical Standby Current for ISB1 (Both ports TTL level)
55
50
45
mA
0.05
0.05
0.05
mA
Typical Standby Current for ISB3 (Both ports CMOS level)
Note:
6. This pin is NC for CY7C018.
Document #: 38-06041 Rev. *D
Page 3 of 19
CY7C008/009
CY7C018/019
Pin Definitions
Left Port
Right Port
Description
CE0L, CE1L
CE0R, CE1R
Chip Enable (CE is LOW when CE0 < VIL and CE1 > VIH)
R/WL
R/WR
Read/Write Enable
OEL
OER
Output Enable
A0L–A16L
A0R–A16R
Address (A0–A15 for 64K devices and A0–A16 for 128K devices)
I/O0L–I/O8L
I/O0R–I/O8R
Data Bus Input/Output (I/O0–I/O7 for x8 devices and I/O0–I/O8 for x9)
SEML
SEMR
Semaphore Enable
INTL
INTR
Interrupt Flag
BUSYL
BUSYR
Busy Flag
M/S
Master or Slave Select
VCC
Power
GND
Ground
NC
No Connect
Maximum Ratings[7]
(Above which the useful life may be impaired. For user guidelines, not tested.)
Storage Temperature .................................–65°C to +150°C
Ambient Temperature with
Power Applied.............................................–55°C to +125°C
Output Current into Outputs (LOW)............................. 20 mA
Static Discharge Voltage........................................... >1100V
Latch-Up Current .................................................... >200 mA
Operating Range
Range
Ambient
Temperature
VCC
Commercial
0°C to +70°C
5V ± 10%
Industrial[9]
–40°C to +85°C
5V ± 10%
Supply Voltage to Ground Potential ............... –0.3V to +7.0V
DC Voltage Applied to Outputs
in High Z State ............................................... –0.5V to +7.0V
DC Input Voltage[8] ......................................... –0.5V to +7.0V
Notes:
7. The Voltage on any input or I/O pin cannot exceed the power pin during power-up.
8. Pulse width < 20 ns.
9. Industrial parts are available in CY7C009 and CY7C019 only.
Document #: 38-06041 Rev. *D
Page 4 of 19
CY7C008/009
CY7C018/019
Electrical Characteristics Over the Operating Range
CY7C008/009
CY7C018/019
-12[1]
Parameter
Description
Min.
Output HIGH Voltage
(VCC=Min., IOH= –4.0 mA)
VOL
Output LOW Voltage
(VCC=Min., IOH= +4.0 mA)
VIH
Input HIGH Voltage
VIL
Input LOW Voltage
IOZ
Output Leakage Current
ICC
Operating Current
(VCC = Max., IOUT=0 mA)
Outputs Disabled
Com’l.
Standby Current
(Both Ports TTL Level)
CEL & CER ≥ VIH, f = fMAX
Com’l.
Standby Current
(One Port TTL Level)
CEL | CER ≥ VIH, f = fMAX
Com’l.
ISB2
ISB3
ISB4
Max.
2.4
VOH
ISB1
Typ.
-15
Min.
Typ.
-20
Max.
2.4
10
0.4
2.2
0.8
195
–10
10
190
0.8
Ind.[9]
55
75
50
70
[9]
Ind.
125
205
120
180
[9]
Ind.
Standby Current
Com’l.
(Both Ports CMOS Level)
Ind.[9]
CEL & CER ≥ VCC – 0.2V, f = 0
0.05
Standby Current (One Port
Com’l.
CMOS Level)
Ind.[9]
CEL | CER ≥ VIH, f = fMAX[10]
115
0.5
185
0.05
110
0.5
160
V
V
10
µA
180
265
mA
305
290
mA
45
65
mA
60
80
mA
110
160
mA
125
175
mA
0.05
0.5
mA
0.05
0.5
mA
100
140
mA
115
155
mA
–10
280
Unit
V
0.8
325
Max.
V
0.4
2.2
–10
Typ.
2.4
0.4
2.2
Min.
.
Capacitance[11]
Parameter
Description
CIN
Input Capacitance
COUT
Output Capacitance
Test Conditions
TA = 25°C, f = 1 MHz,
VCC = 5.0V
Max.
Unit
10
pF
10
pF
Note:
10. fMAX = 1/tRC = All inputs cycling at f = 1/tRC (except output enable). f = 0 means no address or control lines change. This applies only to inputs at CMOS level
standby ISB3
Document #: 38-06041 Rev. *D
Page 5 of 19
CY7C008/009
CY7C018/019
AC Test Loads and Waveforms
5V
5V
R1 = 893Ω
RTH = 250Ω
OUTPUT
OUTPUT
R1 = 893Ω
OUTPUT
C = 30 pF
C = 30 pF
R2 = 347Ω
C = 5 pF
VTH = 1.4V
(a) Normal Load (Load 1)
R2 = 347Ω
(c) Three-State Delay (Load 2)
(Used for tLZ, tHZ, tHZWE, & tLZWE
including scope and jig)
(b) Thévenin Equivalent (Load 1)
ALL INPUT PULSES
3.0V
GND
90%
10%
90%
10%
≤ 3 ns
≤ 3 ns
AC Test Loads (Applicable to -12 only)[12]
1.00
OUTPUT
0.90
R = 50Ω
C
VTH = 1.4V
(a) Load 1 (-12 only)
∆ (ns) for all -12 access times
Z0 = 50Ω
0.80
0.70
0.60
0.50
0.40
0.30
0.20
0.10
0.00
0
5
10
15
20
25
30
Capacitance (pF)
(b) Load Derating Curve
Notes:
11. Tested initially and after any design or process changes that may affect these parameters.
12. Test conditions: C = 0 pF.
Document #: 38-06041 Rev. *D
Page 6 of 19
CY7C008/009
CY7C018/019
Switching Characteristics Over the Operating Range[13]
CY7C008/009
CY7C018/019
-12[1]
Parameter
Description
Min.
-15
Max.
Min.
-20
Max.
Min.
Max.
Unit
READ CYCLE
tRC
Read Cycle Time
tAA
Address to Data Valid
tOHA
Output Hold From Address Change
tACE[14]
CE LOW to Data Valid
12
15
20
ns
tDOE
OE LOW to Data Valid
8
10
12
ns
12
ns
tLZOE
[15, 16, 17]
OE LOW to Low Z
tHZOE[13, 16, 17]
OE HIGH to High Z
tLZCE[15, 16, 17]
CE LOW to Low Z
tHZCE[15, 16, 17]
tPU[17]
tPD[17]
tABE[14]
CE HIGH to High Z
CE LOW to Power-Up
12
15
12
3
20
15
3
3
3
10
ns
3
10
0
ns
ns
3
10
3
0
20
3
3
10
ns
ns
12
ns
0
ns
CE HIGH to Power-Down
12
15
20
ns
Byte Enable Access Time
12
15
20
ns
WRITE CYCLE
tWC
Write Cycle Time
12
15
20
ns
tSCE[14]
CE LOW to Write End
10
12
15
ns
tAW
Address Valid to Write End
10
12
15
ns
tHA
Address Hold From Write End
0
0
0
ns
tSA[14]
Address Set-Up to Write Start
0
0
0
ns
tPWE
Write Pulse Width
10
12
15
ns
tSD
Data Set-Up to Write End
10
10
15
ns
tHD
Data Hold From Write End
0
0
0
ns
tHZWE[16, 17]
tLZWE[16, 17]
tWDD[18]
tDDD[18]
R/W LOW to High Z
R/W HIGH to Low Z
10
3
10
3
12
3
ns
ns
Write Pulse to Data Delay
25
30
45
ns
Write Data Valid to Read Data Valid
20
25
30
ns
Notes:
13. Test conditions assume signal transition time of 3 ns or less, timing reference levels of 1.5V, input pulse levels of 0 to 3.0V, and output loading of the specified
IOI/IOH and 30-pF load capacitance.
14. To access RAM, CE = L, SEM = H. To access semaphore, CE = H and SEM = L. Either condition must be valid for the entire tSCE time.
15. At any given temperature and voltage condition for any given device, tHZCE is less than tLZCE and tHZOE is less than tLZOE.
16. Test conditions used are Load 2.
17. This parameter is guaranteed by design, but it is not production tested.
18. For information on port-to-port delay through RAM cells from writing port to reading port, refer to Read Timing with Busy waveform.
Document #: 38-06041 Rev. *D
Page 7 of 19
CY7C008/009
CY7C018/019
Switching Characteristics Over the Operating Range[13] (continued)
CY7C008/009
CY7C018/019
-12[1]
Parameter
Description
Min.
-15
Max.
Min.
-20
Max.
Min.
Max.
Unit
[19]
BUSY TIMING
tBLA
BUSY LOW from Address Match
12
15
20
ns
tBHA
BUSY HIGH from Address Mismatch
12
15
20
ns
tBLC
BUSY LOW from CE LOW
12
15
20
ns
17
ns
tBHC
BUSY HIGH from CE HIGH
tPS
Port Set-Up for Priority
5
12
5
15
5
ns
tWB
R/W HIGH after BUSY (Slave)
0
0
0
ns
tWH
R/W HIGH after BUSY HIGH (Slave)
11
13
15
ns
tBDD[20]
BUSY HIGH to Data Valid
12
15
20
ns
INTERRUPT TIMING[19]
tINS
INT Set Time
12
15
20
ns
tINR
INT Reset Time
12
15
20
ns
SEMAPHORE TIMING
tSOP
SEM Flag Update Pulse (OE or SEM)
10
10
10
ns
tSWRD
SEM Flag Write to Read Time
5
5
5
ns
tSPS
SEM Flag Contention Window
5
5
5
ns
tSAA
SEM Address Access Time
Data Retention Mode
The CY7C008/009 and CY7C018/019 are designed with
battery backup in mind. Data retention voltage and supply
current are guaranteed over temperature. The following rules
ensure data retention:
1. Chip Enable (CE) must be held HIGH during data retention,
within VCC to VCC – 0.2V.
12
15
20
ns
Timing
Data Retention Mode
VCC
4.5V
VCC > 2.0V
4.5V
VCC to VCC – 0.2V
CE
tRC
V
IH
2. CE must be kept between VCC – 0.2V and 70% of VCC
during the power-up and power-down transitions.
3. The RAM can begin operation >tRC after VCC reaches the
minimum operating voltage (4.5 volts).
Parameter
ICCDR1
Test Conditions[21]
@ VCCDR = 2V
Max.
Unit
1.5
mA
Notes:
19. Test conditions used are Load 1.
20. tBDD is a calculated parameter and is the greater of tWDD–tPWE (actual) or tDDD–tSD (actual).
21. CE = VCC, Vin = GND to VCC, TA = 25°C. This parameter is guaranteed but not tested.
Document #: 38-06041 Rev. *D
Page 8 of 19
CY7C008/009
CY7C018/019
Switching Waveforms
Read Cycle No. 1 (Either Port Address Access)[22, 23, 24]
tRC
ADDRESS
tOHA
DATA OUT
tAA
tOHA
PREVIOUS DATA VALID
DATA VALID
Read Cycle No. 2 (Either Port CE/OE Access)[22, 25, 26]
tACE
CE
tDOE
OE
tHZCE
tHZOE
tLZOE
DATA VALID
DATA OUT
tLZCE
tPU
tPD
ICC
CURRENT
ISB
Read Cycle No. 3 (Either Port)[22, 24, 25, 26]
tRC
ADDRESS
tOHA
tAA
tLZCE
tABE
CE
tHZCE
tACE
tLZCE
DATA OUT
Notes:
22. R/W is HIGH for read cycles.
23. Device is continuously selected CE = VIL. This waveform cannot be used for semaphore reads.
24. OE = VIL.
25. Address valid prior to or coincident with CE transition LOW.
26. To access RAM, CE = VIL, SEM = VIH. To access semaphore, CE = VIH, SEM = VIL.
Document #: 38-06041 Rev. *D
Page 9 of 19
CY7C008/009
CY7C018/019
Switching Waveforms (continued)
Write Cycle No. 1: R/W Controlled Timing[27, 28, 29, 30]
tWC
ADDRESS
tHZOE [32]
OE
tAW
CE
[31]
tPWE[30]
tSA
tHA
R/W
tHZWE[32]
DATA OUT
tLZWE
NOTE 33
NOTE 33
tSD
tHD
DATA IN
Write Cycle No. 2: CE Controlled Timing[27, 28, 29, 34]
tWC
ADDRESS
tAW
CE
[28]
tSA
tSCE
tHA
R/W
tSD
tHD
DATA IN
Notes:
27. R/W must be HIGH during all address transitions.
28. A write occurs during the overlap (tSCE or tPWE) of a LOW CE or SEM.
29. tHA is measured from the earlier of CE or R/W or (SEM or R/W) going HIGH at the end of write cycle.
30. If OE is LOW during a R/W controlled write cycle, the write pulse width must be the larger of tPWE or (tHZWE + tSD) to allow the I/O drivers to turn off and data
to be placed on the bus for the required tSD. If OE is HIGH during an R/W controlled write cycle, this requirement does not apply and the write pulse can be
as short as the specified tPWE.
31. To access RAM, CE = VIL, SEM = VIH.
32. Transition is measured ±500 mV from steady state with a 5-pF load (including scope and jig). This parameter is sampled and not 100% tested.
33. During this period, the I/O pins are in the output state, and input signals must not be applied.
34. If the CE or SEM LOW transition occurs simultaneously with or after the R/W LOW transition, the outputs remain in the high-impedance state.
Document #: 38-06041 Rev. *D
Page 10 of 19
CY7C008/009
CY7C018/019
Switching Waveforms (continued)
Semaphore Read After Write Timing, Either Side[35]
tOHA
tSAA
A0–A2
VALID ADRESS
VALID ADRESS
tAW
tACE
tHA
SEM
tSCE
tSOP
tSD
I/O0
DATAIN VALID
tSA
tPWE
DATAOUT VALID
tHD
R/W
tSWRD
tDOE
tSOP
OE
WRITE CYCLE
READ CYCLE
Timing Diagram of Semaphore Contention[36, 37, 38]
A0L–A2L
MATCH
R/WL
SEML
tSPS
A0R–A2R
MATCH
R/WR
SEMR
Notes:
35. CE = HIGH for the duration of the above timing (both write and read cycle).
36. I/O0R = I/O0L = LOW (request semaphore); CER = CEL = HIGH.
37. Semaphores are reset (available to both ports) at cycle start.
38. If tSPS is violated, the semaphore will definitely be obtained by one side or the other, but which side will get the semaphore is unpredictable.
Document #: 38-06041 Rev. *D
Page 11 of 19
CY7C008/009
CY7C018/019
Switching Waveforms (continued)
Timing Diagram of Read with BUSY (M/S=HIGH)[39]
tWC
ADDRESSR
MATCH
tPWE
R/WR
tHD
tSD
DATA INR
VALID
tPS
ADDRESSL
MATCH
tBLA
tBHA
BUSYL
tBDD
tDDD
DATA OUTL
VALID
tWDD
Write Timing with Busy Input (M/S=LOW)
tPWE
R/W
BUSY
tWB
tWH
Note:
39. CEL = CER = LOW.
Document #: 38-06041 Rev. *D
Page 12 of 19
CY7C008/009
CY7C018/019
Switching Waveforms (continued)
Busy Timing Diagram No. 1 (CE Arbitration)[40]
CEL Valid First:
ADDRESS L,R
ADDRESS MATCH
CEL
tPS
CER
tBLC
tBHC
BUSYR
CER Valid First:
ADDRESS L,R
ADDRESS MATCH
CER
tPS
CE L
tBLC
tBHC
BUSY L
Busy Timing Diagram No. 2 (Address Arbitration)[40]
Left Address Valid First:
tRC or tWC
ADDRESS L
ADDRESS MATCH
ADDRESS MISMATCH
tPS
ADDRESSR
tBLA
tBHA
BUSY R
Right Address Valid First:
tRC or tWC
ADDRESSR
ADDRESS MATCH
ADDRESS MISMATCH
tPS
ADDRESSL
tBLA
tBHA
BUSY L
Note:
40. If tPS is violated, the busy signal will be asserted on one side or the other, but there is no guarantee to which side BUSY will be asserted.
Document #: 38-06041 Rev. *D
Page 13 of 19
CY7C008/009
CY7C018/019
Switching Waveforms (continued)
Interrupt Timing Diagrams
Left Side Sets INTR:
ADDRESSL
tWC
WRITE FFFF (1FFFF for CY7C009/19)
tHA[41]
CE L
R/W L
INT R
tINS [42]
Right Side Clears INTR:
tRC
READ FFFF
(1FFFF for CY7C009/19)
ADDRESSR
CE R
tINR [42]
R/WR
OE R
INTR
Right Side Sets INTL:
ADDRESSR
tWC
WRITE FFFE (1FFFE for CY7C009/19)
tHA[41]
CE R
R/W R
INT L
tINS[42]
Left Side Clears INTL:
tRC
READ FFFE
(1FFFE for CY7C009/19)
ADDRESSR
CE L
tINR[42]
R/W L
OE L
INT L
Notes:
41. tHA depends on which enable pin (CEL or R/WL) is deasserted first.
42. tINS or tINR depends on which enable pin (CEL or R/WL) is asserted last.
Document #: 38-06041 Rev. *D
Page 14 of 19
CY7C008/009
CY7C018/019
Architecture
The CY7C008/009 and CY7C018/019 consist of an array of
64K and 128K words of 8 and 9 bits each of dual-port RAM
cells, I/O and address lines, and control signals (CE, OE,
R/W). These control pins permit independent access for reads
or writes to any location in memory. To handle simultaneous
writes/reads to the same location, a BUSY pin is provided on
each port. Two interrupt (INT) pins can be utilized for
port-to-port communication. Two semaphore (SEM) control
pins are used for allocating shared resources. With the M/S
pin, the devices can function as a master (BUSY pins are
outputs) or as a slave (BUSY pins are inputs). The devices
also have an automatic power-down feature controlled by CE.
Each port is provided with its own output enable control (OE),
which allows data to be read from the device.
Functional Description
Write Operation
Data must be set up for a duration of tSD before the rising edge
of R/W in order to guarantee a valid write. A write operation is
controlled by either the R/W pin (see Write Cycle No. 1
waveform) or the CE pin (see Write Cycle No. 2 waveform).
Required inputs for non-contention operations are summarized in Table 1.
If a location is being written to by one port and the opposite
port attempts to read that location, a port-to-port flowthrough
delay must occur before the data is read on the output;
otherwise the data read is not deterministic. Data will be valid
on the port tDDD after the data is presented on the other port.
Read Operation
When reading the device, the user must assert both the OE
and CE pins. Data will be available tACE after CE or tDOE after
OE is asserted. If the user wishes to access a semaphore flag,
then the SEM pin must be asserted instead of the CE pin, and
OE must also be asserted.
Interrupts
The upper two memory locations may be used for message
passing. The highest memory location (FFFF for the
CY7C008/18, 1FFFF for the CY7C009/19) is the mailbox for
the right port and the second-highest memory location (FFFE
for the CY7C008/18, 1FFFE for the CY7C009/19) is the
mailbox for the left port. When one port writes to the other
port’s mailbox, an interrupt is generated to the owner. The
interrupt is reset when the owner reads the contents of the
mailbox. The message is user defined.
Each port can read the other port’s mailbox without resetting
the interrupt. The active state of the busy signal (to a port)
prevents the port from setting the interrupt to the winning port.
Also, an active busy to a port prevents that port from reading
its own mailbox and, thus, resetting the interrupt to it.
If an application does not require message passing, do not
connect the interrupt pin to the processor’s interrupt request
input pin.
The operation of the interrupts and their interaction with Busy
is summarized in Table 2.
Busy
The CY7C008/009 and CY7C018/019 provide on-chip
arbitration to resolve simultaneous memory location access
(contention). If both ports’ CEs are asserted and an address
match occurs within tPS of each other, the busy logic will
determine which port has access. If tPS is violated, one port
will definitely gain permission to the location, but it is not
predictable which port will get that permission. BUSY will be
asserted tBLA after an address match or tBLC after CE is taken
LOW.
Master/Slave
A M/S pin is provided in order to expand the word width by
configuring the device as either a master or a slave. The BUSY
output of the master is connected to the BUSY input of the
slave. This will allow the device to interface to a master device
with no external components. Writing to slave devices must be
delayed until after the BUSY input has settled (tBLC or tBLA),
otherwise, the slave chip may begin a write cycle during a
contention situation. When tied HIGH, the M/S pin allows the
device to be used as a master and, therefore, the BUSY line
is an output. BUSY can then be used to send the arbitration
outcome to a slave.
Semaphore Operation
The CY7C008/009 and CY7C018/019 provide eight
semaphore latches, which are separate from the dual-port
memory locations. Semaphores are used to reserve resources
that are shared between the two ports. The state of the
semaphore indicates that a resource is in use. For example, if
the left port wants to request a given resource, it sets a latch
by writing a zero to a semaphore location. The left port then
verifies its success in setting the latch by reading it. After
writing to the semaphore, SEM or OE must be deasserted for
tSOP before attempting to read the semaphore. The
semaphore value will be available tSWRD + tDOE after the rising
edge of the semaphore write. If the left port was successful
(reads a zero), it assumes control of the shared resource,
otherwise (reads a one) it assumes the right port has control
and continues to poll the semaphore. When the right side has
relinquished control of the semaphore (by writing a one), the
left side will succeed in gaining control of the semaphore. If the
left side no longer requires the semaphore, a one is written to
cancel its request.
Semaphores are accessed by asserting SEM LOW. The SEM
pin functions as a chip select for the semaphore latches (CE
must remain HIGH during SEM LOW). A0–2 represents the
semaphore address. OE and R/W are used in the same
manner as a normal memory access. When writing or reading
a semaphore, the other address pins have no effect.
When writing to the semaphore, only I/O0 is used. If a zero is
written to the left port of an available semaphore, a one will
appear at the same semaphore address on the right port. That
semaphore can now only be modified by the side showing zero
(the left port in this case). If the left port now relinquishes
control by writing a one to the semaphore, the semaphore will
be set to one for both sides. However, if the right port had
requested the semaphore (written a zero) while the left port
had control, the right port would immediately own the
semaphore as soon as the left port released it. Table 3 shows
sample semaphore operations.
When reading a semaphore, all data lines output the
semaphore value. The read value is latched in an output
Document #: 38-06041 Rev. *D
Page 15 of 19
CY7C008/009
CY7C018/019
register to prevent the semaphore from changing state during
a write from the other port. If both ports attempt to access the
semaphore within tSPS of each other, the semaphore will
definitely be obtained by one side or the other, but there is no
guarantee which side will control the semaphore.
Table 1. Non-Contending Read/Write
Inputs
Outputs
CE
R/W
OE
SEM
H
X
X
H
High Z
Deselected: Power-Down
H
H
L
L
Data Out
Read Data in Semaphore Flag
X
X
H
X
High Z
I/O Lines Disabled
X
L
Data In
Write into Semaphore Flag
H
L
H
Data Out
Read
L
L
X
H
Data In
Write
L
X
X
L
H
L
I/O0–I/O8
Operation
Not Allowed
Table 2. Interrupt Operation Example (assumes BUSYL=BUSYR=HIGH)[43]
Left Port
Function
Right Port
R/WL
CEL
OEL
A0L–16L
INTL
R/WR
CER
OER
A0R–16R
INTR
Set Right INTR Flag
L
L
X
FFFF (or 1FFFF)
X
X
X
X
X
L[45]
Reset Right INTR Flag
X
X
X
X
X
X
L
L
FFFF (or 1FFFF)
H[44]
Set Left INTL Flag
X
X
X
X
L[44]
L
L
X
FFFE (or 1FFFE)
X
FFFE (or 1FFFE)
H[45]
X
X
X
X
X
Reset Left INTL Flag
X
L
L
Table 3. Semaphore Operation Example
I/O0–I/O8 Left
I/O0–I/O8Right
No action
1
1
Semaphore free
Left port writes 0 to semaphore
0
1
Left port has semaphore token
Right port writes 0 to semaphore
0
1
No change. Right side has no write access to semaphore
Left port writes 1 to semaphore
1
0
Right port obtains semaphore token
Left port writes 0 to semaphore
1
0
No change. Left port has no write access to semaphore
Right port writes 1 to semaphore
0
1
Left port obtains semaphore token
Left port writes 1 to semaphore
1
1
Semaphore free
Right port writes 0 to semaphore
1
0
Right port has semaphore token
Right port writes 1 to semaphore
1
1
Semaphore free
Left port writes 0 to semaphore
0
1
Left port has semaphore token
Left port writes 1 to semaphore
1
1
Semaphore free
Function
Status
Notes:
43. A0L–16L and A0R–16R, 1FFFF/1FFFE for the CY7C009/019.
44. If BUSYR = L, then no change.
45. If BUSYL = L, then no change.
Document #: 38-06041 Rev. *D
Page 16 of 19
CY7C008/009
CY7C018/019
Ordering Information
64K x8 Asynchronous Dual-Port SRAM
Speed
(ns)
Ordering Code
Package
Name
Package Type
Operating
Range
12[1]
CY7C008-12AC
A100
100-Pin Thin Quad Flat Pack
Commercial
15
CY7C008-15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C008-15AXC
A100
100-Pin Pb-Free Thin Quad Flat Pack
CY7C008-20AC
A100
100-Pin Thin Quad Flat Pack
20
Commercial
128K x 8 Asynchronous Dual-Port SRAM
Speed
(ns)
Ordering Code
Package
Name
Package Type
Operating
Range
12[1]
CY7C009-12AC
A100
100-Pin Thin Quad Flat Pack
Commercial
15
CY7C009-15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C009-15AXC
A100
100-Pin Pb-Free Thin Quad Flat Pack
20
CY7C009-20AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C009-20AI
A100
100-Pin Thin Quad Flat Pack
Industrial
64K x 9 Asynchronous Dual-Port SRAM
Speed
(ns)
Ordering Code
Package
Name
Package Type
Operating
Range
12[1]
CY7C018-12AC
A100
100-Pin Thin Quad Flat Pack
Commercial
15
CY7C018-15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
20
CY7C018-20AC
A100
100-Pin Thin Quad Flat Pack
Commercial
128K x 9 Asynchronous Dual-Port SRAM
Speed
(ns)
Ordering Code
Package
Name
Package Type
Operating
Range
12[1]
CY7C019-12AC
A100
100-Pin Thin Quad Flat Pack
Commercial
15
CY7C019-15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
20
CY7C019-20AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C019-20AI
A100
100-Pin Thin Quad Flat Pack
Industrial
Document #: 38-06041 Rev. *D
Page 17 of 19
CY7C008/009
CY7C018/019
Package Diagram
100-Pin Thin Plastic Quad Flat Pack (TQFP) A100
100-Pin Pb-Free Thin Plastic Quad Flat Pack (TQFP) A100
51-85048-*B
All products and company names mentioned in this document may be the trademarks of their respective holders.
Document #: 38-06041 Rev. *D
Page 18 of 19
© Cypress Semiconductor Corporation, 2005. 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 product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be
used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress 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
products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.
CY7C008/009
CY7C018/019
Document History Page
Document Title: CY7C008/009, CY7C018/019 64K/128K x 8/9 Dual Port Static RAM
Document Number: 38-06041
REV.
ECN NO.
Issue
Date
Orig. of
Change
**
110189
09/29/01
SZV
Change from Spec number: 38-00665 to 38-06041
*A
113542
04/15/02
OOR
Change pin 85 from BUSYL to BUSYR (pg. 3)
*B
122291
12/27/02
RBI
Power up requirements added to Maximum Ratings Information
*C
236764
SEE ECN
YDT
Removed cross information from features section
*D
393436
See ECN
YIM
Added Pb-Free Logo
Added Pb-Free parts to ordering information:
CY7C008-15AXC, CY7C009-15AXC
Document #: 38-06041 Rev. *D
Description of Change
Page 19 of 19