ETC CY7C0241-15AC

51
Static RAM with Sem, Int, Busy
CY7C024/0241
CY7C025/0251
4K x 16/18 and 8K x 16/18 Dual-Port
Static RAM with Sem, Int, Busy
Features
Functional Description
• True Dual-Ported memory cells which allow
simultaneous reads of the same memory location
• 4K x 16 organization (CY7C024)
• 4K x 18 organization (CY7C0241)
• 8K x 16 organization (CY7C025)
• 8K x 18 organization (CY7C0251)
• 0.65-micron CMOS for optimum speed/power
• High-speed access: 15 ns
• Low operating power: I CC = 150 mA (typ.)
• Fully asynchronous operation
• Automatic power-down
• Expandable data bus to 32/36 bits or more using
Master/Slave chip select when using more than one
device
• On-chip arbitration logic
• Semaphores included to permit software handshaking
between ports
• INT flag for port-to-port communication
• Separate upper-byte and lower-byte control
• Pin select for Master or Slave
• Available in 84-pin PLCC and 100-pin TQFP
• Pin-compatible and functionally equivalent to
IDT7024/IDT7025
The CY7C024/0241 and CY7C025/0251 are low-power
CMOS 4K x 16/18 and 8K x 16/18 dual-port static RAMs. Various arbitration schemes are included on the CY7C024/0241
and CY7C025/0251 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 CY7C024/0241 and
CY7C025/0251 can be utilized as standalone 16-/18-bit dual-port static RAMs or multiple devices can be combined in
order to function as a 32-/36-bit or wider master/slave dual-port static RAM. An M/S pin is provided for implementing
32-/36-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.
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 CY7C024/0241 and CY7C025/0251 are available in
84-pin PLCCs (CY7C024 and CY7C025 only) and 100-pin
Thin Quad Plastic Flatpack (TQFP).
Cypress Semiconductor Corporation
•
3901 North First Street
•
San Jose
•
CA 95134
•
408-943-2600
January 8, 1999
CY7C024/0241
CY7C025/0251
v
Logic Block Diagram
R/W L
UB L
R/WR
UBR
LB L
CE L
OE L
LB R
CER
OE R
[3]
I/O 8L – I/O 15L
[2]
I/O8R – I/O 15R
I/O
CONTROL
I/O
CONTROL
I/O 0L – I/O 7L
BUSYL
(CY7C025/0251)
I/O
[1]
0R –
I/O
[3]
[2]
7R
[1]
BUSYR
A12R (CY7C025/0251)
A12L
A11L
MEMORY
ARRAY
ADDRESS
DECODER
ADDRESS
DECODER
A11R
A0L
A 0R
CE L
OE L
INTERRUPT
SEMAPHORE
ARBITRATION
UB L
LB L
CE R
OE R
UB R
LB R
R/W R
SEM R
R/W L
SEM L
INT L
M/S
Notes:
1. BUSY is an output in master mode and an input in slave mode.
2. I/O0 –I/O8 on the CY7C0241/0251.
3. I/O9 –I/O17 on the CY7C0241/0251.
2
INTR
7C024–1
CY7C024/0241
CY7C025/0251
Pin Configurations
9L
A
8L
A 10L
A
LB L
NC [4]
A11L
SEM L
CEL
UB L
R/WL
GND
I/O 1L
I/O0L
OE L
V CC
I/O2L
I/O4L
I/O3L
I/O5L
I/O7L
I/O6L
84-Pin PLCC
Top View
11 10 9 8 7 6 5 4 3 2
1 84 83 82 81 80 79 78 77 76 75
74
73
72
71
70
69
68
67
66
CY7C024/5
65
64
63
62
61
60
59
A7L
A6L
A5L
A4L
A3L
A2L
A1L
A0L
INTL
BUSYL
GND
M/S
BUSYR
INTR
A0R
A1R
A2R
A3R
A4R
A5R
A6R
A10R
A 9R
A 8R
A 7R
NC [5]
A11R
GND
SEM R
CER
UB R
LB R
OE R
R/WR
GND
I/O15R
I/O13R
I/O14R
I/O11R
I/O12R
I/O 9R
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
58
28
57
29
56
30
55
31
54
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
I/O10R
I/O8L
I/O9L
I/O10L
I/O11L
I/O12L
I/O13L
GND
I/O14L
I/O15L
VCC
GND
I/O0R
I/O1R
I/O2R
VCC
I/O3R
I/O4R
I/O5R
I/O6R
I/O7R
I/O8R
7C024–1
A7L
A6L
A9L
A8L
UBL
LBL
NC [4]
A11L
A10L
OEL
VCC
R/WL
SEML
CEL
I/O1L
I/O0L
I/O4L
I/O3L
I/O2L
GND
I/O9L
I/O8L
I/O7L
I/O6L
I/O5L
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
NC
NC
NC
I/O10L
I/O11L
I/O12L
I/O13L
GND
I/O14L
I/O15L
VCC
GND
I/O0R
I/O1R
I/O2R
VCC
I/O3R
I/O4R
I/O5R
I/O6R
NC
NC
NC
NC
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
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
CY7C024/5
NC
NC
NC
NC
A5L
A4L
A3L
A2L
A1L
A0L
INTL
BUSYL
GND
M/S
BUSYR
INTR
A0R
A1R
A2R
A3R
A4R
NC
NC
NC
NC
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
Notes:
4. A12L on the CY7C025/0251.
5. A12R on the CY7C025/0251.
3
A7R
A6R
A5R
NC[5]
A11R
A10R
A9R
A8R
R/WR
GND
SEMR
CER
UBR
LBR
GND
I/O15R
ŒR
I/O13R
I/O14R
I/O7R
I/O8R
I/O9R
I/O10R
I/O11R
I/O12R
7C024–2
CY7C024/0241
CY7C025/0251
Pin Configurations (continued)
A7L
A6L
A9L
A8L
UBL
LBL
NC [4]
A11L
A10L
OEL
VCC
R/WL
SEML
CEL
I/O1L
I/O0L
I/O4L
I/O3L
I/O2L
GND
I/O10L
I/O9L
I/O7L
I/O6L
I/O5L
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
NC
I/O8L
I/O17L
I/O11L
I/O12L
I/O13L
I/O14L
GND
I/O15L
I/O16L
VCC
GND
I/O0R
I/O1R
I/O2R
VCC
I/O3R
I/O4R
I/O5R
I/O6R
I/O8R
I/O17R
NC
NC
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
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
CY7C0241/0251
NC
NC
NC
NC
A5L
A4L
A3L
A2L
A1L
A0L
INTL
BUSYL
GND
M/S
BUSYR
INTR
A0R
A1R
A2R
A3R
A4R
NC
NC
NC
NC
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
A7R
A6R
A5R
NC [5]
A11R
A10R
A9R
A8R
I/O10R
I/O11R
I/O12R
I/O13R
I/O14R
I/O15R
GND
I/O16R
OER
R/WR
GND
SEMR
CER
UBR
LBR
I/O7R
I/O9R
7C024–3
Pin Definitions
Left Port
Right Port
Description
CEL
CER
Chip Enable
R/WL
R/WR
Read/Write Enable
OEL
OER
Output Enable
A0L–A11/12L
A0R–A11/12R
Address
I/O0L–I/O 15/17L
I/O0R–I/O 15/17R
Data Bus Input/Output
SEML
SEMR
Semaphore Enable
UBL
UBR
Upper Byte Select
LBL
LBR
Lower Byte Select
INTL
INTR
Interrupt Flag
BUSYL
BUSYR
Busy Flag
M/S
Master or Slave Select
VCC
Power
GND
Ground
4
CY7C024/0241
CY7C025/0251
Selection Guide
7C024/0241–15
7C025/0251–15
7C024/0241–25
7C025/0251–25
7C024/0241–35
7C025/0251–35
7C024/0241–55
7C025/0251–55
Maximum Access Time (ns)
15
25
35
55
Typical Operating Current (mA)
190
170
160
150
Typical Standby Current for ISB1 (mA)
50
40
30
20
Output Current into Outputs (LOW)............................. 20 mA
Maximum Ratings
Static Discharge Voltage .......................................... >2001V
(per MIL-STD-883, Method 3015)
(Above which the useful life may be impaired. For user guidelines, not tested.)
Storage Temperature .................................–65°C to +150°C
Latch-Up Current.................................................... >200 mA
Ambient Temperature with
Power Applied .............................................–55°C to +125°C
Operating Range
Supply Voltage to Ground Potential ............... –0.3V to +7.0V
Range
Ambient
Temperature
VCC
DC Voltage Applied to Outputs
in High Z State ............................................... –0.5V to +7.0V
Commercial
0°C to +70°C
5V ± 10%
–40°C to +85°C
5V ± 10%
Industrial
DC Input Voltage[6] ......................................... –0.5V to +7.0V
Electrical Characteristics Over the Operating Range
7C024/0241–15
7C025/0251–15
Parameter
Description
Test Conditions
Min. Typ.
Max.
7C024/0241–25
7C025/0251–25
Min. Typ.
Max.
Unit
0.4
V
VOH
Output HIGH Voltage
VCC = Min., IOH = –4.0 mA
VOL
Output LOW Voltage
VCC = Min., IOL = 4.0 mA
VIH
Input HIGH Voltage
2.2
VIL
Input LOW Voltage
–0.7
0.8
–0.7
0.8
V
2.4
2.4
V
0.4
2.2
V
IIX
Input Leakage Current
GND ≤ VI ≤ VCC
–10
+10
–10
+10
µA
IOZ
Output Leakage
Current
Output Disabled,
GND ≤ VO ≤ VCC
–10
+10
–10
+10
µA
ICC
Operating Current
VCC = Max., IOUT = 0 mA,
Outputs Disabled
mA
ISB1
Standby Current
CEL and CER ≥ V IH,
(Both Ports TTL Levels) f = fMAX[7]
Ind
50
70
ISB2
Standby Current
(One Port TTL Level)
CEL or CER ≥ VIH,
f = fMAX[7]
Com’l
120
Ind
ISB3
Standby Current
(Both Ports CMOS
Levels)
Both Ports CE and CER ≥
VCC – 0.2V, VIN ≥ VCC – 0.2V
or VIN ≤ 0.2V, f = 0[7]
Com’l
Ind
Standby Current
(Both Ports CMOS
Levels)
One Port CEL or
CER ≥ VCC – 0.2V,
VIN ≥ VCC – 0.2V or VIN ≤ 0.2V,
Active Port Outputs, f = fMAX[7]
Com’l
110
160
90
130
Ind
110
160
90
150
ISB4
Com’l
190
300
170
250
Ind
200
320
170
290
Com’l
50
70
40
60
180
100
150
120
180
100
170
3
15
3
15
3
15
3
15
mA
75
mA
mA
mA
Notes:
6. Pulse width < 20 ns.
7. 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.
5
CY7C024/0241
CY7C025/0251
Electrical Characteristics Over the Operating Range (continued)
7C024/0241–35
7C025/0251–35
Parameter
Description
Test Conditions
VOH
Output HIGH Voltage
VCC = Min., IOH = –4.0 mA
VCC = Min., IOL = 4.0 mA
Min.
Typ.
7C024/0241–55
7C025/0251–55
Max. Min.
2.4
Typ.
Max. Unit
2.4
V
VOL
Output LOW Voltage
VIH
Input HIGH Voltage
2.2
VIL
Input LOW Voltage
–0.7
0.8
–0.7
0.8
V
IIX
Input Leakage Current
–10
+10
–10
+10
µA
IOZ
GND ≤ VI ≤ VCC
Output Leakage Current Output Disabled, GND ≤ VO ≤ VCC
+10
–10
+10
µA
ICC
Operating Current
VCC = Max., IOUT = 0 mA,
Outputs Disabled
Com’l
160
230
150
230
mA
Ind
160
260
150
260
ISB1
Standby Current
(Both Ports TTL Levels)
CEL and CER ≥ VIH,
f = fMAX[7]
Com’l
30
50
20
50
Ind
30
65
20
65
ISB2
Standby Current
(One Port TTL Level)
CEL or CER ≥ VIH,
f = fMAX[7]
Com’l
85
135
75
135
Ind
85
150
75
150
ISB3
Standby Current
(Both Ports CMOS
Levels)
Both Ports CE and CER ≥
VCC – 0.2V, VIN ≥ VCC – 0.2V
or VIN ≤ 0.2V, f = 0[7]
Com’l
3
15
3
15
Ind
3
15
3
15
Standby Current
(Both Ports CMOS
Levels)
One Port CEL or
CER ≥ VCC – 0.2V,
VIN ≥ VCC – 0.2V or VIN ≤ 0.2V,
Active Port Outputs, f = fMAX[7]
Com’l
80
120
70
120
Ind
80
135
70
135
ISB4
0.4
0.4
V
2.2
–10
V
mA
mA
mA
mA
Capacitance[8]
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
AC Test Loads and Waveforms
5V
5V
R1 = 893Ω
RTH = 250Ω
OUTPUT
OUTPUT
R1 = 893Ω
OUTPUT
C = 30pF
C = 30 pF
R2 = 347Ω
C = 5 pF
VTH = 1.4V
7C024–8
7C024–9
(a) Normal Load (Load 1)
7C024–10
(c) Three-State Delay (Load 3)
(b) Thévenin Equivalent (Load 1)
ALL INPUT PULSES
OUTPUT
3.0V
C = 30 pF
GND
10%
90%
10%
90%
≤ 3 ns
≤ 3 ns
Load (Load 2)
7C024–11
7C024–12
Note:
8. Tested initially and after any design or process changes that may affect these parameters.
6
R2 = 347Ω
CY7C024/0241
CY7C025/0251
Switching Characteristics Over the Operating Range[9]
7C024/0241–15
7C025/0251–15
Parameter
Description
Min.
7C024/0241–25
7C025/0251–25
Max.
Min.
Max.
7C024/0241–35
7C025/0251–35
Min.
Max.
7C024/0241–55
7C025/0251–55
Min.
Max.
Unit
READ CYCLE
tRC
Read Cycle Time
15
tAA
Address to Data Valid
tOHA
Output Hold From
Address Change
tACE[10]
CE LOW to Data Valid
15
25
35
55
ns
tDOE
OE LOW to Data Valid
10
13
20
25
ns
tLZOE[11, 12, 13]
tHZOE[11,12, 13]
tLZCE[11, 12, 13]
tHZCE[11, 12, 13]
tPU[13]
tPD[13]
tABE[10]
OE Low to Low Z
15
CE LOW to Power-Up
3
3
35
3
10
0
ns
25
3
20
0
ns
ns
3
3
0
55
20
15
ns
3
3
15
3
55
3
3
10
CE HIGH to High Z
35
25
3
OE HIGH to High Z
CE LOW to Low Z
25
ns
ns
25
0
ns
ns
CE HIGH to Power-Down
15
25
25
55
ns
Byte Enable Access Time
15
25
35
55
ns
WRITE CYCLE
tWC
Write Cycle Time
15
25
35
55
ns
tSCE[10]
CE LOW to Write End
12
20
30
35
ns
tAW
Address Set-Up to Write End
12
20
30
35
ns
tHA
Address Hold From
Write End
0
0
0
0
ns
tSA[10]
Address Set-Up to
Write Start
0
0
0
0
ns
tPWE
Write Pulse Width
12
20
25
35
ns
tSD
Data Set-Up to Write End
10
15
15
20
ns
tHD
Data Hold From Write End
0
tHZWE[12, 13]
R/W LOW to High Z
tLZWE[12, 13]
tWDD[14]
tDDD[14]
R/W HIGH to Low Z
0
10
0
15
0
0
0
20
0
ns
25
0
ns
ns
Write Pulse to Data Delay
30
50
60
70
ns
Write Data Valid to Read
Data Valid
25
35
35
45
ns
Notes:
9. 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
I OI/IOH and 30-pF load capacitance.
10. To access RAM, CE=L, UB=L, SEM=H. To access semaphore, CE=H and SEM=L. Either condition must be valid for the entire tSCE time.
11. At any given temperature and voltage condition for any given device, tHZCE is less than tLZCE and tHZOE is less than tLZOE.
12. Test conditions used are Load 3.
13. This parameter is guaranteed but not tested.
14. For information on port-to-port delay through RAM cells from writing port to reading port, refer to Read Timing with Busy waveform.
7
CY7C024/0241
CY7C025/0251
Switching Characteristics Over the Operating Range[9] (continued)
7C024/0241–15
7C025/0251–15
Parameter
Description
BUSY TIMING
Min.
7C024/0241–25
7C025/0251–25
Max.
Min.
Max.
7C024/0241–35
7C025/0251–35
Min.
Max.
7C024/0241–55
7C025/0251–55
Min.
Max.
Unit
[15]
tBLA
BUSY LOW from Address
Match
15
20
20
45
ns
tBHA
BUSY HIGH from Address
Mismatch
15
20
20
40
ns
tBLC
BUSY LOW from CE LOW
15
20
20
40
ns
tBHC
BUSY HIGH from CE HIGH
35
ns
tPS
Port Set-Up for Priority
5
5
5
5
ns
tWB
R/W HIGH after BUSY
(Slave)
0
0
0
0
ns
tWH
R/W HIGH after BUSY
HIGH (Slave)
13
20
30
40
ns
tBDD[16]
BUSY HIGH to Data Valid
15
20
20
Note
16
Note
16
Note
16
Note
16
ns
INTERRUPT TIMING[15]
tINS
INT Set Time
15
20
25
30
ns
tINR
INT Reset Time
15
20
25
30
ns
SEMAPHORE TIMING
tSOP
SEM Flag Update Pulse (OE
or SEM)
10
12
15
20
ns
tSWRD
SEM Flag Write to Read
Time
5
10
10
15
ns
tSPS
SEM Flag Contention
Window
5
10
10
15
ns
tSAA
SEM Address Access Time
15
25
35
55
ns
Notes:
15. Test conditions used are Load 2.
16. t BDD is a calculated parameter and is the greater of tWDD–tPWE (actual) or tDDD–tSD (actual).
Data Retention Mode
Timing
The CY7C024/0241 is designed with battery backup in mind.
Data retention voltage and supply current are guaranteed over
temperature. The following rules insure data retention:
Data Retention Mode
VCC
4.5V
1. Chip enable (CE) must be held HIGH during data retention, within VCC to VCC – 0.2V.
2. CE must be kept between VCC – 0.2V and 70% of VCC
during the power-up and power-down transitions.
4.5V
tRC
VCC to VCC – 0.2V
CE
3. The RAM can begin operation >tRC after VCC reaches the
minimum operating voltage (4.5 volts).
VCC > 2.0V
V
IH
7C024–13
Parameter
ICC DR1
Test Conditions
@ VCCDR = 2V
[17]
Max.
Unit
1.5
mA
Note:
17. CE = VCC, Vin = GND to VCC, TA = 25°C. This parameter is guaranteed but not
tested.
8
CY7C024/0241
CY7C025/0251
Switching Waveforms
Read Cycle No. 1 (Either Port Address Access)[18, 19, 20]
tRC
ADDRESS
tOHA
DATA OUT
tAA
tOHA
PREVIOUS DATA VALID
DATA VALID
7C024–14
Read Cycle No. 2 (Either Port CE/OE Access)[18, 21, 22]
tACE
CE and
LB or UB
tHZCE
tDOE
OE
tHZOE
tLZOE
DATA VALID
DATA OUT
tLZCE
tPU
tPD
ICC
CURRENT
ISB
7C024–15
Read Cycle No. 3 (Either Port)[18, 20, 21, 21, 22]
tRC
ADDRESS
tAA
tOHA
UB or LB
tHZCE
tLZCE
tABE
CE
tHZCE
tACE
tLZCE
DATA OUT
7C024–16
Notes:
18. R/W is HIGH for read cycles
19. Device is continuously selected CE = VIL and UB or LB = VIL . This waveform cannot be used for semaphore reads.
20. OE = VIL.
21. Address valid prior to or coincident with CE transition LOW.
22. To access RAM, CE = VIL, UB or LB = VIL, SEM = VIH. To access semaphore, CE = VIH, SEM = VIL.
9
CY7C024/0241
CY7C025/0251
Switching Waveforms (continued)
Write Cycle No. 1: R/W Controlled Timing[23, 24, 25, 26]
tWC
ADDRESS
tHZOE [29]
OE
tAW
CE
[27,28]
tPWE[26]
tSA
tHA
R/W
tHZWE[29]
DATA OUT
tLZWE
NOTE 30
NOTE 30
tSD
tHD
DATA IN
7C024–17
Write Cycle No. 2: CE Controlled Timing[23, 24, 25, 31]
tWC
ADDRESS
tAW
CE
[27,28]
tSA
tSCE
tHA
R/W
tSD
tHD
DATA IN
7C024–18
Notes:
23. R/W must be HIGH during all address transitions.
24. A write occurs during the overlap (tSCE or tPWE) of a LOW CE or SEM and a LOW UB or LB.
25. tHA is measured from the earlier of CE or R/W or (SEM or R/W) going HIGH at the end of write cycle.
26. 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.
27. To access RAM, CE = VIL, SEM = VIH.
28. To access upper byte, CE = VIL, UB = VIL, SEM = VIH.
To access lower byte, CE = VIL, LB = VIL, SEM = VIH.
29. 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.
30. During this period, the I/O pins are in the output state, and input signals must not be applied.
31. 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.
10
CY7C024/0241
CY7C025/0251
Switching Waveforms (continued)
Semaphore Read After Write Timing, Either Side[32]
tAA
A 0–A 2
VALID ADRESS
VALID ADRESS
tAW
tACE
tHA
SEM
tOHA
tSCE
tSOP
tSD
I/O 0
DATA IN VALID
tSA
tPWE
DATA OUT VALID
tHD
R/W
tSWRD
tDOE
tSOP
OE
WRITE CYCLE
READ CYCLE
7C024–19
Timing Diagram of Semaphore Contention[33, 34, 35]
A0L –A 2L
MATCH
R/WL
SEM L
tSPS
A 0R –A 2R
MATCH
R/WR
SEM R
7C024–20
Notes:
32. CE = HIGH for the duration of the above timing (both write and read cycle).
33. I/O0R = I/O0L = LOW (request semaphore); CER = CEL = HIGH.
34. Semaphores are reset (available to both ports) at cycle start.
35. 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.
11
CY7C024/0241
CY7C025/0251
Switching Waveforms (continued)
Timing Diagram of Read with BUSY (M/S=HIGH)[36]
tWC
ADDRESSR
MATCH
tPWE
R/WR
tHD
tSD
DATA IN R
VALID
tPS
ADDRESSL
MATCH
tBLA
tBHA
BUSY L
tBDD
tDDD
DATA OUTL
VALID
tWDD
7C024–21
Write Timing with Busy Input (M/S=LOW)
tPWE
R/W
BUSY
tWB
tWH
7C024–22
Note:
36. CEL = CER = LOW.
12
CY7C024/0241
CY7C025/0251
Switching Waveforms (continued)
Busy Timing Diagram No.1 (CE Arbitration)[37]
CELValid First:
ADDRESS L,R
ADDRESS MATCH
CEL
tPS
CER
tBLC
tBHC
BUSYR
7C024–23
CER Valid First:
ADDRESS L,R
ADDRESS MATCH
CER
tPS
CE L
tBLC
tBHC
BUSY L
7C024–24
Busy Timing Diagram No.2 (Address Arbitration)[37]
Left Address Valid First
tRC or tWC
ADDRESS L
ADDRESS MATCH
ADDRESS MISMATCH
tPS
ADDRESSR
tBLA
tBHA
BUSY R
7C024–25
Right Address Valid First:
tRC or tWC
ADDRESSR
ADDRESS MATCH
ADDRESS MISMATCH
tPS
ADDRESSL
tBLA
tBHA
BUSY L
7C024–26
Note:
37. 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.
13
CY7C024/0241
CY7C025/0251
Switching Waveforms (continued)
Interrupt Timing Diagrams
Left Side Sets INTR :
ADDRESSL
tWC
WRITE FFF (1FFF CY7C025)
tHA[38]
CE L
R/W L
INT R
tINS [39]
7C024–27
Right Side Clears INT R :
tRC
READ FFF
(1FFF CY7C025)
ADDRESSR
CE R
tINR [39]
R/WR
OE R
INTR
7C024–28
Right Side Sets INT L:
tWC
ADDRESSR
WRITE FFE (1FFE CY7C025)
tHA[38]
CE R
R/W R
INT L
[39]
tINS
7C024–29
Left Side Clears INT L :
tRC
READ FFE
(1FFE CY7C025)
ADDRESSR
CE L
tINR[39]
R/W L
OE L
INT L
7C024–30
Notes:
38. tHA depends on which enable pin (CEL or R/WL) is deasserted first.
39. tINS or tINR depends on which enable pin (CEL or R/WL) is asserted last.
14
CY7C024/0241
CY7C025/0251
tention). 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 which one is not predictable. BUSY will be
asserted tBLA after an address match or tBLC after CE is taken LOW.
Architecture
The CY7C024/0241 and CY7C025/0251 consist of an array of
4K words of 16/18 bits each and 8K words of 16/18 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 CY7C024/0241 and
CY7C025/0251 can function as a master (BUSY pins are outputs) or
as a slave (BUSY pins are inputs). The CY7C024/0241 and
CY7C025/0251 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.
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.
Functional Description
Semaphore Operation
Write Operation
The CY7C024/0241 and CY7C025/0251 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.
Data must be set up for a duration of t SD 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 of the CY7C024/0241 or CY7C025/0251 wishes
to access a semaphore flag, then the SEM pin must be asserted
instead of the CE pin, and OE must also be asserted.
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.
Interrupts
The upper two memory locations may be used for message
passing. The highest memory location (FFF for the
CY7C024/0241, 1FFF for the CY7C025/0251) is the mailbox
for the right port and the second-highest memory location
(FFE for the CY7C024/0241, 1FFE for the CY7C025/0251) 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.
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.
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.
When reading a semaphore, all sixteen/eighteen data lines
output the semaphore value. The read value is latched in an
output 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.
If your 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
are summarized in Table 2.
Busy
The CY7C024/0241 and CY7C025/0251 provide on-chip arbitration to resolve simultaneous memory location access (con-
15
CY7C024/0241
CY7C025/0251
Table 1. Non-Contending Read/Write
Inputs
Outputs
I/O0–I/O7
[2]
I/O8–I/O15[3]
CE
R/W
OE
UB
LB
SEM
H
X
X
X
X
H
High Z
High Z
Deselected: Power-Down
Operation
X
X
X
H
H
H
High Z
High Z
Deselected: Power-Down
L
L
X
L
H
H
High Z
Data In
Write to Upper Byte Only
L
L
X
H
L
H
Data In
High Z
Write to Lower Byte Only
L
L
X
L
L
H
Data In
Data In
Write to Both Bytes
L
H
L
L
H
H
High Z
Data Out
Read Upper Byte Only
L
H
L
H
L
H
Data Out
High Z
Read Lower Byte Only
L
H
L
L
L
H
Data Out
Data Out
Read Both Bytes
X
X
H
X
X
X
High Z
High Z
Outputs Disabled
H
H
L
X
X
L
Data Out
Data Out
Read Data in Semaphore Flag
X
H
L
H
H
L
Data Out
Data Out
Read Data in Semaphore Flag
H
X
X
X
L
Data In
Data In
Write D IN0 into Semaphore Flag
X
X
H
H
L
Data In
Data In
Write D IN0 into Semaphore Flag
L
X
X
L
X
L
Not Allowed
L
X
X
X
L
L
Not Allowed
Table 2. Interrupt Operation Example (assumes BUSYL=BUSYR=HIGH)[40]
Left Port
Function
Right Port
R/WL
CEL
OEL
A0L–11L
INTL
R/WR
CER
OER
A0R–11R
INTR
Set Right INTR Flag
L
L
X
(1)FFF
X
X
X
X
X
L[42]
Reset Right INTR Flag
X
X
X
X
X
X
L
L
(1)FFF
H[41]
Set Left INTL Flag
X
X
X
X
L[41]
L
L
X
(1)FFE
X
[42]
X
X
X
X
X
Reset Left INTL Flag
X
L
L
(1)FFE
H
Table 3. Semaphore Operation Example
I/O0–I/O15/17
Left
I/O0–I/O15/17
Right
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
Notes:
40. A0L–12L and A0R–12R, 1FFF/1FFE for the CY7C025.
41. If BUSYR=L, then no change.
42. If BUSYL=L, then no change.
16
Status
CY7C024/0241
CY7C025/0251
Ordering Information
4K x16 Dual-Port SRAM
Speed
(ns)
15
25
35
55
Ordering Code
Package
Name
CY7C024–15AC
A100
CY7C024–15JC
J83
CY7C024–25AC
A100
CY7C024–25JC
J83
CY7C024–25AI
A100
CY7C024–25JI
J83
CY7C024–35AC
A100
CY7C024–35JC
J83
CY7C024–35AI
A100
CY7C024–35JI
J83
CY7C024–55AC
A100
CY7C024–55JC
J83
CY7C024–55AI
A100
CY7C024–55JI
J83
Package Type
100-Pin Thin Quad Flat Pack
Operating
Range
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
84-Lead Plastic Leaded Chip Carrier
8K x 16 Dual-Port SRAM
Speed
(ns)
15
25
35
55
Ordering Code
CY7C025–15AC
Package
Name
A100
CY7C025–15JC
J83
CY7C025–15AI
A100
CY7C025–25AC
A100
CY7C025–25JC
J83
CY7C025–25AI
A100
CY7C025–25JI
J83
CY7C025–35AC
A100
CY7C025–35JC
J83
CY7C025–35AI
A100
CY7C025–35JI
J83
CY7C025–55AC
A100
CY7C025–55JC
J83
CY7C025–55AI
A100
CY7C025–55JI
J83
Package Type
100-Pin Thin Quad Flat Pack
Operating
Range
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Industrial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
Commercial
84-Lead Plastic Leaded Chip Carrier
100-Pin Thin Quad Flat Pack
84-Lead Plastic Leaded Chip Carrier
17
Industrial
CY7C024/0241
CY7C025/0251
4K x 18 Dual-Port SRAM
Speed
(ns)
15
25
35
55
Ordering Code
Package
Name
Package Type
Operating
Range
CY7C0241–15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0241–15AI
A100
100-Pin Thin Quad Flat Pack
Industrial
CY7C0241–25AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0241–25AI
A100
100-Pin Thin Quad Flat Pack
Industrial
CY7C0241–35AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0241–35AI
A100
100-Pin Thin Quad Flat Pack
Industrial
CY7C0241–55AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0241–55AI
A100
100-Pin Thin Quad Flat Pack
Industrial
Ordering Information (continued)
8K x 18 Dual-Port SRAM
Speed
(ns)
Ordering Code
Package
Name
Package Type
Operating
Range
15
CY7C0251–15AC
A100
100-Pin Thin Quad Flat Pack
Commercial
25
CY7C0251–25AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0251–25AI
A100
100-Pin Thin Quad Flat Pack
Industrial
35
CY7C0251–35AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0251–35AI
A100
100-Pin Thin Quad Flat Pack
Industrial
55
CY7C0251–55AC
A100
100-Pin Thin Quad Flat Pack
Commercial
CY7C0251–55AI
A100
100-Pin Thin Quad Flat Pack
Industrial
Document #: 38–00255–D
18
CY7C024/0241
CY7C025/0251
Package Diagrams
100-Pin Thin Plastic Quad Flat Pack (TQFP) A100
51-85048-A
84-Lead Plastic Leaded Chip Carrier J83
51-85006-A
© Cypress Semiconductor Corporation, 1999. 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.