The I2C Bus is a bidirectional 2-line bus for the transfer of data between various integrated circuits.
It consists of a serial data line SDA and a serial clock line SCL. The data line requires an external
pull-up resistor to VCC (open drain output stage).
The possible operational states of the I2C Bus are shown in figure 1. In the quiescent state, both
lines SDA and SCL are high, i.e. the output stage of the data line is disabled. As long a SCL remains
"1", information changes on the data bus indicate the start or the end of data transfer between two
components.
Semiconductor Group8201.96
SDE 2526
The transition on SDA from "1" to "0" is a start condition, the transition from "0" to "1" is a stop
condition. During a data transfer the information on the data bus will only change while the clock line
SCL is "0". The information on SDA is valid as long as SCL is "1".
In conjunction with an I2C Bus system, the memory component can operate as a receiver and as a
transmitter (slave receiver or slave transmitter). Between a start and stop condition, information is
always transmitted in byte-organized form. Between the falling edge of the eighth clock pulse and
a ninth acknowledge clock pulse, the memory component sets the SDA-line to low as a confirmation
of reception, if the chip select conditions have been met. During the output of data, the data output
of the memory is high in impedance during the ninth clock pulse (acknowledge master).
The signal timing required for the operation of the I2C Bus is summarized in figure 2.
Control Functions of the I2C Bus
The memory component is controlled by the controller (master) via the I2C Bus in two operating
modes: read-out cycle, and reprogramming cycle, including erase and write to a memory address.
In both operating modes, the controller, as transmitter, has to provide 3 bytes and an additional
acknowledge clock pulse to the bus after the start condition. During a memory read, at least nine
additional clock pulses are required to accept the data from the memory and the acknowledge
master, before the stop condition may follow. In the case of programming, the active programming
process is only started by the stop condition after data input (see figure 3).
The chip select word contains the 3 chip select bits CS0, CS1 and CS2, thus allowing 8 memory
chips to be connected in parallel. Chip select is achieved when the three control bits logically
correspond to the selected conditions at the select inputs.
Check for End of Programming or Abortion of Programming Process
If the chip is addressed during active reprogramming by entering CS/E, the programming process
is terminated. If, however, it is addressed by entering CS/A, the entry will be ignored. Only after
programming has been terminated will the chip respond to CS/A. This allows the user to check
whether the end of the programming process has been reached (see figure 3).
Memory Read
After the input of the first two control words CS/E and WA, a resetting of the start condition and the
input of the third control word CS/A, the memory is set ready to read. During acknowledge clock
nine, the memory information is transferred in parallel mode to the shift register. Subsequent to the
falling edge of the acknowledge clock, the data output is low impedance and the first data bit can be
sampled (see figure 4).
With every shift clock, an additional bit reaches the output. After reading a byte, the internal address
counter is automatically incremented when the master receiver switches the data line to "low"
during the ninth clock (acknowledge master). Any number of memory locations can thus be read
one after the other. At address 256, an overflow to address 0 is initiated. With the stop condition, the
data output returns to high-impedance mode. The internal sequence control of the memory
component is reset from the read to the quiescent state with the stop condition.
Semiconductor Group83
SDE 2526
Memory Reprogramming
The reprogramming cycle of a memory word comprises an erase and a subsequent write process.
During erase, all eight bits of the selected word are set into the "1" state. During write, "0" states are
generated according to the information in the internal data register, i.e. according to the third input
control word. After the 27th and last clock of the control word input, the active programming process
is started by the stop condition. The active reprogramming process is executed under on-chip
control.
The time required for reprogramming depends on component deviation and data patterns.
Therefore, with rated supply voltage, the erase/write process extends over max. 20 ms, or more
typically, 10 ms. In the case of data word input without write request (write request is defined as data
bit in data register set to "0"), the write process is suppressed and the programming time is
shortened. During a subsequent programming of an already erased memory address, the erase
process is suppressed again, so that the reprogramming time is also shortened.
Important: Switch-On Mode and Chip Reset
After the supply voltage VCC has been connected, the data output will be in high-impedance mode.
As a rule, the first operating mode to be entered, should be theread process of a word address.
As a result of the built-in "power-on reset" circuit, programming requests will not be accepted
immediately after the supply voltage has been switched on.
Total Erase
Enter the control word CS/E, load the address register with address 0 and the data register with FF
(hex) to erase the entire contents of the memory. Switch input CS2 to "open" immediately prior to
generating the stop condition. The subsequent stop condition triggers a total erase. Upon
termination of "total erase", CS2 must be reconnected to either 0 V or ≥ 4.5 V.
Semiconductor Group84
Pin Configuration
(top view)
SDE 2526
SIEMENS
Pin Definitions and Functions
Pin No.SymbolFunction
SIEMENSSTANDARD
14
V
SS
Ground
21CS0Chip select
STANDARD
32CS1Chip select
43CS2Chip select 0 ≤
open, total erase condition
55SDAData line
66SCLClock line
77TPTest pin
88
V
CC
Supply voltage
V
≤ 0.2 V; 4.5 ≤ VI ≤ VCC,
I
Semiconductor Group85
SDE 2526
Block Diagram
Semiconductor Group86
SDE 2526
Absolute Maximum Ratings
ParameterSymbolLimit ValuesUnit
Supply voltage
Input voltage
Storage temperature range
Thermal resistanceP-DIP-8-4
Junction - airP-DSO-8-1
V
V
T
stg
R
DD
I
th JA
– 0.3 to 6
– 0.3 to 6
– 55 to 125
100
170
V
V
°
C
K/W
K/W
Operating Range
Supply voltageV
Ambient temperature
DD
T
A
4.75 to 5.25V
– 40 to 110
°
C
DC Characteristics
ParameterSymbolLimit ValuesUnit
min.typ.max.
Supply voltage
Supply current
V
I
DD
DD
4.75–5.25V
––20mA
Inputs SCL/SDA
Low level
High level
High current;
V
= V
IH
DD max
Output SDA
V
L-current;
Leakage current;
= 0.4 VI
QL
V
= V
QL
DD max
Inputs
L-level
H-level
H-current
Clock frequency
Reprogramming duration (erase and write)
Input capacitance
Full erase duration (test mode full erase)
V
V
I
H
QL
I
QH
V
V
I
IH
f
SCL
t
prog
C
t
er
IL
IH
IL
IH
I
–
3.0
–
–
1.5
V
DD
V
V
––10mA
––3.0mA
––10µA
–
4.5
–
–
0.2
V
DD
V
V
––100µA
––100kHz
– 1520ms
––10pF
––20ms
Semiconductor Group87
Diagrams
SDE 2526
Figure 1
Operation States of the I2C Bus
Semiconductor Group88
SDE 2526
Figure 2
Timing Conditions for the I2C Bus (high-speed mode)
ParameterSymbolLimit ValuesUnit
min.max.
Minimum time the bus must be free
before a new transmission can start
Start condition hold time
Clock low period
Clock high period
t
BUF
t
HD;STA
t
LOW
t
HIGH
4.7µs
4.0µs
4.7µs
4.0µs
Start condition set-up time,
only valid for repeated start code
Data set-up time
Rise time of both the SDA- and SCL-line
Fall time of both the SDA- and SCL-line
Stop condition set-up time
Hold time data
t
SU;STA
t
SU;DAT
t
R
t
F
t
SU;STO
t
HD;DAT
4.7µs
250ns
1µs
300ns
4.7µs
0*)
* Note that a transmitter must internally provide at least a hold time to bridge the undefined region (max. 300 ns)
of the falling edge of SCL.
Semiconductor Group89
Figure 3
Programming
Control word input
SDE 2526
STCS/EAsWAAsDEAsSP
1. when As = 1 programming is not finished
2. when As = 0 programming is finished
Program interruption bySTCS/EAs
Figure 4
Read
Control word input read
a) complete (with word address input)
(the reprogramming starts after
this stop condition)
STCS/AAsCheck for program end
STCS/EAsWAAsSTCS/AAsDAAmDAAmSP
n bytesLast byte
Automatic incrementation
of the word address
b) shortened:
Bit 0 … 7 the last adapted word
address keep unchanged
Semiconductor Group90
STCS/AAsDAAmDAAmSP
n bytesLast byte
AutoincrementAm = 0
before stop conditionAm = 1
SDE 2526
Control Word Table
Clock No.123456789(Acknowledge)
CS/E
CS/A
WA
DE
DA
Control Word Input Key
CS/EChip select for data input into memory
CS/AChip select for data output out of memory
WAMemory word address
DEData word for memory
DAData word read out of memory
D0 to D7Data bits
STStart condition