PHILIPS PCA9541

INTEGRATED CIRCUITS
PCA9541
2-to-1 I2C master selector with
interrupt logic and reset
Product data sheet
Supersedes data of 2003 Dec 02
Philips
Semiconductors
2004 Oct 01
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
DESCRIPTION
The PCA9541 is a 2-to-1 I2C master selector designed for high
reliability dual master I2C applications where system operation is
required, even when one master fails or the controller card is
removed for maintenance. The two masters (e.g., primary and
back-up) are located on separate I2C-buses that connect to the
same downstream I2C-bus slave devices. I2C commands are sent
by either I2C-bus master and are used to select one master at a
time. Either master at any time can gain control of the slave devices
if the other master is disabled or removed from the system. The
failed master is isolated from the system and will not affect
communication between the on-line master and the slave devices on
the downstream I2C-bus.
FEATURES
• 2-to-1 bi-directional master selector
• I2C interface logic; compatible with SMBus standards
• PCA9541/01 powers-up with Channel 0 selected
• PCA9541/02 powers-up with Channel 0 selected after STOP
Three versions are offered for different architectures. PCA9541/01
with channel 0 selected at start-up, PCA9541/02 with channel 0
selected after start-up and after stop condition is detected, and
PCA9541/03 with no channel selected after start-up.
condition detected (bus idle) on Channel 0
• PCA9541/03 powers-up with no channel selected and either
The interrupt outputs are used to provide an indication of which
master has control of the bus. One interrupt input (INT_IN) collects
downstream information and propagates it to the 2 upstream
I2C-buses (INT0 and INT1) if enabled. INT0 and INT1 are also used
to let the previous bus master know that it is not in control of the bus
anymore and to indicate the completion of the bus
recovery/initialization sequence. Those interrupts can be disabled
and will not generate an interrupt if the masking option is set.
master can take control of the bus
• Active LOW Interrupt Input
• 2 Active LOW Interrupt Outputs
• Active LOW Reset Input
• 4 address pins allowing up to 16 devices on the I2C-bus
• Channel selection via I2C-bus
• Bus initialization/recovery function
• Bus traffic sensor
• Low RdsON switches
• Allows voltage level translation between 1.8 V, 2.5 V, 3.3 V and
A bus recovery/initialization if enabled sends nine clock pulses, a
not acknowledge, and a stop condition in order to set the
downstream I2C-bus devices to an initialized state before actually
switching the channel to the selected master.
An interrupt is sent to the upstream channel when the
recovery/initialization procedure is completed.
5 V buses
• No glitch on power-up
• Supports hot insertion
• Software identical for both masters
• Low stand-by current
• Operating power supply voltage range of 2.3 V to 5.5 V
• 6.0 V tolerant Inputs
• 0 to 400 kHz clock frequency
• ESD protection exceeds 2000 V HBM per JESD22-A114,
An internal bus sensor senses the downstream I2C traffic and
generates an interrupt if a channel switch occurs during a non-idle
bus condition. This function is enabled when the PCA9541
recovery/initialization is not used. The interrupt signal informs the
master that an external I2C-bus recovery/initialization needs to be
performed. It can be disabled and an interrupt will not be generated.
The pass gates of the switches are constructed such that the VDD
pin can be used to limit the maximum high voltage, which will be
passed by the PCA9541. This allows the use of different bus
voltages on each pair, so that 1.8 V 2.5 V or 3.3 V devices can
communicate with 5 V devices without any additional protection.
200 V MM per JESD22-A115 and 1000 V CDM per JESD22-C101
• Latch-up testing is done to JESDEC Standard JESD78 which
The PCA9541 does not isolate the capacitive loading on either side
of the device so the designer must take into account all trace and
device capacitances on both sides of the device, and pull-up
resistors must be used on all channels.
exceeds 100 mA
• Packages offered: SO16, TSSOP16, HVQFN16
External pull-up resistors pull the bus to the desired voltage level for
each channel. All I/O pins are 6.0 V tolerant.
APPLICATIONS
• High reliability systems with dual masters
• Gatekeeper multiplexer on long single bus
• Bus initialization/recovery for slave devices without hardware
An active-LOW Reset Input allows the PCA9541 to be initialized.
Pulling the RESET pin LOW resets the I2C state machine and
configures the device to its default state as does the internal power
on reset function.
reset
• Allows masters without arbitration logic to share resources
2004 Oct 01
2
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
ORDERING INFORMATION
PACKAGES
TEMPERATURE RANGE
ORDER CODE
TOPSIDE MARK
DRAWING NUMBER
16-Pin Plastic SO
–40 to +85 °C
PCA9541D/01
PCA9541D/01
SOT109-1
16-Pin Plastic TSSOP
–40 to +85 °C
PCA9541PW/01
9541/01
SOT403-1
16-Pin Plastic HVQFN
–40 to +85 °C
PCA9541BS/01
41/1
SOT629-1
16-Pin Plastic SO
–40 to +85 °C
PCA9541D/02
PCA9541D/02
SOT109-1
16-Pin Plastic TSSOP
–40 to +85 °C
PCA9541PW/02
9541/02
SOT403-1
16-Pin Plastic HVQFN
–40 to +85 °C
PCA9541BS/02
41/2
SOT629-1
16-Pin Plastic SO
–40 to +85 °C
PCA9541D/03
PCA9541D/03
SOT109-1
16-Pin Plastic TSSOP
–40 to +85 °C
PCA9541PW/03
9541/03
SOT403-1
16-Pin Plastic HVQFN
–40 to +85 °C
PCA9541BS/03
41/3
SOT629-1
Standard packing quantities and other packaging data are available at www.standardproducts.philips.com/packaging.
SDA_MST0
2
15 INT_IN
SCL_MST0
3
14 SDA_SLAVE
RESET
4
13 SCL_SLAVE
SCL_MST1
5
12 A3
SDA_MST1
6
11 A2
INT1
7
10 A1
VSS
8
9
13 INT_IN
16 VDD
14 VDD
1
15 INT0
INT0
16 SDA_MST0
PIN CONFIGURATION
12 SDA_SLAVE
SCL_MST0 1
RESET 2
11 SCL_SLAVE
TOP VIEW
SCL_MST1 3
A0
10 A3
SDA_MST1 4
9
A2
5
6
7
8
INT1
VSS
A0
A1
SW02008
Figure 1. SO16/TSSOP16 pin configuration.
SW02034
Figure 2. HVQFN16 pin configuration.
PIN DESCRIPTION
SO/TSSOP
PIN NUMBER
HVQFN PIN NUMBER
SYMBOL
1
15
INT0
2
16
SDA_MST0
Serial data master 0 (external pull-up required)
3
1
SCL_MST0
Serial clock master 0 (external pull-up required)
4
2
RESET
5
3
SCL_MST1
Serial clock master 1 (external pull-up required)
6
4
SDA_MST1
Serial data master 1 (external pull-up required)
7
5
INT1
Active LOW interrupt output 1 (external pull-up required)
8
6
VSS
Supply ground
9
7
A0
Address input 0 (externally held to GND or VCC)
10
8
A1
Address input 1 (externally held to GND or VCC)
11
9
A2
Address input 2 (externally held to GND or VCC)
12
10
A3
Address input 3 (externally held to GND or VCC)
FUNCTION
Active LOW interrupt output 0 (external pull-up required)
Active LOW reset input (external pull-up required)
13
11
SCL_SLAVE
Serial clock slave (external pull-up required)
14
12
SDA_SLAVE
Serial data slave (external pull-up required)
15
13
INT_IN
16
14
VDD
2004 Oct 01
Active LOW interrupt input (external pull-up required)
Supply voltage
3
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
BLOCK DIAGRAM
PCA9541
SCL_MST0
SDA_MST0
INPUT
FILTER
STOP
DETECTION
BUS
SENSOR
SCL_SLAVE
A3
SLAVE
CHANNEL
SWITCH
CONTROL
LOGIC
I2C-BUS
CONTROL
AND
REGISTER
BANK
A2
A1
SDA_SLAVE
A0
RESET
VDD
POWER-ON
RESET
BUS
RECOVERY/
INITIALIZATION
SCL_MST1
SDA_MST1
INPUT
FILTER
STOP
DETECTION
OSCILLATOR
INT0
INT1
INT_IN
INTERRUPT
LOGIC
VSS
SW02009
Figure 3. Block diagram
2004 Oct 01
4
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
The 2 LSBS are used as a pointer to determine which register will
be accessed.
DEVICE ADDRESS
Following a START condition, the upstream master that wants to
control the I2C-bus or make a status check must send the address
of the slave it is accessing. The slave address of the PCA9541 is
shown in Figure 4. To conserve power, no internal pull-up resistors
are incorporated on the hardware selectable pins and they must be
pulled HIGH or LOW.
1
1
1
A3 A2
FIXED
PCA9541
If the auto-increment flag is set (AI=1), the two least significant bits
of the Command Code are automatically incremented after a byte
has been read or written. This allows the user to program the
registers sequentially or to read them sequentially.
– During a Read operation, the contents of these bits will rollover
to “00” after the last allowed register is accessed (“10”).
– During a Write operation, the PCA9541 will acknowledge bytes
sent to the IE and CONTROL registers but will not acknowledge
a byte sent to the Interrupt Status Register since it is a
read-only register. The 2 LSB’s of the Command Code do not
roll over to 00 but stays at 10.
A1 A0 R/W
HARDWARE
SELECTABLE
Only the 2 least significant bits are affected by the AI flag.
SW02011
The last bit of the slave address defines the operation to be
performed. When set to logic 1 a read is selected while logic 0
selects a write operation.
Unused bits must be programmed with zeroes. Any command code
(Write operation) different from “000AI0000”, “000AI0001”, and
“000AI0010” will not be acknowledged. At power-up, this register
defaults to all zeros.
COMMAND CODE
Table 1. Command Code Register
Figure 4. Slave address
Following the successful acknowledgement of the slave address,
the bus master will send a byte to the PCA9541, which will be stored
in the Command Code register.
0
0
0
AI
0
AUTO
INCREMENT
0
B1 B0
REGISTER
NUMBER
B1
B0
REGISTER
NAME
TYPE
REGISTER
FUNCTION
0
0
IE
Read/Write
Interrupt
Enable
0
1
CONTROL
Read/Write
Control Switch
1
0
ISTAT
Read
Interrupt
Status
1
1
NOT ALLOWED
Each system master controls its own set of registers, however they
can also read specific bits from the other system master.
SW02302
Figure 5. Command Code
PCA9541 INTERNAL REGISTER MAP
IE
REG#00
IE 0
IE 1
REG#00
IE
CONTROL
REG#01
CONTROL 0
CONTROL 1
REG#01
CONTROL
ISTAT
REG#10
ISTAT 0
ISTAT 1
REG#10
ISTAT
MASTER 0
SCL_MST0
SDA_MST0
MASTER 1
SCL_MST1
SDA_MST1
PCA9541
CONTROL 0
CONTROL 1
7
6
5
4
3
2
1
0
CONTROL REGISTER DETAIL
Figure 6. Internal register map
2004 Oct 01
5
SW02072
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
INTERRUPT ENABLE AND CONTROL REGISTERS
DESCRIPTION
When activated and whether the bus was previously idle or not:
– 9 clock pulses are sent on the SCL_SLAVE.
When a master seeks control of the bus by connecting its I2C
channel to the PCA9541 downstream channel, it has to write to the
Control Register (Reg#01)
– SDA_SLAVE line is released (HIGH) when the clock pulses are
sent to SCL_SLAVE. This is equivalent to sending 8 data bits
and a not acknowledge
Bits MYBUS and BUSON allow the master to take control of the
bus.
– Finally a STOP condition is sent to the downstream slave
channel.
This sequence will complete any read transaction which was
previously in process and the downstream slave configured as a
slave-transmitter should release the SDA line because the
PCA9541 did not acknowledge the last byte.
The MYBUS and the NMYBUS bits determine which master has
control of the bus. Tables 4 and 5 explain which master gets control
of the bus and how. There is no arbitration. Any master can take
control of the bus when it wants regardless of whether the other
master is using it or not.
3. When the initialization has been requested and completed, the
PCA9541 sends an interrupt to the new master through its INT
line and connects the new master to the downstream channel.
BUSINIT bit in the Interrupt Status Register is set. The switch
operation occurs after the master asking the bus control
has sent a STOP command. This interrupt can be masked by
setting the BUSINITMSK bit to 1.
The BUSON and the NBUSON bits determine whether the upstream
bus is connected or disconnected to/from the downstream bus.
Internally, the state machine does the following:
– If the combination of the BUSON and the NBUSON bits causes
the upstream to be disconnected from the downstream bus,
then that is done. So in this case, the values of the MYBUS and
the NMYBUS do not matter.
4. When the bus initialization/recovery function has not been
requested (BUSINIT=0), the PCA9541 connects the new master
to the slave downstream channel. The switch operation occurs
after the master asking the bus control has sent a STOP
command. PCA9541 sends an interrupt to the new master
through its INT line if the built-in bus sensor function detects a
non-idle condition in the downstream slave channel at the
switching time. BUSOK bit in the Interrupt Status Register is set.
This means that a STOP condition has not been detected in the
previous bus communication and that an external bus
recovery/initialization must be performed. If an idle condition has
been detected at the switching time, no interrupt will be sent.
This interrupt can be masked by setting the BUSOKMSK bit to 1.
– If a master was connected to the downstream bus prior to the
disconnect, then an interrupt is sent on the respective interrupt
output in an attempt to let that master know that it is no longer
connected to the downstream bus. This is indicated by setting
the BUSLOST bit in the Interrupt Status Register.
– If the combination of the BUSON and the NBUSON bits causes
a master to be connected to the downstream bus and if there is
no change in the BUSON bits since when the disconnect took
effect, then the master requesting the bus is connected to the
downstream bus. If it requests a bus initialization sequence,
then it is performed.
– If there is no change in the combination of the BUSON and the
NBUSON bits and a new master wants the bus, then the
downstream bus is disconnected from the old master that was
using it and the new master gets control of it. Again, the bus
initialization if requested is done. The appropriate interrupt
signals are generated.
Interrupt status can be read. See paragraph INTERRUPT STATUS
REGISTER DESCRIPTION for more information.
The MYTEST and the NMYTEST bits cause the interrupt pins of the
respective masters to be activated for a ”functional interrupt test”.
NOTES:
1. The regular way to proceed is that a master asks to take the
control of the bus by programming MYBUS and BUSON bits.
Nevertheless, the same master can also decide to give up the
control of the bus and give it to the other master. This is also
done by programming the MYBUS and BUSON bits.
After a master has sent the bus control request:
1. The previous master is disconnected from the I2C-bus. An
interrupt to the previous master is sent through its INT line to let
it know that it lost control of the bus. BUSLOST bit in the
Interrupt Status Register is set. This interrupt can be masked by
setting the BUSLOSTMSK bit to 1.
2. Any writes either to the Interrupt Enable Register or the Control
Register cause the respective register to be updated on the 9th
clock cycle, i.e. on the rising edge of the acknowledge clock
cycle.
2. A built-in bus initialization/recovery function can take temporary
control of the downstream channel to initialize the bus before
making the actual switch to the new bus master. This function is
activated by setting the BUSINIT to 1 by the master during the
same write sequence as the one programming MYBUS and
BUSON bits.
2004 Oct 01
3. The actual switch from one channel to another or the switching
off of both the channels happens on a STOP command.
6
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Register 0: Interrupt Enable (IE) Register (B1B0 = 00)
This register allows a master to read and/or write (if needed) Mask options for its own channel.
The Interrupt Enable Register described below is identical for both the masters. Nevertheless, there are physically 2 internal Interrupt Enable
Registers, one for each upstream channel.
When Master 0 reads/writes in this register, the internal Interrupt Enable Register 0 will be accessed.
When Master 1 reads/writes in this register, the internal Interrupt Enable Register 1 will be accessed.
BIT
7
6
5
4
3
2
1
0
SYMBOL
0
0
0
0
BUSLOSTMSK
BUSOKMSK
BUSINITMSK
INTINMSK
Table 2. Register 0
BIT
0
1
2
SYMBOL
INTINMSK
BUSINITMSK
BUSOKMSK
3
BUSLOSTMSK
4
5
READ/
WRITE
DEFAULT
R/W
0
R/W
R/W
0
0
R/W
0
NOT USED
R only
0
NOT USED
R only
0
6
NOT USED
R only
0
7
NOT USED
R only
0
DESCRIPTION
0: Interrupt on INT_IN will generate an interrupt on INT
1: Interrupt on INT_IN will not generate an interrupt on INT (masked)
0: After connection is requested and Bus Initialization requested (BUSINIT = 1), an
interrupt on INT will be generated when the bus initialization is done.
Note: Channel switching is done after bus initialization completed.
1: After connection is requested and Bus Initialization requested (BUSINIT = 1), an
interrupt on INT will not be generated when the bus initialization is done (masked).
Note: Channel switching is done after bus initialization completed.
0: After connection is requested and Bus Initialization not requested (BUSINIT = 0), an
interrupt on INT will be generated when a non-Idle situation has been detected on the
downstream slave channel by the bus sensor at the switching moment.
Note: Channel switching is done automatically after the STOP command.
1: After connection is requested and Bus Initialization not requested (BUSINIT = 0), an
interrupt on INT will not be generated when a non-Idle situation has been detected on
the downstream slave channel by the bus sensor at the switching moment (masked).
Note: Channel switching is done automatically after the STOP command.
0: An interrupt on INT will be generated after the other master has been been
disconnected
1: An interrupt on INT will not be generated after the other master has been been
disconnected.
NOTE:
Default values are the same for PCA9541/01, PCA9541/02, and PCA9541/03
2004 Oct 01
7
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Register 1: Control Register (B1B0 = 01)
x stands for 0 or 1 and is applied to the master that reads or writes in the Control Register explained below
The Control Register described below is identical for both the masters. Nevertheless, there are physically 2 internal Control Registers, one for
each upstream channel.
When master 0 reads/writes in this register, the internal Control Register 0 will be accessed.
When master 1 reads/writes in this register, the internal Control Register 1 will be accessed.
BIT
7
6
5
4
3
2
1
0
SYMBOL
NTESTON
TESTON
0
BUSINIT
NBUSON
BUSON
NMYBUS
MYBUS
Table 3. Register 1
BIT
0
SYMBOL
MYBUS
1
NMYBUS
2
BUSON
READ/
WRITE
DEFAULT
R/W
See
Table 6
R only
See
Table 6
R/W
See
Table 6
3
NBUSON
R only
See
Table 6
4
BUSINIT
R/W
0
5
NOT USED
R only
0
6
TESTON
R/W
0
7
NTESTON
R only
0
2004 Oct 01
DESCRIPTION
MYBUS bit along with the NMYBUS bit decides which upstream channel is connected
to the downstream channel
See Table 4
NMYBUS bit is a copy of the MYBUS bit for the other channel
See Table 4
BUSON bit along with the NBUSON bit decides whether any upstream channel is
connected to the downstream channel or not
See Table 5
NBUSON bit is a copy of the BUSON bit for the other channel
See Table 5
0: Bus initialization not requested
1 : Bus initialization requested
0: a Logic Level High to the INT line is sent (interrupt cleared)
1: a Logic Level Low to the INT line is sent (interrupt generated)
0: a Logic Level High to the INT line of the other channel is sent (interrupt cleared)
1: a Logic Level Low to the INT line of the other channel is sent (interrupt generated)
8
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Table 4. MYBUS and NMYBUS Truth Table
NMYBUS
MYBUS
SLAVE CHANNEL
0
0
to the switching initiator
1
0
to the other channel
0
1
to the other channel
1
1
to the switching initiator
Table 5. BUSON and NBUSON Truth Table
NBUSON
BUSON
SLAVE CHANNEL
0
0
OFF
1
0
ON
0
1
ON
1
1
OFF
NOTES:
1. Switch to the new channel is done when the master initiating the switch request sends a STOP command to the PCA9541.
2. If Master 0 wants to change the connection to the downstream channel in any way, it needs to write to its Control Register (Reg#01), and
then send a STOP command because an update of the connection to the downstream according to the values in the two internal Control
Registers happens only on a STOP command. Writing to one control register followed by a STOP condition on the other Master’s channel
will not cause an update to the downstream connection.
3. When both masters request a switch to their own channel at the same time, the master who last wrote to its control register before the
PCA9541 receives a STOP command wins the switching sequence. There is no arbitration performed.
4. Auto Increment feature (AI=1) allows to program the PCA9541 in 4 bytes:
–
–
–
–
–
–
Start
111A3A2A1A0 + 0
00010000
Data Reg#00
Data Reg#01
Stop
PCA9541 Address + Write
Select Reg#00 with AI = 1
Interrupt Enable Register Data
Control Register Data
Table 6. Default Control Register Values
VERSION
PCA9541/01
PCA9541/02
PCA9541/03
PCA9541/02
(AFTER STOP)
2004 Oct 01
BIT
7
6
5
4
3
2
1
0
SYMBOL
NTESTON
TESTON
NOT
USED
BUSINIT
NBUSON
BUSON
NMYBUS
MYBUS
MST_0
0
0
0
0
0
1
0
0
MST_1
0
0
0
0
1
0
1
0
MST_0
0
0
0
0
0
0
0
0
MST_1
0
0
0
0
0
0
1
0
MST_0
0
0
0
0
0
0
0
0
MST_1
0
0
0
0
0
0
1
0
MST_0
0
0
0
0
0
1
0
0
MST_1
0
0
0
0
1
0
1
0
9
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Table 7 describes which command needs to be written to the Control
Register when a master device wants to take control of the I2C-bus.
Byte written to the Control Register is a function of the current
I2C-bus control status performed after an initial reading of the
Control Register.
‘I2C-bus off’ means that upstream and downstream channels are not
connected together.
Current status of the I2C-bus is determined by the bits MYBUS,
NMYBUS, BUSON and NBUSON is one of the following:
Remark: Only the 4 LSBs of the Control Register are described in
Table 7 since only those bits control the I2C-bus control. The logic
value for the 4 MSBs is specific to the application and are not
discussed in the table.
‘I2C-bus on’ means that upstream and downstream channels are
connected together.
– The master reading its Control Register does not have control and
the I2C-bus is off.
– The master reading its Control Register does not have control and
the I2C-bus is on.
The Read sequence is performed by the master as following:
S — 111xxxx0 — 000x0001 — Sr — 111xxxx1 — DataRead — P
– The master reading its Control Register has control and the
I2C-bus is off.
The Write sequence is performed by the master as following:
S — 111xxxx0 — 000x0001 — DataWritten — P
– The master reading its Control Register has control and the
I2C-bus is on.
Table 7. Bus control sequence
Read Control Register performed by the Master
Byte Read
only the
4 LSBs
are shown
Status
Write Control Register performed by the Master
NBUSON
BUSON
NMYBUS
MYBUS
Hex
Byte Written
only the 4 LSBs are shown
(see Note 1)
Action performed
to take Mastership
Binary
Hex
0x0
Bus off
Has control
0
0
0
0
x1x0
0x4
Bus on
0x1
Bus off
No control
0
0
0
1
x1x0
0x4
Bus on, Take control
0x2
Bus off
No control
0
0
1
0
x1x1
0x5
Bus on, Take control
0x3
Bus off
Has control
0
0
1
1
x1x1
0x5
Bus on
0x4
Bus on
Has control
0
1
0
0
No write required
–
No change
0x5
Bus on
No control
0
1
0
1
x1x0
0x4
Take control
0x6
Bus on
No control
0
1
1
0
x1x1
0x5
Take control
0x7
Bus on
Has control
0
1
1
1
No write required
–
No change
0x8
Bus on
Has control
1
0
0
0
No write required
–
No change
0x9
Bus on
No control
1
0
0
1
x0x0
0x0
Take control
0xA
Bus on
No control
1
0
1
0
x0x1
0x1
Take control
0xB
Bus on
Has control
1
0
1
1
No write required
–
No change
0xC
Bus off
Has control
1
1
0
0
x0x0
0x0
Bus on
0xD
Bus off
No control
1
1
0
1
x0x0
0x0
Bus on, Take control
0xE
Bus off
No control
1
1
1
0
x0x1
0x1
Bus on, Take control
0xF
Bus off
Has control
1
1
1
1
x0x1
0x1
Bus on
NOTES:
1. x0x0 = 0x0, 0x2, 0x8, 0xA
x0x1 = 0x1, 0x3, 0x9, 0xB
x1x0 = 0x4, 0x6, 0xC, 0xE
x1x1 = 0x5, 0x7, 0xD, 0xF
2004 Oct 01
10
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
INTERRUPT STATUS REGISTERS DESCRIPTION
downstream I2C traffic) detects a non-idle condition (previous bus
channel connected to the downstream slave channel, was between
a START and STOP condition), then an interrupt to the new master
is sent (INT line goes LOW). This interrupt tells the new master that
an external bus recovery/initialization must be performed. By setting
the BUSOKMSK bit to 1, the interrupt is masked and the new
master does not receive an interrupt (INT line does not go LOW).
The PCA9541 provides 4 different types of interrupt:
1. To indicate to the former I2C-bus master that it is not in control of
the bus anymore.
2. To indicate to the new I2C-bus master that:
– The bus recovery/initialization has been performed and that
the downstream channel connection has been done (built-in
bus recovery/initialization active).
NOTE: In this particular situation, after the switch to the new master
is performed, a read of the Interrupt Status Register is not
possible if the switch happened in the middle of a read
sequence because the new master does not have control of the
SDA line
– A “bus not well initialized” condition has been detected by the
PCA9541 when the switch has been done (built-in bus
recovery/initialization not active). This information can be
used by the new master to initiate its own bus
recovery/initialization sequence.
Downstream interrupt
3. Indicate to both I2C upstream masters that a downstream
interrupt has been generated through the INT_IN pin.
An interrupt can also be generated by a downstream device by
asserting the INT_IN pin LOW. When INT_IN is asserted LOW and if
both INTINMSK bits are not set to 1 by either master, INT0 and INT1
both go LOW.
4. Functionality wiring test.
Bus control lost interrupt
When an upstream master takes control of the I2C-bus while the
other channel was using the downstream channel, an interrupt is
generated to the master losing control of the bus (INT line goes
LOW to let the master know that it lost the control of the bus)
immediately after disconnection from the downstream channel.
By setting the INTINMSK bit to 1 by a master and/or the INTINMSK
bit to 1 by the other master, the interrupt(s) is (are) masked and the
corresponding masked channel(s) does (do) not receive an interrupt
(INT0 and/or INT1 line does (do) not go LOW).
By setting the BUSLOSTMSK bit to 1, the interrupt is masked and
the upstream master that lost the I2C-bus control does not receive
an interrupt (INT line does not go LOW).
A master can send an interrupt to itself to test its own INT wire or
send an interrupt to the other master to test its INT line. This is done
by:
– Setting the TESTON bit to 1 to test its own INT line.
Functional test interrupt
Recovery/initialization interrupt
– Setting the NTESTON bit to 1 to test the other master INT
line.
Before switching to a new upstream channel, an automatic bus
recovery/initialization can be performed by the PCA9541. This
function is requested by setting the BUSINIT bit to 1. When the
downstream bus has been initialized, an interrupt to the new master
is generated (INT line goes LOW).
Setting the TESTON and/or NTESTON bits to 0 by a master will
clear the interrupt(s).
NOTE: Interrupt outputs have an open-drain structure. Interrupt
input does not have any internal pull-up resistor and must not be left
floating (e.g., pulled high to VCC through resistor) in order to avoid
any undesired interrupt conditions.
By setting the BUSINITMSK bit to 1, the interrupt is masked and the
new master does not receive an interrupt (INT line does not go
LOW).
When the automatic bus recovery/initialization is not requested, if
the built-in bus sensor function (sensing permanently the
2004 Oct 01
11
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Register 2: Interrupt Status Register (B1B0 = 10)
The Interrupt Status Register for both the masters is identical and is described below. Nevertheless, there are physically 2 internal Interrupt
Registers, one for each upstream channel.
When Master 0 reads this register, the internal Interrupt Register 0 will be accessed.
When Master 1 reads this register, the internal Interrupt Register 1 will be accessed.
BIT
7
6
5
4
3
2
1
0
SYMBOL
NMYTEST
MYTEST
0
0
BUSLOST
BUSOK
BUSINIT
INTIN
READ/
WRITE
DEFAULT
Table 8. Register 2
BIT
SYMBOL
0
INTIN
R only
0
1
BUSINIT
R only
0
DESCRIPTION
0: No interrupt on interrupt input (INT_IN)
1: Interrupt on interrupt input (INT_IN)
0: No interrupt generated by the bus recovery/initialization function
1: Interrupt generated by the bus recovery/initialization function –
recovery/initialization done
0: No interrupt generated by bus sensor function
2
BUSOK
R only
0
1: Interrupt generated by bus sensor function (masked when bus
recovery/initialization requested) – Bus was not idle when the switch
occurred
0: No interrupt generated to the previous master when switching to the new
one is initiated
3
BUSLOST
R only
0
4
NOT USED
R only
0
5
NOT USED
R only
0
6
MYTEST
R only
0
1: Interrupt generated to the previous master when switching to the new
one is initiated
0: No interrupt generated by TESTON bit f (TESTON = 0)
1: Interrupt generated by TESTON bit (TESTON = 1)
0: No interrupt generated due to NTESTON bit from the other master
(NTESTON = 0 from the other master)
7
NMYTEST
R only
0
1: Interrupt generated due to TESTON bit from the other master
(NTESTON = 1 from the other master)
NOTES:
1. Interrupt on a master is cleared after TESTON bit is cleared the same master or NTESTON bit is cleared by the other master.
2. If the interrupt condition remains on INT_IN after the Read sequence, another interrupt will be generated (if the interrupt has not been
masked)
3. Default values are the same for PCA9541/01, PCA9541/02 and PCA9541/03
4. Reading the Interrupt Status Register does not clear the MYTEST, NMYTEST or the INTIN bits. They are cleared if:
– INT_IN lines goes HIGH for INTIN bit
– TESTON bit is cleared for MYTEST bit
– NTESTON bit is cleared for NMYTEST bit
5. BUSINIT, BUSOK and BUSLOST bits in the Interrupt Status Register gets cleared after a Read of the same register is done. Precisely, the
register gets cleared on the second clock pulse during the read operation.
2004 Oct 01
12
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
POWER-ON RESET
VOLTAGE TRANSLATION
When power is applied to VDD, an internal Power-On Reset holds
the PCA9541 in a reset condition until VDD has reached VPOR. At
this point, the reset condition is released and the internal registers
are initialized to their default states, with:
The pass gate transistors of the PCA9541 are constructed such that
the VDD voltage can be used to limit the maximum voltage that will
be passed from one I2C-bus to another.
Default
PCA9541/01
Stop Detect
Vpass vs. VDD
Channel 0
PCA9541/02
Channel 0
PCA9541/03
No Channel
n
5.0
4.5
MAXIMUM
4.0
1. PCA9541/01: after power-up and/or insertion of the device in the
main I2C-bus, the upstream Channel 0 and the downstream
slave channel are connected together.
TYPICAL
3.5
Vpass
3.0
2. PCA9541/02: after power-up and/or insertion of the device in the
main I2C-bus, the upstream Channel 0 and the downstream
slave channel are connected together after a STOP condition
has been detected by the PCA9541/02 on Channel 0.
2.5
2.0
1.0
– If the bus was not idle, Channel 0 and the downstream slave
device will be connected together as soon as a STOP
condition occurs at the conclusion of the transmission
sequence on Channel 0.
2.0
2.5
3.0
3.5
4.0
VDD
– If the bus was idle, then Channel 0 is connected to the
downstream slave channel after a STOP condition is detected
on Channel 0. This I2C-bus command may or may not be
addressed to the PCA9541/02.
4.5
5.0
5.5
SW00820
Figure 7. Vpass voltage
Figure 7 shows the voltage characteristics of the pass gate
transistors (note that the graph was generated using the data
specified in the DC Characteristics section of this datasheet). In
order for the PCA9541 to act as a voltage translator, the Vpass
voltage should be equal to, or lower than the lowest bus voltage. For
example, if the main buses were running at 5 V, and the
downstream bus was 3.3 V, then Vpass should be equal to or below
3.3 V to effectively clamp the downstream bus voltages. Looking at
Figure 7, we see that Vpass (max.) will be at 3.3 V when the
PCA9541 supply voltage is 3.5 V or lower so the PCA9541 supply
voltage could be set to 3.3 V. Pull-up resistors can then be used to
bring the bus voltages to their appropriate levels (see Figure 16).
– If a switch to channel 1 (initiated by the master on channel 1)
is requested (before or after the default switch to Channel 0
has been performed), the upstream channel 1 is connected to
the downstream slave channel when the master located in
Channel 1 sends the STOP command.
3. PCA9541/03: after power-up and/or insertion of the device in the
main I2C-bus, no channel will be connected to the downstream
channel. The device is ready to receive a START condition and
its address by a master.
If either register writes to its Control Register, then the
connection between the upstream and the downstream channels
is determined by the values on the Control Registers.
More Information on voltage translation can be found in Application
Note AN262 PCA954X family of I 2C/SMBus multiplexers and
switches.
Thereafter, VDD must be lowered below 0.2 V to reset the device.
EXTERNAL RESET
A reset can be accomplished by holding the RESET pin LOW for a
minimum of tW. The PCA9541 registers and I2C state machine will
be held in their default states until the RESET input is once again
HIGH. This input typically requires a pull-up resistor to VDD.
Default states are:
– I2C upstream Channel 0 connected to the I2C downstream
channel for the PCA9541/01
– no I2C upstream channel connected to the I2C downstream
channel for the PCA9541/02 with Channel 0 connected to the
downstream I2C channel after detection of a STOP on the
upstream channel.
– no I2C upstream channel connected to the I2C downstream
channel for the PCA9541/03.
2004 Oct 01
MINIMUM
1.5
13
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
CHARACTERISTICS OF THE I2C-BUS
Start and stop conditions
The I2C-bus is for 2-way, 2-line communication between different ICs
or modules. The two lines are a serial data line (SDA) and a serial
clock line (SCL). Both lines must be connected to a positive supply
via a pull-up resistor when connected to the output stages of a device.
Data transfer may be initiated only when the bus is not busy.
Both data and clock lines remain HIGH when the bus is not busy. A
HIGH-to-LOW transition of the data line, while the clock is HIGH is
defined as the start condition (S). A LOW-to-HIGH transition of the
data line while the clock is HIGH is defined as the stop condition (P)
(see Figure 9).
Bit transfer
System configuration
One data bit is transferred during each clock pulse. The data on the
SDA line must remain stable during the HIGH period of the clock
pulse as changes in the data line at this time will be interpreted as
control signals (see FIgure 8).
A device generating a message is a transmitter: a device receiving
is the receiver. The device that controls the message is the master
and the devices which are controlled by the master are the slaves
(see Figure 10).
SDA
SCL
data line
stable;
data valid
change
of data
allowed
SW00363
Figure 8. Bit transfer
SDA
SDA
SCL
SCL
S
P
START condition
STOP condition
SW00365
Figure 9. Definition of start and stop conditions
SDA
SCL
MASTER
TRANSMITTER/
RECEIVER
SLAVE
RECEIVER
SLAVE
TRANSMITTER/
RECEIVER
MASTER
TRANSMITTER
MASTER
TRANSMITTER/
RECEIVER
I2C
MULTIPLEXER
SLAVE
SW00366
Figure 10. System configuration
2004 Oct 01
14
Philips Semiconductors
Product data sheet
2-to-1 I2C master selector with interrupt logic and reset
PCA9541
Acknowledge
The number of data bytes transferred between the start and the stop conditions from transmitter to receiver is not limited. Each byte of eight bits
is followed by one acknowledge bit. The acknowledge bit is a HIGH level put on the bus by the transmitter whereas the master generates an
extra acknowledge related clock pulse.
A slave receiver which is addressed must generate an acknowledge after the reception of each byte. Also a master must generate an
acknowledge after the reception of each byte that has been clocked out of the slave transmitter. The device that acknowledges has to pull down
the SDA line during the acknowledge clock pulse, so that the SDA line is stable LOW during the HIGH period of the acknowledge related clock
pulse, set-up and hold times must be taken into account.
A master receiver must signal an end of data to the transmitter by not generating an acknowledge on the last byte that has been clocked out of
the slave. In this event, the transmitter must leave the data line HIGH to enable the master to generate a stop condition.
DATA OUTPUT
BY TRANSMITTER
not acknowledge
DATA OUTPUT
BY RECEIVER
acknowledge
SCL FROM
MASTER
1
2
8
9
S
clock pulse for
acknowledgement
START condition
SW00368
Figure 11. Acknowledgement on the
2004 Oct 01
15
I2C-bus
1
1
1
A3
A2 A1
A0
start condition
0
A
R/W
0
0
0
1
acknowledge
from slave
0
0
0
0
Auto
increment
A
A
acknowledge
from slave
A
acknowledge
from slave
acknowledge
from slave
P
Stop condition
SW02306
Figure 12. Write to the Mask and Control Registers using the Auto-Increment (AI) bit
NOTE: If a 3rd data byte is sent, it will not be acknowledged by the PCA9541.
COMMAND CODE
ACCESS TO REGISTER
XX = 00, 01, OR 10
SLAVE ADDRESS
S
1
1
start condition
1
A3 A2
A1
XX = 00 : INTERRUPT ENABLE REGISTER
XX = 01 : CONTROL REGISTER
XX = 10 : INT REGISTER
A0
0
R/W
A
0
0
acknowledge
from slave
0
1
0
Auto
Increment
0
X
CONTROL REGISTER
INT REGISTER
INTERRUPT ENABLE REGISTER
INT REGISTER
INTERRUPT ENABLE REGISTER
CONTROL REGISTER
SLAVE ADDRESS
X
A
acknowledge
from slave
Sr
1
re-start
condition
1
1
A3 A2 A1 A0
1
A
R/W acknowledge
from slave
A
acknowledge
from master
A
acknowledge
from master
A
P
15
no acknowledge- stop
from master condition
SW02307
Figure 13. Read the 3 registers using the Auto-Increment (AI) bit
NOTE: If a 4th data byte is read, the first Register will be accessed.
Philips Semiconductors
S
DATA CONTROL REGISTER
DATA MASK REGISTER
COMMAND CODE REGISTER
2-to-1 I2C master selector with interrupt logic and reset
2004 Oct 01
SLAVE ADDRESS
Product data sheet
PCA9541
1
1
start condition
1
A3 A2
A1
A0
0
R/W
A
0
0
acknowledge
from slave
0
AI
0
Auto
Increment
0
0
1
A
0
0
acknowledge
from slave
0
1
0
0
0
0
A
BUSINIT
P
stop condition
BUSON
MYBUS
acknowledge
from slave
SCL_MST0
INT1
IF THE INTERRUPT IS NOT MASKED
(BUSLOSTMSK = 0)
SCL_SLAVE
1
2
3
4
5
6
7
8
9
SDA_SLAVE
P
INT0
16
IF THE INTERRUPT IS NOT MASKED
(BUSINITMSK = 0)
MASTER 0 HAS
CONTROL OF
THE BUS
MASTER 1 HAS CONTROL OF THE BUS
PCA9541 HAS CONTROL OF THE BUS
Philips Semiconductors
S
AFTER THE STOP CONDITION,
MASTER 1 IS DISCONNECTED
FROM THE DOWNSTREAM
CHANNEL
DATA CONTROL REGISTER
COMMAND CODE REGISTER
2-to-1 I2C master selector with interrupt logic and reset
2004 Oct 01
SDA_MST0
SLAVE ADDRESS
MASTER 0 MUST WAIT FOR THE “BUS FREE
TIME” VALUE (BETWEEN STOP AND START)
DEFINED IN THE I2C SPECIFICATION
BEFORE SENDING COMMANDS TO
THE DOWNSTREAM DEVICES
SW02308
Figure 14. Write to the control register and switch from channel 1 to channel 0 (bus recovery/initialization requested)
NOTE: We assume that a Read of the control register was done by Master 1 and that 000x1010 was read.
Product data sheet
PCA9541
1
1
start condition
1
A3 A2
A1
A0
0
R/W
A
0
0
acknowledge
from slave
0
AI
0
Auto
Increment
0
0
1
A
0
acknowledge
from slave
0
0
0
0
0
0
0
A
acknowledge
from slave
P
stop condition
SCL_MST0
INT1
IF THE INTERRUPT IS NOT MASKED
(BUSLOSTMSK = 0)
INT0
IF MASTER 1 WAS NOT IDLE AT THE SWITCHING MOMENT
AND THE INTERRUPT IS NOT MASKED
(BUSOKMSK = 0)
MASTER 1 HAS CONTROL OF THE BUS
MASTER 0 HAS CONTROL OF THE BUS
17
MASTER 0 MUST WAIT FOR THE “BUS FREE
TIME” VALUE (BETWEEN STOP AND START)
DEFINED IN THE I2C SPECIFICATION
BEFORE SENDING COMMANDS TO
THE DOWNSTREAM DEVICES
SW02309
Figure 15. Write to the control register and switch from channel 1 to channel 0 (bus recovery/initialization not requested)
Philips Semiconductors
S
DATA CONTROL REGISTER
COMMAND CODE REGISTER
2-to-1 I2C master selector with interrupt logic and reset
2004 Oct 01
SLAVE ADDRESS
SDA_MST0
AFTER THE STOP CONDITION, MASTER 1 IS
DISCONNECTED FROM THE DOWNSTREAM
CHANNEL AND MASTER 0 IS CONNECTED
TO THE DOWNSTREAM CHANNEL
Product data sheet
PCA9541
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
TYPICAL APPLICATION
3.3 V
VDD
VDD
MASTER 0
SCL0
SCL_MST0
SDA0
SDA_MST0
RESET0
SLAVE 2
INT0
INT_IN
INT0
INT
VSS
SDA
SCL
SD1
RESET
SC1
PCA9541
3.3 V
VDD
SDA
MASTER 1
SCL
SDA
SLAVE 1
SCL1
SCL_MST1
SDA1
SDA_MST1
SCL
SLAVE 3
RESET1
INT1
VSS
INT1
A3
A2
A1
A0
VSS
SLAVE CARD
SW02010
Figure 16. Typical application
In a typical multi-point application, shown in Figure 17, the two
masters (e.g., primary and back-up) are located on separate
I2C-buses that connect to multiple downstream I2C-bus slave
cards/devices via a PCA9541/01 for non-hot swap applications or
the PCA9541/02 for hot swap applications to provide high reliability
of the I2C-bus.
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
SDA0
PCA9541
SCL0
SCL1
SDA1
MASTER 1
HIGH RELIABILITY SYSTEMS
The PCA9541 is a 2-to-1 I2C master selector designed for dual
master, high reliability I2C applications, where continuous
maintenance and control monitoring is required even if one master
fails or its controller card is removed for maintenance. The PCA9541
can also be used in other applications, such as where masters
share the same resource but cannot share the same bus, as a
gatekeeper multiplexer in long single bus applications or as a bus
initialization/recovery device.
MASTER 0
SPECIFIC APPLICATIONS
SR02462
Figure 17. High Reliability Backplane Application
2004 Oct 01
18
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
I2C commands are sent via the primary or back-up master and
either master can take command of the I2C-bus. Either master at
any time can gain control of the slave devices if the other master is
disabled or removed from the system. The failed master is isolated
from the system and will not affect communication between the
on-line master and the slave devices located on the cards.
GATEKEEPER MULTIPLEXER
The PCA9541/03 can act as a gatekeeper multiplexer in applications
where there are multiple I2C devices with the same fixed address
(e.g., EEPROMs with address of “Z” as shown in Figure 20)
connected in a multi-point arrangement to the same I2C-bus. Up to
16 hot swappable cards/devices can be multiplexed to the same bus
master by using one PCA9541/03 per card/device. Since each
PCA9541/03 has its own unique address (e.g., “A”, “B”, “C”, etc), the
EEPROMs can be connected to the master, one at a time, by
connecting one PCA9541/03 (Master 0 position) while keeping the
rest of the cards/devices isolated (off position).
H
EEPROM
MASTER 1
PCA9541
PCA9541
MASTER 1
MASTER 1
PCA9541
G
EEPROM
MASTER 1
PCA9541
F
EEPROM
PCA9541
PCA9541
E
EEPROM
PCA9541
PCA9541
D
EEPROM
MASTER 0
PCA9541
C
EEPROM
MASTER 0
PCA9541
B
EEPROM
MASTER 0
PCA9541
SCL1
SDA1
A
EEPROM
SCL1
SDA1
PCA9541
SCL0
SDA0
SCL1
SDA1
PCA9548
SCL0
SDA0
SCL1
SDA1
The alternative, shown with dashed lines, is to use a PCA9548
1-to-8 channel switch on the master card and run 8 I2C-buses, one
to each EEPROM card, to multiplex the master to each card. The
number of card pins used is the same in either case, but there are 7
less pairs of SDA/SCL traces on the PC board if the PCA9541/03 is
used.
MASTER 0
SCL0
SDA0
MASTER 0
For even higher reliability in multi-point backplane applications,
two dedicated masters can be used for every card as shown in
Figure 18.
SCL0
SDA0
PCA9541
Z
Z
Z
Z
Z
Z
Z
Z
SR02463
SW02099
Figure 18. Very High Reliability Backplane Application
Figure 20. Gatekeeper Multiplexer Application
MASTERS WITH SHARED RESOURCES
BUS INITIALIZATION/RECOVERY
Some masters may not be multi-master capable or some masters
may not work well together and continually lock up the bus. The
PCA9541 can be used to separate the masters, as shown in
Figure 19, but still allow shared access to slave devices, such as
Field Replaceable Unit (FRU) EEPROMs or temperature sensors.
ASSEMBLY A
If the I2C-bus is hung, I2C devices without a hardware reset pin
(e.g., Slave 1 and 2 in Figure 21) can be isolated from the master by
the PCA9541/03. The PCA9541/03 disconnects the bus when it is
reset via the hardware reset line, restoring the master’s control of
the rest of the bus (e.g., Slave 0). The bus master can then
command the PCA9541/03 to send 9 clock pulses/ stop condition to
reset the downstream I2C devices before they are reconnected to
the master or leave the downstream devices isolated.
SDA/SCL
MASTER A
PCA9541
SLAVE A2
SLAVE A0
SDA/SCL
ASSEMBLY B
PCA9541
SLAVE B1
SDA/SCL
MASTER
MASTER B
SLAVE B2
SLAVE 0
PCA9541/03
MAIN
MASTER
SLAVE A1
SLAVE 1
SDA
SLAVE
I2C-bus
SCL
SLAVE 2
SLAVE B0
SW02101
RESET
SW02100
Figure 19. Masters with Shared Resources Application
Figure 21. Bus Initialization/Recovery Application
2004 Oct 01
19
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
ABSOLUTE MAXIMUM RATINGS1, 2
In accordance with the Absolute Maximum Rating System (IEC 134). Voltages are referenced to GND (ground = 0 V).
RATING
UNIT
DC supply voltage
PARAMETER
–0.5 to +7.0
V
VI
DC input voltage
–0.5 to +7.0
V
II
DC input current
± 20
mA
IO
DC output current
± 25
mA
IDD
Supply current
± 100
mA
ISS
Supply current
± 100
mA
Ptot
total power dissipation
400
mW
Tstg
Storage temperature range
–60 to +150
°C
Tamb
Operating ambient temperature
–40 to +85
°C
SYMBOL
VDD
CONDITIONS
NOTES:
1. Stresses beyond those listed may cause permanent damage to the device. These are stress ratings only and functional operation of the
device at these or any other conditions beyond those indicated under “recommended operating conditions” is not implied. Exposure to
absolute-maximum-rated conditions for extended periods may affect device reliability.
2. The performance capability of a high-performance integrated circuit in conjunction with its thermal environment can create junction
temperatures which are detrimental to reliability. The maximum junction temperature of this integrated circuit should not exceed 150 °C.
DC CHARACTERISTICS
VDD = 2.3 V to 3.6 V; VSS = 0 V; Tamb = –40 °C to +85 °C; unless otherwise specified. (See page 21 for VDD = 3.6 V to 5.5 V)
SYMBOL
PARAMETER
TEST CONDITIONS
LIMITS
MIN
TYP
MAX
UNIT
Supply
VDD
Supply voltage
IDD
Supply current
Istb
Standby current
VPOR
2.3
—
3.6
V
Operating mode; VDD = 3.6 V; no load;
VI = VDD or VSS; fSCL = 100 kHz
—
152
200
µA
Standby mode; VDD = 3.6 V; no load;
VI = VDD or VSS; fSCL = 0 kHz
—
10
100
µA
no load; VI = VDD or VSS
—
1.5
2.1
V
Power-on reset voltage (Note 1)
Input SCL; input/output SDA (upstream and downstream channels)
VIL
LOW-level input voltage
–0.5
—
0.3VDD
V
VIH
HIGH-level input voltage
0.7VDD
—
6
V
VOL = 0.4 V
3
—
—
VOL = 0.6 V
6
—
—
VI = VDD or VSS
–1
—
+1
µA
VI = VSS
—
4
5
pF
V
IOL
LOW-level out
output
ut current
IL
Leakage current
Ci
Input capacitance
mA
Select inputs A0 to A3 / INT_IN / RESET
VIL
LOW-level input voltage
–0.5
—
+0.3VDD
VIH
HIGH-level input voltage
0.7VDD
—
6
V
ILI
Input leakage current
VI = VDD or VSS
–1
—
+1
µA
Ci
Input capacitance
VI = VSS
—
2
3
pF
VCC = 3.0 V to 3.6 V, VO = 0.4 V, IO = 15 mA
5
14
30
VCC = 2.3 V to 2.7 V, VO = 0.4 V, IO = 10 mA
7
17
55
Ω
Vswin = VDD = 3.3 V; Iswout = –100 µA
—
2.2
—
Vswin = VDD = 3.0 V to 3.6 V; Iswout = –100 µA
1.6
—
2.8
Vswin = VDD = 2.5 V; Iswout = –100 µA
—
1.5
—
Vswin = VDD = 2.3 V to 2.7 V; Iswout = –100 µA
1.1
—
2.0
VI = VDD or VSS
–1
—
+1
µA
VOL = 0.4 V
3
—
—
mA
Pass Gate
RON
VPass
P
IL
Switch resistance
Switch output
out ut voltage
Leakage current
V
INT0 and INT1 outputs
IOL
LOW-level output current
NOTE:
1. VDD must be lowered to 0.2 V in order to reset part.
2004 Oct 01
20
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
DC CHARACTERISTICS
VDD = 3.6 V to 5.5 V; VSS = 0 V; Tamb = –40 °C to +85 °C; unless otherwise specified. (See page 20 for VDD = 2.3 V to 3.6 V)
SYMBOL
PARAMETER
TEST CONDITIONS
LIMITS
MIN
TYP
MAX
UNIT
Supply
VDD
Supply voltage
IDD
Supply current
Istb
Standby current
VPOR
Power-on reset voltage (Note 1)
3.6
—
5.5
V
Operating mode; VDD = 5.5 V;
no load; VI = VDD or VSS;
fSCL = 100 kHz
—
349
600
µA
Standby mode; VDD = 5.5 V;
no load; VI = VDD or VSS;
fSCL = 0 kHz
—
10
200
µA
no load; VI = VDD or VSS
—
1.5
2.1
V
Input SCL; input/output SDA (upstream and downstream channels)
VIL
LOW-level input voltage
–0.5
—
0.3VDD
V
VIH
HIGH-level input voltage
0.7VDD
—
6
V
IOL
O
LOW level output current
LOW-level
VOL = 0.4 V
3
—
—
mA
VOL = 0.6 V
6
—
—
mA
IIL
LOW-level input current
VI = VSS
–10
—
10
µA
IIH
HIGH-level input current
VI = VDD
—
—
100
µA
Ci
Input capacitance
VI = VSS
—
4
6
pF
Select inputs A0 to A3 / INT_IN / RESET
VIL
LOW-level input voltage
–0.5
—
+0.3VDD
V
VIH
HIGH-level input voltage
0.7VDD
—
6
V
ILI
Input leakage current
VI = VDD or VSS
–1
—
+50
µA
Ci
Input capacitance
VI = VSS
—
2
5
pF
Switch resistance
VCC = 4.5 V to 5.5 V; VO = 0.4 V; IO = 15 mA
4
12
24
Ω
Vswin = VDD = 5.0 V; Iswout = –100 µA
—
3.6
—
V
Vswin = VDD = 4.5 to 5.5 V; Iswout = –100 µA
2.6
—
4.5
V
VI = VDD or VSS
–1
—
+100
µA
VOL = 0.4 V
3
—
—
mA
Pass Gate
RON
VPass
IL
Switch output voltage
Leakage current
INT0 and INT1 outputs
IOL
LOW-level output current
NOTE:
1. VDD must be lowered to 0.2 V in order to reset part.
2004 Oct 01
21
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
AC CHARACTERISTICS
SYMBOL
STANDARD-MODE
I2C-bus
PARAMETER
FAST-MODE
I2C-bus
UNIT
MIN
MAX
MIN
MAX
Propagation delay from SDA to SDn or SCL to SCn
—
0.31
—
0.31
ns
SCL clock frequency
0
100
0
400
kHz
SCL bus initialization/recovery clock frequency
50
150
50
150
kHz
Bus free time between a STOP and START condition
4.7
—
1.3
—
µs
Hold time (repeated) START condition
After this period, the first clock pulse is generated
4.0
—
0.6
—
µs
tLOW
LOW period of the SCL clock
4.7
—
1.3
—
µs
tHIGH
HIGH period of the SCL clock
4.0
—
0.6
—
µs
tSU;STA
Set-up time for a repeated START condition
4.7
—
0.6
—
µs
tSU;STO
Set-up time for STOP condition
4.0
—
0.6
—
µs
tHD;DAT
Data hold time
02
3.45
02
0.9
µs
tSU;DAT
Data set-up time
250
—
100
—
ns
tpd
fSCL
fSCLIR
tBUF
tHD;STA
3
tR
Rise time of both SDA and SCL signals
—
1000
20 + 0.1Cb
300
ns
tF
Fall time of both SDA and SCL signals
—
300
20 + 0.1Cb3
300
µs
Cb
Capacitive load for each bus line
—
400
—
400
µs
tSP
Pulse width of spikes which must be suppressed
by the input filter
—
50
—
50
ns
tVD:DATL
Data valid (HL)4
—
1
—
1
µs
tVD:DATH
Data valid
(LH)4
—
0.6
—
0.6
µs
tVD:ACK
Data valid Acknowledge
—
1
—
1
µs
INT0 and INT1 outputs
tiv
INT_in to INT1 or INT2 active valid time
—
4
—
4
µs
tir
INT_in to IINT1 or INT2 inactive delay time
—
2
—
2
µs
Lpwr
LOW level pulse width rejection or INT_in input
1
—
1
—
ns
Hpwr
HIGH level pulse width rejection or INT_in input
0.5
—
0.5
—
µs
RESET
tW
Pulse width LOW reset
4
—
4
—
ns
trst
Reset time (SDA clear)
500
—
500
—
ns
0
—
0
—
ns
tREC:STA
Recovery to Start5, 6
NOTES:
1. Pass gate propagation delay is calculated from the 20 Ω typical RON and the 15 pF load capacitance.
2. A device must internally provide a hold time of at least 300 ns for the SDA signal (referred to the VIH(min) of the SCL signal) in order to bridge
the undefined region of the falling edge of SCL.
3. Cb = total capacitance of one bus line in pF.
4. Measurements taken with 1 kΩ pull-up resistor and 50 pF load.
5. Resetting the device while actively communicating on the bus may cause glitches or errant STOP conditions.
6. Upon reset, the full delay will be the sum of tRESET and the RC time constant of the SDA bus.
2004 Oct 01
22
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
SDA
tBUF
tR
tLOW
tF
tHD;STA
tSP
SCL
tHD;STA
P
tSU;STA
tHD;DAT
S
tHIGH
tSU;DAT
tSU;STO
Sr
P
SU00645
Figure 22. Definition of timing on the I2C-bus
handbook, full pagewidth
START
CONDITION
(S)
PROTOCOL
t
BIT7
MSB
(A7)
t
SU;STA
LOW
BIT8
(R/W)
BIT6
(A6)
t HIGH
STOP
CONDITION
(S)
ACKNOWLEDGE
(A)
1 / f SCL
SCL
t
t
t r
BUF
f
SDA
t
t HD;STA
SU;DAT
t
HD;DAT
t
VD;DAT
t
VD;ACK
t
SU;STO
SW02278
Figure 23.
I2C-bus
timing diagram; rise and fall times refer to VIL and VIH
START
ACK OR READ CYCLE
SCL
SDA
30%
tRESET
RESET
50%
50%
50%
tREC
tW
tRESET
50%
LEDx
LED OFF
SW02336
Figure 24. Definition of RESET timing
2004 Oct 01
23
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
VDD
PCA9541
6.0 V
Open
RL = 500 Ω
VO
VI
PULSE
GENERATOR
D.U.T.
RT
CL
= 50 pF
DEFINITIONS
RL = Load resistor.
CL = Load capacitance includes jig and probe capacitance
RT = Termination resistance should be equal to the output
impedance ZO of the pulse generators.
SW02279
Figure 25. Test circuitry for switching times
2004 Oct 01
24
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
SO16: plastic small outline package; 16 leads; body width 3.9 mm
2004 Oct 01
25
PCA9541
SOT109-1
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
TSSOP16: plastic thin shrink small outline package; 16 leads; body width 4.4 mm
2004 Oct 01
26
PCA9541
SOT403-1
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
HVQFN16: plastic thermal enhanced very thin quad flat package; no leads; 16 terminals;
body 4 x 4 x 0.85 mm
2004 Oct 01
27
PCA9541
SOT629-1
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
REVISION HISTORY
Rev
Date
Description
_2
20041001
Product data (9397 750 13629); supersedes data of 02 December 2003 (9397 750 12453).
Modifications:
• Table 7 and its description added to page 10.
• “Power-On Reset” section on page 13:
– first sentence: change from “... in a reset state until VDD has reached VPOR.” to “ ... in a reset condition until
VDD has reached VPOR.”
– Add last sentence in section.
• Add Note 1 to DC Characteristics tables on pages 20 and 21, and reference to it at parameter VPOR.
• AC characterists table on page 22:
– Add Note 4 and references to it at parameters tVD;DATL and tVD;DATH.
– Add Notes 5 and 6 and references to them at parameter tREC:STA
• Add (new) Figure 24, ‘Definition of RESET timing’.
_1
2004 Oct 01
20031202
Product data (9397 750 12453); ECN 853-2436 01-A14594 dated 11 November 2003.
28
Philips Semiconductors
Product data sheet
2-to-1 I2C demultiplexer with interrupt logic and reset
PCA9541
Purchase of Philips I2C components conveys a license under the Philips’ I2C patent
to use the components in the I2C system provided the system conforms to the
I2C specifications defined by Philips. This specification can be ordered using the
code 9398 393 40011.
Data sheet status
Level
Data sheet status [1]
Product
status [2] [3]
Definitions
I
Objective data sheet
Development
This data sheet contains data from the objective specification for product development.
Philips Semiconductors reserves the right to change the specification in any manner without notice.
II
Preliminary data sheet
Qualification
This data sheet contains data from the preliminary specification. Supplementary data will be published
at a later date. Philips Semiconductors reserves the right to change the specification without notice, in
order to improve the design and supply the best possible product.
III
Product data sheet
Production
This data sheet contains data from the product specification. Philips Semiconductors reserves the
right to make changes at any time in order to improve the design, manufacturing and supply. Relevant
changes will be communicated via a Customer Product/Process Change Notification (CPCN).
[1] Please consult the most recently issued data sheet before initiating or completing a design.
[2] The product status of the device(s) described in this data sheet may have changed since this data sheet was published. The latest information is available on the Internet at URL
http://www.semiconductors.philips.com.
[3] For data sheets describing multiple type numbers, the highest-level product status determines the data sheet status.
Definitions
Short-form specification — The data in a short-form specification is extracted from a full data sheet with the same type number and title. For detailed information see
the relevant data sheet or data handbook.
Limiting values definition — Limiting values given are in accordance with the Absolute Maximum Rating System (IEC 60134). Stress above one or more of the limiting
values may cause permanent damage to the device. These are stress ratings only and operation of the device at these or at any other conditions above those given
in the Characteristics sections of the specification is not implied. Exposure to limiting values for extended periods may affect device reliability.
Application information — Applications that are described herein for any of these products are for illustrative purposes only. Philips Semiconductors make no
representation or warranty that such applications will be suitable for the specified use without further testing or modification.
Disclaimers
Life support — These products are not designed for use in life support appliances, devices, or systems where malfunction of these products can reasonably be
expected to result in personal injury. Philips Semiconductors customers using or selling these products for use in such applications do so at their own risk and agree
to fully indemnify Philips Semiconductors for any damages resulting from such application.
Right to make changes — Philips Semiconductors reserves the right to make changes in the products—including circuits, standard cells, and/or software—described
or contained herein in order to improve design and/or performance. When the product is in full production (status ‘Production’), relevant changes will be communicated
via a Customer Product/Process Change Notification (CPCN). Philips Semiconductors assumes no responsibility or liability for the use of any of these products, conveys
no license or title under any patent, copyright, or mask work right to these products, and makes no representations or warranties that these products are free from patent,
copyright, or mask work right infringement, unless otherwise specified.
 Koninklijke Philips Electronics N.V. 2004
All rights reserved. Printed in U.S.A.
Contact information
For additional information please visit
http://www.semiconductors.philips.com.
Fax: +31 40 27 24825
Date of release: 10-04
For sales offices addresses send e-mail to:
[email protected].
Document number:
Philips
Semiconductors
2004 Oct 01
29
9397 750 13629