SAMSUNG S524A40X40

S524A40X10/40X20/40X40
1K/2K/4K-bit
Serial EEPROM for Low Power
with software write protect
Data Sheet
OVERVIEW
The S524A40X10/40X20/40X40 serial EEPROM has a 1,024/2,048/4,096-bit (128/256/512-byte) capacity,
supporting the standard I2C™-bus serial interface. It is fabricated using Samsung’s most advanced CMOS
technology. It has been developed for low power and low voltage applications (1.8 V to 5.5 V). Important features
are a hardware-based write protection circuit for the entire memory area and software-based write protection logic
for the lower 128 bytes. Hardware-based write protection is controlled by the state of the write-protect (WP) pin.
The software-based method is one-time programmable and permanent. Using one-page write mode, you can
load up to 16 bytes of data into the EEPROM in a single write operation. Another significant feature of the
S524A40X10/40X20/40X40 is its support for fast mode and standard mode.
FEATURES
I2C-Bus Interface
Operating Characteristics
•
Two-wire serial interface
•
•
Automatic word address increment
EEPROM
Operating voltage
— 1.8 V to 5.5 V
•
Operating current
•
1K/2K/4K-bit (128/256/512-byte) storage area
— Maximum write current: < 3 mA at 5.5 V
•
16-byte page buffer
— Maximum read current: < 200 µA at 5.5 V
•
Typical 3 ms write cycle time with
auto-erase function
— Maximum stand-by current: < 1 µA at 5.5 V
•
Hardware-based write protection for the entire
EEPROM (using the WP pin)
•
Software-based write protection for the lower
128-byte EEPROM
•
EEPROM programming voltage generated
on chip
•
1,000,000 erase/write cycles
•
100 years data retention
•
Operating temperature range
— – 25°C to + 70°C (commercial)
— – 40°C to + 85°C (industrial)
•
Operating clock frequencies
— 100 kHz at standard mode
— 400 kHz at fast mode
•
Electrostatic discharge (ESD)
— 5,000 V (HBM)
— 500 V (MM)
Packages
•
8-pin DIP, SOP, and TSSOP
2-1
S524A40X10/40X20/40X40 SERIAL EEPROM
SDA
Start/Stop
Logic
HV Generation
Timing Control
Control Logic
WP
SCL
DATA SHEET
Slave Address
Comparator
Word Address
Pointer
Row
decoder
EEPROM
Cell Array
128 x 8 bits
256 x 8 bits
512 x 8 bits
A0
A1
A2
Column Decoder
Data Register
DOUT and ACK
Figure 2-1. S524A40X10/40X20/40X40 Block Diagram
2-2
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
VCC
WP
SCL SDA
S524A40X10/
40X20/40X40
A0
NOTE:
A1
A2
VSS
The S524A40X10/40X20/40X40 is available
in 8-pin DIP, SOP, and TSSOP package.
Figure 2-2. Pin Assignment Diagram
Table 2-1. S524A40X10/40X20/40X40 Pin Descriptions
Name
Type
Description
Circuit
Type
A0, A1, A2
Input
Input pins for device address selection. To configure a device address,
these pins should be connected to the VCC or VSS of the device.
These pins are internally pulled down to VSS.
1
Ground pin.
–
VSS
–
SDA
I/O
SCL
2
Bi-directional data pin for the I C-bus serial data interface. Schmitt
trigger input and open-drain output. An external pull-up resistor must
be connected to VCC. Typical values for this pull-up resistor are 4.7 kΩ
(100 kHz) and 1 kΩ (400 kHz).
3
Input
Schmitt trigger input pin for serial clock input.
2
WP
Input
Input pin for hardware write protection control. If you tie this pin to VCC,
the write function is disabled to protect previously written data in the
entire memory; if you tie it to VSS, the write function is enabled.
This pin is internally pulled down to VSS.
1
VCC
–
Single power supply.
–
NOTE: See the following page for diagrams of pin circuit types 1, 2, and 3.
2-3
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
A0, A1,
A2, WP
Noise
Filter
SCL
Figure 2-3. Pin Circuit Type 1
Figure 2-4. Pin Circuit Type 2
SDA
Data Out
VSS
Noise
Filter
Figure 2-5. Pin Circuit Type 3
2-4
Data In
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
FUNCTION DESCRIPTION
I2C-BUS INTERFACE
The S524A40X10/40X20/40X40 supports the I2C-bus serial interface data transmission protocol. The two-wire bus
consists of a serial data line (SDA) and a serial clock line (SCL). The SDA and the SCL lines must be connected
to VCC by a pull-up resistor that is located somewhere on the bus.
Any device that puts data onto the bus is defined as the “transmitter” and any device that gets data from the bus
is the “receiver.” The bus is controlled by a master device which generates the serial clock and start/stop
conditions, controlling bus access. Using the A0,A1 and A2 input pins, up to eight S524A40X10/40X20 (four for
S524A40X40) devices can be connected to the same I2C-bus as slaves (see Figure 2-6). Both the master and
slaves can operate as transmitter or receiver, but the master device determines which bus operating mode would
be active.
VCC
VCC
R
R
SDA
SCL
Slave 1
Bus Master
(Transmitter/
Receiver)
Slave 2
Slave 3
Slave 8
S524A40X20
Tx/Rx
A0 A1 A2
S524A40X20
Tx/Rx
A0 A1 A2
S524A40X20
Tx/Rx
A0 A1 A2
S524A40X20
Tx/Rx
A0 A1 A2
To VCC or V SS
To VCC or V SS
To VCC or V SS
To VCC or V SS
MCU
NOTE: The A0 does not affect the device address of the S524A40X40.
2
Figure 2-6. Typical Configuration (16 Kbits of Memory on the I C-Bus)
2-5
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
I2C-BUS PROTOCOLS
Here are several rules for I2C-bus transfers:
— A new data transfer can be initiated only when the bus is currently not busy.
— MSB is always transferred first in transmitting data.
— During a data transfer, the data line (SDA) must remain stable whenever the clock line (SCL) is High.
The I2C-bus interface supports the following communication protocols:
•
Bus not busy: The SDA and the SCL lines remain High level when the bus is not active.
•
Start condition: Start condition is initiated by a High-to-Low transition of the SDA line while SCL remains High
level. All bus commands must be preceded by a start condition.
•
Stop condition: A stop condition is initiated by a Low-to-High transition of the SDA line while SCL remains
High level. All bus operations must be completed by a stop condition (see Figure 2-7).
~
~
SCL
~
~
SDA
Start
Condition
Data or
Data
ACK Valid Change
Stop
Condition
Figure 2-7. Data Transmission Sequence
•
Data valid: Following a start condition, the data becomes valid if the data line remains stable for the duration
of the High period of SCL. New data must be put onto the bus while SCL is Low. Bus timing is one clock
pulse per data bit. The number of data bytes to be transferred is determined by the master device. The total
number of bytes that can be transferred in one operation is theoretically unlimited.
•
ACK (Acknowledge): An ACK signal indicates that a data transfer is completed successfully. The transmitter
(the master or the slave) releases the bus after transmitting eight bits. During the 9th clock, which the master
generates, the receiver pulls the SDA line low to acknowledge that it successfully received the eight bits of
data (see Figure 2-8). But the slave does not send an ACK if an internal write cycle is still in progress.
In data read operations, the slave releases the SDA line after transmitting 8 bits of data and then monitors
the line for an ACK signal during the 9th clock period. If an ACK is detected, the slave will continue to
transmit data. If an ACK is not detected, the slave terminates data transmission and waits for a stop condition
to be issued by the master before returning to its stand-by mode.
2-6
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
Master
SCL Line
Bit 1
Bit 9
Data from
Transmitter
ACK from
Receiver
ACK
Figure 2-8. Acknowledge Response From Receiver
•
Slave Address: After the master initiates a Start condition, it must output the address of the device to be
accessed. The most significant four bits of the slave address are called the “device identifier”. The identifier
for the S524A40X10/40X20/40X40 is “1010B”. The next three bits comprise the address of a specific device.
The device address is defined by the state of the A0, A1 and A2 pins. Using this addressing scheme, you can
cascade up to eight S524A40X10/40X20 or four S524A40X40 on the bus (see Table 2-2 below). The b1 for
S524A40X40 is used by the master to select which of the blocks of internal memory (1 block = 256 words)
are to be accessed. The bit is in effect the most significant bit of the word address.
•
Read/Write: The final (eighth) bit of the slave address defines the type of operation to be performed. If the
R/W bit is “1”, a read operation is executed. If it is “0”, a write operation is executed.
Table 2-2. Slave Device Addressing
Function
Device Identifier
Device Address
R/W Bit
b7
b6
b5
b4
b3
b2
b1(note)
b0
Read
1
0
1
0
A2
A1
A0
1
Write
1
0
1
0
A2
A1
A0
0
Write-protect
0
1
1
0
A2
A1
A0
0
NOTE: The b1 for S524A40X40 corresponds to the MSB of the memory array address word.
2-7
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
BYTE WRITE OPERATION
In a complete byte write operation, the master transmits the slave address, word address, and one data byte to
the S524A40X10/40X20/40X40 slave device (see Figure 2-9).
Start
Slave Address
Word Address
A
C
K
Data
A
C
K
Stop
A
C
K
Figure 2-9. Byte Write Operation
Following the Start condition, the master sends the device identifier (4 bits), the device address (3 bits), and an
R/W bit set to “0” onto the bus. Then the addressed S524A40X10/40X20/40X40 generates an ACK and waits for
the next byte. The next byte to be transmitted by the master is the word address. This 8-bit address is written into
the word address pointer of the S524A40X10/40X20/40X40.
When the S524A40X10/40X20/40X40 receives the word address, it responds by issuing an ACK and then waits
for the next 8-bit data. When it receives the data byte, the S524A40X10/40X20/40X40 again responds with an
ACK. The master terminates the transfer by generating a Stop condition, at which time the
S524A40X10/40X20/40X40 begins the internal write cycle.
While the internal write cycle is in progress, all S524A40X10/40X20/40X40 inputs are disabled and the
S524A40X10/40X20/40X40 does not respond to additional requests from the master.
2-8
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
PAGE WRITE OPERATION
The S524A40X10/40X20/40X40 can also perform 16-byte page write operation. A page write operation is initiated
in the same way as a byte write operation. However, instead of finishing the write operation after the first data
byte is transferred, the master can transmit up to 15 additional bytes. The S524A40X10/40X20/40X40 responds
with an ACK each time it receives a complete byte of data (see Figure 2-10).
Start
Slave Address
Word Address (n)
A
C
K
Data (n)
A
C
K
Data (≤ n + 15)
A
C
K
A
C
K
Stop
A
C
K
Figure 2-10. Page Write Operation
The S524A40X10/40X20/40X40 automatically increments the word address pointer each time it receives a
complete data byte. When one byte has been received, the internal word address pointer increments to the next
address and the next data byte can be received.
If the master transmits more than 16 bytes before it generates a stop condition to end the page write operation,
the S524A40X10/40X20/40X40 word address pointer value “rolls over” and the previously received data is
overwritten. If the master transmits less than 16 bytes and generates a stop condition, the
S524A40X10/40X20/40X40 writes the received data to the corresponding EEPROM address.
During a page write operation, all inputs are disabled and there is no response to additional requests from the
master until the internal write cycle is completed.
2-9
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
POLLING FOR AN ACK SIGNAL
When the master issues a stop condition to initiate a write cycle, the S524A40X10/40X20/40X40 starts an internal
write cycle. The master can then immediately begin polling for an ACK from the slave device.
To poll for an ACK signal in a write operation, the master issues a start condition followed by the slave address.
As long as the S524A40X10/40X20/40X40 remains busy with the write operation, no ACK is returned. When the
S524A40X10/40X20/40X40 completes the write operation, it returns an ACK and the master can then proceed
with the next read or write operation (see Figure 2-11).
Send Write
Command
Send Stop Condition to
Initiate Write Cycle
Send Start
Condition
Send Slave Address
with R/W bit = "0"
No
ACK = "0" ?
Yes
Start Next
Operation
Figure 2-11. Master Polling for an ACK Signal from a Slave Device
2-10
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
SOFTWARE-BASED WRITE PROTECTION
You can write-protect the lower 128 bytes of the EEPROM, locations 00H–7FH, in one operation. To do this, you
simply write a value to a one-time, write-only register. Once you have applied this write protection, any write
attempt to access the lower 128-byte area is ignored. In other words, the write protection is permanent. The effect
of such a failed attempt is processed in the same way as an invalid I2C-bus protocol.
To enable write protection, you must execute a write operation to the write protection register. To access the write
protection register, you use the device address “0110”. The word address and data in this write operation can be
any value and the timing and wave form characteristics are identical to a normal byte write operation (see Figure
2-12).
Start
Word Address
(Ignored)
Slave Address
A
C
K
Data
(Ignored)
A
C
K
Stop
A
C
K
Figure 2-12. Write Protection Operation
HARDWARE-BASED WRITE PROTECTION
You can also write-protect the entire memory area of the S524A40X10/40X20/40X40. This method of write
protection is controlled by the state of the Write Protect (WP) pin.
When the WP pin is connected to VCC, any attempt to write a value to the memory is ignored.
The S524A40X10/40X20/40X40 will acknowledge slave and word address, but it will not generate an
acknowledge after receiving the first byte of the data. Thus the write cycle will not be started when the stop
condition is generated. By connecting the WP pin to VSS, the write function is allowed for the entire memory.
These write protection features effectively change the EEPROM to a ROM in order to prevent data from being
overwritten. Whenever the write function is disabled, a slave address and a word address are acknowledged on
the bus, but data bytes are not acknowledged.
2-11
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
CURRENT ADDRESS BYTE READ OPERATION
The internal word address pointer maintains the address of the last word accessed, incremented by one.
Therefore, if the last access (either read or write) was to the address “n”, the next read operation would access
data at address “n+1”.
When the S524A40X10/40X20/40X40 receives a slave address with the R/W bit set to “1”, it issues an ACK and
sends the eight bits of data. The master does not acknowledge the transfer but it does generate a Stop condition.
In this way, the S524A40X10/40X20/40X40 effectively stops the transmission (see Figure 2-13).
Start
Slave Address
Data
A
C
K
Stop
N
O
A
C
K
Figure 2-13. Current Address Byte Read Operation
2-12
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
RANDOM ADDRESS BYTE READ OPERATION
Using random read operations, the master can access any memory location at any time. Before it issues the
slave address with the R/W bit set to “1”, the master must first perform a “dummy” write operation. This operation
is performed in the following steps:
1. The master first issues a Start condition, the slave address, and the word address to be read. (This step sets
the internal word address pointer of the S524A40X10/40X20/40X40 to the desired address.)
2. When the master receives an ACK for the word address, it immediately re-issues a start condition followed
by another slave address, with the R/W bit set to “1”.
3. The S524A40X10/40X20/40X40 then sends an ACK and the 8-bit data stored at the desired address.
4. At this point, the master does not acknowledge the transmission, but generates a stop condition instead.
5. In response, the S524A40X10/40X20/40X40 stops transmitting data and reverts to its stand-by mode (see
Figure 2-14).
Start
Slave Address
Word Address
A
C
K
Start
A
C
K
Slave Address
Data (n)
A
C
K
Stop
N
O
A
C
K
Figure 2-14. Random Address Byte Read Operation
2-13
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
SEQUENTIAL READ OPERATION
Sequential read operations can be performed in two ways: as a series of current address reads or as random
address reads. The first data is sent in the same way as the previous read mode used on the bus. The next time,
however, the master responds with an ACK, indicating that it requires additional data.
The S524A40X10/40X20/40X40 continues to output data for each ACK it receives. To stop the sequential read
operation, the master does not respond with an ACK, but instead issues a Stop condition.
Using this method, data is output sequentially with the data from address “n” followed by the data from “n+1”. The
word address pointer for read operations increments all word addresses, allowing the entire EEPROM to be read
sequentially in a single operation. After the entire EEPROM is read, the word address pointer “rolls over” and the
S524A40X10/40X20/40X40 continues to transmit data for each ACK it receives from the master (see Figure 215).
Start
Slave Address
Data (n)
Data (n + x)
~
~
A
C
K
A
C
K
A
C
K
N
O
A
C
K
Figure 2-15. Sequential Read Operation
2-14
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
ELECTRICAL DATA
Table 2-3. Absolute Maximum Ratings
(TA = 25°C)
Symbol
Conditions
Rating
Unit
Supply voltage
VCC
–
– 0.3 to + 7.0
V
Input voltage
VIN
–
– 0.3 to + 7.0
V
Output voltage
VO
–
– 0.3 to + 7.0
V
Operating temperature
TA
–
– 40 to + 85
°C
Storage temperature
TSTG
–
– 65 to + 150
°C
Electrostatic discharge
VESD
HBM
5000
V
MM
500
Parameter
Table 2-4. D.C. Electrical Characteristics
(TA = – 25°C to + 70°C (C), – 40°C to + 85°C (I), VCC = 1.8 V to 5.5 V)
Parameter
Symbol
Conditions
Min
Typ
Max
Unit
–
–
0.3 VCC
V
0.7 VCC
–
–
V
Input low voltage
VIL
Input high voltage
VIH
Input leakage current
ILI
VIN = 0 to VCC
–
–
10
µA
Output leakage current
ILO
VO = 0 to VCC
–
–
10
µA
Output low voltage
VOL
IOL = 3 mA, VCC = 2.5 V
–
–
0.4
V
ICC1
VCC = 5.5 V, 400 kHz
–
–
3
mA
ICC2
VCC = 1.8 V, 100 kHz
–
–
1
ICC3
VCC = 5.5 V, 400 kHz
–
–
0.2
ICC4
VCC = 1.8 V, 100 kHz
–
–
60
µA
ICC5
VCC = SDA = SCL = 5.5 V,
all other inputs = 0 V
–
–
1
µA
ICC6
VCC = SDA = SCL = 1.8 V,
all other inputs = 0 V
–
–
1
Supply current
Write
Read
Stand-by current
SCL, SDA, A0, A1, A2
2-15
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
Table 2-4. D.C. Electrical Characteristics (Continued)
(TA = – 25°C to + 70°C (C), – 40°C to + 85°C (I), VCC = 1.8 V to 5.5 V)
Parameter
Symbol
Conditions
Min
Typ
Max
Unit
Input capacitance
CIN
25°C, 1MHz,
VCC = 5 V, VIN = 0 V,
A0, A1, A2, SCL and WP pin
–
–
10
pF
Input/output capacitance
CI/O
25°C, 1MHz,
VCC = 5 V, VI/O = 0 V,
SDA pin
–
–
10
Table 2-5. A.C. Electrical Characteristics
(TA = – 25°C to + 70°C (C), – 40°C to + 85°C (I), VCC = 1.8 V to 5.5 V)
Parameter
Symbol
Conditions
VCC = 1.8 to 5.5 V
(Standard Mode)
VCC = 2.5 to 5.5 V
(Fast Mode)
Min
Max
Min
Max
Unit
External clock frequency
FCLK
–
0
100
0
400
kHz
Clock high time
tHIGH
–
4
–
0.6
–
µs
Clock low time
tLOW
–
4.7
–
1.3
–
Rising time
tR
SDA, SCL
–
1
–
0.3
Falling time
tF
SDA, SCL
–
0.3
–
0.3
Start condition hold time
tHD:STA
–
4
–
0.6
–
Start condition setup time
tSU:STA
–
4.7
–
0.6
–
Data input hold time
tHD:DAT
–
0
–
0
–
Data input setup time
tSU:DAT
–
0.25
–
0.1
–
Stop condition setup time
tSU:STO
–
4
–
0.6
–
Bus free time
tBUF
Before new
transmission
4.7
–
1.3
–
Data output valid from
clock low (note)
tAA
–
0.3
3.5
–
0.9
Noise spike width
tSP
–
–
100
–
50
ns
Write cycle time
tWR
–
–
5
–
5
ms
NOTE: When acting as a transmitter, the S524A40X10/40X20/40X40 must provide an internal minimum delay time to
bridge the undefined period (minimum 300 ns) of the falling edge of SCL. This is required to avoid unintended
generation of a start or stop condition.
2-16
DATA SHEET
S524A40X10/40X20/40X40 SERIAL EEPROM
tF
tHIGH
tR
tLOW
SCL
tSU:STA
tHD:STA
tHD:DAT
tSU:DAT
tSU:STO
SDA In
tAA
tBUF
SDA Out
Figure 2-16. Timing Diagram for Bus Operations
~
~
SCL
~
~
~
SDA
8th Bit
ACK
~
WORDn
tWR
Stop
Condition
Start
Condition
Figure 2-17. Write Cycle Timing Diagram
2-17
S524A40X10/40X20/40X40 SERIAL EEPROM
DATA SHEET
NOTES
2-18