Bi-directional level shifter (3.3V - 5.0V for example) for I2C-bus and other systems:

APPLICATION NOTE
Bi-directional level shifter for
I²C-bus and other systems.
AN97055
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
Application Note
AN97055
Abstract
With a single MOS-FET a bi-directional level shifter circuit can be realised to connect devices with different
supply voltages of e.g. 5 Volt and 3.3 Volt to one I2C-bus system. The level shifter can also isolate a bus
section of powered-down devices from the I2C-bus, allowing the powered part of the I2C-bus to operate in a
normal way.
The level shifter can also be used in other bus systems or point to point connections for level shifting and/or
isolation.
Purchase of Philips I2C components conveys
a license under the I2C patent to use the components in the I2C system, provided the system
conforms to the I2C specifications defined by
Philips.
© Philips Electronics N.V. 1997
All rights are reserved. Reproduction in whole or in part is prohibited without the prior written consent of the
copyright owner.
The information presented in this document does not form part of any quotation or contract, is believed to be
accurate and reliable and may be changed without notice. No liability will be accepted by the publisher for any
consequence of its use. Publication thereof does not convey nor imply any license under patent- or other
industrial or intellectual property rights.
2
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
Application Note
AN97055
APPLICATION NOTE
Bi-directional level shifter for
I²C-bus and other systems.
AN97055
Author:
Herman Schutte
Philips Semiconductors Systems Laboratory Eindhoven,
The Netherlands
Keywords
Level shifter, bi-directional, I²C-bus, gate way, power-off, protection.
Number of pages: 16
Date: 97-08-04
3
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
Application Note
AN97055
Summary
Present technologies for integrated circuit with clearances of 0.5 µm and less, limit the maximum supply voltage
and consequently the logic levels for the digital I/O signals. To interface these lower voltage circuits with
2
existing 5 Volt devices a level shifter is needed. For bi-directional bus systems as e.g. the I C-bus, such a level
shifter must be bi-directional, without the need of a direction control signal. With only one appropriate MOS-FET
for each bus line the desired level shifting with automatic direction control can be done. The levels may have a
vast range, depending on the used MOS-FET, e.g. down to 2 Volt at the “Lower voltage” side and up to 10
Volt or more at the “Higher voltage” side of the level shifter.
An additional function of the level shifter is that it can isolate a powered-down section in a bus system, without
obstructing the powered part. Another feature is the protection of the “Lower voltage” section against high
voltage spikes at the “Higher voltage” section, as long as the MOS-FET can withstand this spikes.
4
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
Application Note
AN97055
CONTENTS
1. INTRODUCTION .......................................................................................................................................... 7
1.1 References............................................................................................................................................ 7
1.2 World Wide Web. .................................................................................................................................. 7
2. INTERCONNECTION OF DEVICES WITH DIFFERENT LOGIC LEVELS. .................................................. 8
2
2.1 Logic levels of the I C-bus. .................................................................................................................... 8
2.2 I2C-bus devices with different supply voltages and 5V tolerant I/O’s. ...................................................... 9
2.3 Devices with different logic levels connected via the bi-directional level shifter. .................................... 10
2.3.1 Description of the level shift operation......................................................................................... 10
2.3.2 Protection of the “Lower voltage” section against high voltage spikes.......................................... 11
2.3.3 The level shifter used in point to point connections...................................................................... 11
2.3.4 Isolation of the powered-down “Lower voltage” section. .............................................................. 11
2.3.5 Extended circuit for isolation of the powered-down “higher voltage” section................................. 12
3. CHARACTERISTICS OF THE MOS-FET’S............................................................................................... 13
4. WAVE FORMS OF THE LOGIC LEVELS................................................................................................... 14
4.1 Shifting from a 3V to a 5V level............................................................................................................ 14
4.2 Shifting from a 5V to a 3V level............................................................................................................ 15
4.3 Wave forms when a bus section is powered-down. .............................................................................. 16
5
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
6
Application Note
AN97055
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
1.
Application Note
AN97055
INTRODUCTION
2
The I C-bus has been introduced in 1980 by Philips, and has become a de-facto world standard. More than
2
1000 different IC devices have been provided with an I C-bus interface, most of them having a 5 Volt supply
2
voltage and corresponding logic I/O levels. These 5 Volt devices can be interconnected to an I C-bus system
without any glue logic.
Present technology processes for integrated circuits with clearances of 0.5 µm and less, limit the maximum
supply voltage to 3.3 Volt and in the near future to 2 Volt and less. Also the I/O signals have this limitation, so
there is a problem to interconnect them with existing 5 Volt devices. The same problem will exist in the future to
interconnect e.g. 3.3 Volt devices and 2 Volt devices.
One solution for this problem is the use of 5 Volt tolerant I/O’s. Most present IC technology processes have a
high voltage option to make I/O signals 5V tolerant. This gives the possibility to connect lower voltage devices
to 5 Volt devices or to 5 Volt bus systems. The disadvantage of this 5 Volt option is that it requires more masks
and process steps in the IC manufacturing, which makes the IC devices significantly more expensive.
Another solution is the use of external level shifters. In the different logic families level shifters are available,
most of them for one direction, which cannot be used in a bi-directional bus system. The bi-directional level
shifters in these families require a direction control signal, which is not available in a serial bus system, so these
level shifters are not applicable.
The bi-directional level shifter circuit described in this application note consists of one discrete MOS-FET for
each bus line. In spite of its surprising simplicity, it not only fulfils the requirement of bi-directional level shifting
without a direction control signal, but it also has the next additional features:
- isolating of a powered-down bus section from the rest of the bus system,
- protection of the “Lower voltage” side against high voltage spikes at the ‘Higher voltage” side.
The bi-directional level shifter can be used in standard mode ( 0 to 100 kbit/s) or in fast mode (0 to 400 kbit/s)
2
I C-bus systems, without any change. The following description apply for both modes.
1.1
References.
2
Useful references for I C-bus related documentation:
•
ordering inf.
2
The I C-bus and how to use it. (including specification)
2
2
9398 393 40011
•
I C Peripherals, DATA HANDBOOK IC12 (includes I C-bus spec.)
9397 750 00306
•
Application Notes and Development Tools for 80C51 Microcontrollers
2
2
(includes I C-bus application notes, articles and I C-bus spec.)
9397 750 00963
1.2
World Wide Web.
Internet access for Philips Semiconductors:
http://www.semiconductors.philips.com
7
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
2.
Application Note
AN97055
INTERCONNECTION OF DEVICES WITH DIFFERENT LOGIC LEVELS.
2
2.1
Logic levels of the I C-bus.
2
An overview of the different logic levels, used in I C-bus systems, is given below.
2
The I C-bus specifies two types of logic levels:
a) fixed levels,
b) supply voltage related levels.
a) The fixed levels are intended for non-CMOS devices and/or devices with higher supply voltages than 5 Volt,
e.g. 12 Volt. The I/O levels for fixed level devices are:
LOW level input voltage VIL
HIGH level input voltage VIH
min. -0.5V
min. 3.0V
LOW level output voltage VOL1
HIGH level output voltage VOH
min. 0V
max. 0.4V
open drain output, determined by VDD via an external pull-up resistor.
max. 1.5V
max. VDDmax+0.5V
b) The supply voltage related levels are intended for CMOS devices and/or devices with supply voltages of 5V
or
lower. Their I/O levels are:
LOW level input voltage VIL
HIGH level input voltage VIH
min. -0.5V
min. 0.7VDD
LOW level output voltage VOL1
HIGH level output voltage VOH
min. 0V
max. 0.4V
open drain output, determined by VDD via an external pull-up resistor.
max. 0.3VDD
max. VDDmax+0.5V
The logic levels of the bus lines depends on the pull-up resistors to V DD, leakage current and, if present, series
resistors to the I/O pins of the devices. Their values must be chosen in such a way that during the LOW level a
minimum noise margin of 0.1 VDD is present and 0.2 VDD during the HIGH level.
8
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
2.2
Application Note
AN97055
2
I C-bus devices with different supply voltages and 5V tolerant I/O’s.
From the listed values in 2.1 can be concluded that fixed level devices and 5V supply voltage related devices
can be connected directly to the same bus lines, without additional components. Also 3.3V supply voltage
related devices can be connected directly to these bus lines as long as they have 5V tolerant I/O pins, because
the pull-up resistors have to be connected to the 5V supply voltage (see Figure 1).
Rp
Rp
VDD= 5V
SDA
SCL
3.3V device
(5V tolerant)
Figure 1.
3.3V device
(5V tolerant)
5V device
5V device
2
I C-bus system with 3.3V devices (5V tolerant) and 5V devices, all connected to the same bus lines.
This is the most simple solution, but the lower voltage devices must be 5 Volt tolerant, which may make them
2
more expensive to manufacture. Lower voltage devices with a supply voltage as low as 2 Volt still meet the I Cbus specification and can be connected to the bus system of Figure 1.
If devices with a supply voltage lower than 2.7 Volt are connected via series resistors to the bus lines, then
2
attention must be paid to meet the 0.1 VDD noise margin during the LOW level, required by the I C-bus
specification. The required 0.2 VDD noise margin during the HIGH level does not depend on the supply voltage.
Devices with a supply voltage lower than 2 Volt do not meet the noise margin requirement of 0.1 V DD because
the LOW level on the bus lines is 0.4V and their input level of 0.3 V DD is less than 0.6V. This will be solved in
2
the next update of the I C-bus specification.
9
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
2.3
Application Note
AN97055
Devices with different logic levels connected via the bi-directional level shifter.
2
The bi-directional level shifter is used to interconnect two sections of an I C-bus system, each section with a
different supply voltage and different logic levels. In the bus system of Figure 2 the left section has pull-up
resistors and devices connected to a 3.3 Volt supply voltage, the right section has pull-up resistors and devices
connected to a 5 Volt supply voltage. The devices of each section have I/O’s with supply voltage related logic
input levels and an open drain output configuration.
VDD1= 3.3 V
Rp
Rp
g
Rp
T1
d
s
SDA1
g
SDA2
T2
s
SCL1
3.3 V device
VDD2= 5V
Rp
d
3.3 V device
SCL2
5 V device
”Lower voltage” section
5 V device
“Higher voltage” section
2
Figure 2. Bi-directional level shifter circuit connects two different voltage sections of an I C-bus system.
The level shifter for each bus line is identical and consists of one discrete N-channel enhancement MOS-FET,
T1 for the serial data line SDA and T2 for the serial clock line SCL. The gates (g) has to be connected to the
lowest supply voltage VDD1 , the sources (s) to the bus lines of the “Lower voltage” section, and the drains (d)
to the bus lines of the “Higher voltage” section. Many MOS-FET’s have the substrate internally already
connected with its source, otherwise it should be done externally. The diode between the drain (d) and
substrate is inside the MOS-FET present as n-p junction of drain and substrate.
2.3.1
Description of the level shift operation.
For the level shift operation three states has to be considered:
•
State 1. No device is pulling down the bus line and the bus line of the “Lower voltage” section is pulled up
by its pull-up resistors Rp to 3.3 V. The gate and the source of the MOS-FET are both at 3.3 V, so its VGS
is below the threshold voltage and the MOS-FET is not conducting. This allows that the bus line at the
“Higher voltage” section is pulled up by its pull-up resistor Rp to 5V. So the bus lines of both sections are
HIGH, but at a different voltage level.
•
State 2. A 3.3 V device pulls down the bus line to a LOW level. The source of the MOS-FET becomes
also LOW, while the gate stay at 3.3 V. The VGS rises above the threshold and the MOS-FET becomes
conducting. Now the bus line of the “Higher voltage” section is also pulled down to a LOW level by the 3.3
V device via the conducting MOS-FET. So the bus lines of both sections become LOW at the same
voltage level.
10
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
•
Application Note
AN97055
State 3. A 5 V device pulls down the bus line to a LOW level. Via the drain-substrate diode of the MOSFET the “Lower voltage” section is in first instance pulled down until VGS passes the threshold and the
MOS-FET becomes conducting. Now the bus line of the “Lower voltage” section is further pulled down to
a LOW level by the 5 V device via the conducting MOS-FET. So the bus lines of both sections become
LOW at the same voltage level.
The three states show that the logic levels are transferred in both directions of the bus system, independent of
the driving section. State 2 and state 3 perform the “wired AND” function between the bus lines of both sections
2
as required by the I C-bus specification.
Other supply voltages than 3.3V for VDD1 and 5V for VDD2 can be applied, e.g. 2V for VDD1 and 10V for
VDD2 is feasible. In normal operation VDD2 must be equal to or higher than VDD1.
The MOS-FET’s allow that VDD2 is lower than VDD1 during switching power on/off, of course the bus system
is not operational during that time.
The maximum VDD2 is not critical as long as the drain of the MOS-FET can withstand this voltage. At a higher
VDD2 a slower falling edge for both bus sections has to be taken in account, both in state 2 and state 3,
because it takes more discharge time of the bus line.
The lowest possible supply voltage VDD1 depends on the threshold voltage VGS(th) of the MOS-FET’s. With a
threshold voltage of about 1 Volt below the lowest VDD1, the level shifter circuit will operate properly. If for
example the lowest VDD1 is 3 Volt, a threshold voltage VGS(th) of maximum 2 Volt is allowed.
2.3.2
Protection of the “Lower voltage” section against high voltage spikes.
2
If an I C-bus system has to be connected with e.g. external bus lines on which high voltage spikes can be
expected, the level shifter circuit may be used as protection circuit as long as the drain of the MOS-FET can
withstand these high voltage spikes. The ”Lower voltage” section is the protected side, the “Higher voltage”
section the is the side of the external bus lines (see Figure 2). If in this application no level shifting is required,
VDD1 and VDD2 can be interconnected.
2.3.3
The level shifter used in point to point connections.
The circuit of figure 2 can also be used as a one-directional level shifter between an output signal and one or
more inputs, which have higher or lower logic levels than that output signal.
If the output signal is generated by a push-pull stage, then the Rp at the output circuit side, (“Lower voltage” or
“Higher voltage” section) can be omitted. The Rp at the input circuit(s) side remains needed.
The protection and isolation features, described in 2.3.2 and 2.3.4 also apply here.
2.3.4
Isolation of the powered-down “Lower voltage” section.
An additional feature of the level shifter circuit in figure 2 is the isolation of the “Lower voltage” section when
VDD1 is switched off. In that case VDD1 is about 0 Volt and the MOS-FET’s are switched off because VGS is
below the threshold voltage. The “Higher voltage” section is not hindered and stays operational. To assure a
noise margin, the MOS-FET’s should have a minimum threshold voltage V GS(th) of e.g. 0.4V and VDD1 must
stay below this value. The isolation feature can also be applied if no level shifting is required, VDD1 and VDD2
may have the same value, e.g. both 3.3V or both 5V.
11
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
2.3.5
Application Note
AN97055
Extended circuit for isolation of the powered-down “higher voltage” section.
If it is necessary to isolate also the “Higher voltage” section when it is powered off, then the level shifter circuit
can be extended as shown in figure 3.
VDD3
VDD1= 3.3 V
Rp
SDA1
Rp
g
Rp
T3
d
d
g
s
3.3 V device
Rp
T1
s
SCL1
VDD2= 5V
T2
T4
d d
3.3 V device
Rp
g
Rp
SDA2
s
g
SCL2
s
5 V device
”Lower voltage” section
5 V device
“Higher voltage” section
2
Figure 3. I C-bus system in which the “Higher voltage” section is isolated at power-off.
If VDD2 is switched-off then T3 and T4 becomes not conducting and the “Higher voltage” section is isolated
from the other part of the bus system. The pull-up resistors Rp to VDD3 are not necessary for the proper
operation and may have a high resistance value, they can be added to prevent the MOS-FET drains become
floating at a HIGH level. VDD3 is preferably connected to the highest supply voltage. If VDD3 has a lower
value, then care must be taken that the logic HIGH levels of the bus lines are not decreased too much.
The “Lower voltage” section is isolated if VDD1 is switched off, in the same way as in Figure 2 and described in
2.3.4, but now independent of the value of VDD2.
Because this level shifter circuit is symmetrical, the “Lower voltage” section and “Higher voltage” section can be
chosen arbitrary at the left or right side in figure 3. Even more sections with a higher, a lower or a same supply
voltage value can be added by connecting these sections via additional MOS-FET’s to the common drain
terminals (d) in the same way as the other sections in Figure 3. Every section is isolated from the rest of the
bus system when its supply voltage is switched off, while level shifting between all other sections remain
operational.
12
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
3.
Application Note
AN97055
CHARACTERISTICS OF THE MOS-FET’S.
The requirements for the most important characteristics of the MOS-FET’s, used as bi-directional level shifter in
2
an I C-bus system with max. 6V and min. 2.7V levels, are listed below. The values are intended as an indication
and may be adapted for other supply voltages, other logic levels and/or other applications.
Type :
N-channel enhancement mode MOS-FET.
Gate threshold voltage : VGS(th)
min. 0.1V
On resistance :
RDS(on)
max. 100 Ohm @ ID= 3mA, VGS= 2.5V
Input capacitance :
Ciss
max. 100 pF
Switching times :
ton toff
max. 50 ns.
Allowed drain current :
ID
10 mA or higher.
max. 2V
@ VDS= 1V, VGS = 0V
Values of pull-up resistors and series resistors are not given here, they depend on the worst case values of the
supply voltages and logic levels, length and load of the bus lines, and the requirements for rise and fall times.
These resistors have to be calculated for each bus system separately. A good approach for the calculation is to
keep the RC values for the different sections about the same, it gives the best timing tolerances for set-up and
hold times.
MOS-FET’s in table 1 are suitable to be used as level shifter. See Philips Data Handbook SC07 for their full
specification. BSN10 or BSN20 are low cost devices and have good properties for 3V/5V level shifting, isolation
and protection.
TABLE 1
TYPE
BSN10
BSN20
BSS83
BSS88
VGS(th)
min. 0.4V
min. 0.4V
min. 0.1V
min. 0.4V
max. 1.8V
max. 1.8V
max. 2.0V
max. 1.2V
RDS(on)
25 Ohm (typ)
25 Ohm (typ)
70 Ohm (typ)
15 Ohm
13
Ciss
15 pF
15 pF
1.5 pF (typ)
50 pF (typ)
Package
TO-92
SOT23
SOT143
TO-92
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
4.
Application Note
AN97055
WAVE FORMS OF THE LOGIC LEVELS.
Figures 4, 5, 6, 7 and 8 show the wave forms of the logic levels of an implementation according Figure 2. Figure
9 shows the wave forms of the implementation according figure 3. T1, T2, T3 and T4 are MOS-FET’s type
BSN10. The “Lower voltage” section has an Rp of 3k3 Ω and a bus line capacitance of 50 pF. The “Higher
voltage” section 4K7 Ω and 30 pF. Only the wave forms of the SCL lines are shown. The driving devices have
slope controlled outputs for the falling edges with a fall time of 50 ns.
4.1
5V
Shifting from a 3V to a 5V level.
SCL2
SCL1
5V
3V
3V
0V
0V
SCL2
SCL1
Figure 4.
Figure 5.
Shifting from a 3V to a 5V level (200 ns/div).
Enlarged falling edge of fig. 4 (25 ns/div).
Figure 4 shows the level shifting from a “Lower level” to a “Higher level” section at 200 ns/div. time scale. A 3V
device drives the SCL1 line and this wave form is shifted upwards to a 5 Volt wave form at SCL2. At about 2
Volt on the rising edge, the MOS-FET is switched off and each section rises smoothly with its own curve to its
end value. Figure 5 gives an enlarged view of the falling edges at 25 ns/div. time scale. At about 2 Volt on the
falling edge of SCL1, the MOS-FET becomes conducting and interconnects both bus line sections. It takes
about 25 ns (between 100 and 125 ns of the time scale) to discharge SCL2 to the same voltage level of SCL1,
2
showing an increase of the fall time of SCL1, but far within the 300 ns requirement of the I C-bus specification.
Afterwards both lines SCL1 and SCL2 are pulled LOW together smoothly.
Capacitive coupling via the MOS-FET between SCL1 and SCL2 shows some minor effect on the curves:
- a small overshoot of SCL1 during the rising edge of SCL2 (Figure 4),
- the first slow part of the falling edge of SCL2 due to the falling edge of SCL1 (Figure 5).
14
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
4.2
Application Note
AN97055
Shifting from a 5V to a 3V level.
SCL2
5V
5V
SCL1
3V
3V
0V
0V
Figure 6.
Shifting from 5V to a 3V level (200 ns/div).
SCL2
SCL1
Figure 7.
Enlarged falling edge of fig. 6 (25 ns/div).
Figure 6 shows the level shifting from a “Higher level” to a “Lower level” at 200 ns/div. time scale. A 5V device
drives the SCL2 line and this wave form is shifted downwards to a 3 Volt wave form at SCL1. At about 2 Volt on
the rising edge, the MOS-FET is switched off and each section rises smoothly with its own curve to its end
value. Figure 7 gives an enlarged view of the falling edges at 25 ns/div. time scale. At about 2 Volt on the falling
edge of SCL2, the MOS-FET becomes conducting and interconnects both bus line sections. SCL2 and SCL1
are then about at the same voltage level, and both lines are pulled LOW together smoothly. Capacitive coupling
via the MOS-FET between SCL1 and SCL2 shows some minor effect on the curves:
- a small overshoot of SCL1 during the rising edge of SCL2 (Figure 6),
- the first slow part of the falling edge of SCL1 due to the falling edge of SCL2 (Figure 7).
15
Philips Semiconductors
Bi-directional level shifter for I²C-bus and other
systems.
4.3
Application Note
AN97055
Wave forms when a bus section is powered-down.
Figure 8 and 9 show the wave forms of the logic levels if a section is powered-down in the bus systems of figure
2 and figure 3 respectively.
SCL2
5V
SCL1
3V
Common drains (n)
0V
SCL2
SCL1
0V
Figure 8.
“Lower voltage” section in fig.2 is powered-down.
Figure 9.
“Higher voltage” section in fig.3 is powered-down
Figure 8 shows the situation when VDD1 is 0 Volt, so the “Lower voltage” section is powered-down in the bus
system of fig.2. The “Higher voltage” section stays operational and a clock pulse is present on the SCL2 line.
The SCL1 line stays at a LOW level with some positive and negative cross-talk effects via the drain-source
capacitance of the not conducting MOS-FET T2.
Figure 9 shows the situation when VDD2 is 0 Volt and the “High voltage” section is powered-down in the bus
system of fig.3. The “Lower voltage” section stays operational and a clock pulse is present on the SCL1 line.
The SCL2 line stays at a LOW level with some positive and negative capacitive cross-talk effects via the drainsource capacitance of the not conducting MOS-FET T4. The pull-up resistors to VDD3 are not present, and the
common drains follow the SCL1 HIGH level minus the voltage drop of the internal drain-substrate diode of T2.
During the LOW level T2 is conducting and the common drains (d) have the same level as SCL1.
If pull-up resistors to VDD3 are present, then the HIGH level of the common drains (d) will be pulled up to the
VDD3 level when SCL1 line is HIGH (equal as SCL2 in fig.4). In this case it is also possible to connect “Higher
voltage” devices direct to the common drains (d). These devices have VDD3 as supply voltage, which is not
switched off.
2
The use of the above level shift circuits gives extensive possibilities to I C-bus systems to connect, power-down
2
and protect I C-bus devices with different supply voltages and logic levels.
-----------------------------
16