General Description: 2-To-1 I C-Bus Master Selector With Interrupt Logic and Reset
General Description: 2-To-1 I C-Bus Master Selector With Interrupt Logic and Reset
General Description: 2-To-1 I C-Bus Master Selector With Interrupt Logic and Reset
1. General description
The PCA9541 is a 2-to-1 I2C-bus master selector designed for high reliability dual master
I2C-bus applications where system operation is required, even when one master fails or
the controller card is removed for maintenance. The two masters (for example, primary
and back-up) are located on separate I2C-buses that connect to the same downstream
I2C-bus slave devices. I2C-bus 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.
Two versions are offered for different architectures. PCA9541/01 with channel 0 selected
at start-up and PCA9541/03 with no channel selected after start-up.
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.
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 internal bus sensor senses the downstream I2C-bus 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.
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.
External pull-up resistors pull the bus to the desired voltage level for each channel. All I/O
pins are 6.0 V tolerant.
NXP Semiconductors PCA9541
2-to-1 I2C-bus master selector with interrupt logic and reset
An active LOW reset input allows the PCA9541 to be initialized. Pulling the RESET pin
LOW resets the I2C-bus state machine and configures the device to its default state as
does the internal Power-On Reset (POR) function.
3. Applications
High reliability systems with dual masters
Gatekeeper multiplexer on long single bus
Bus initialization/recovery for slave devices without hardware reset
Allows masters without arbitration logic to share resources
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
4. Ordering information
Table 1. Ordering information
Tamb = 40 C to +85 C
Type number Package
Name Description Version
PCA9541D/01 SO16 plastic small outline package; 16 leads; body width 3.9 mm SOT109-1
PCA9541PW/01 TSSOP16 plastic thin shrink small outline package; 16 leads; body width 4.4 mm SOT403-1
PCA9541BS/01 HVQFN16 plastic thermal enhanced very thin quad flat package; no leads; 16 terminals; SOT629-1
body 4 4 0.85 mm
PCA9541D/03 SO16 plastic small outline package; 16 leads; body width 3.9 mm SOT109-1
PCA9541PW/03 TSSOP16 plastic thin shrink small outline package; 16 leads; body width 4.4 mm SOT403-1
PCA9541BS/03 HVQFN16 plastic thermal enhanced very thin quad flat package; no leads; 16 terminals; SOT629-1
body 4 4 0.85 mm
5. Marking
Table 2. Marking codes
Type number Topside mark
PCA9541D/01 PCA9541D/01
PCA9541PW/01 9541/01
PCA9541BS/01 41/1
PCA9541D/03 PCA9541D/03
PCA9541PW/03 9541/03
PCA9541BS/03 41/3
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
6. Block diagram
PCA9541
SCL_MST0
INPUT STOP BUS
FILTER DETECTION SENSOR
SDA_MST0
SLAVE
CHANNEL SCL_SLAVE
A3 SWITCH
A2 I2C-BUS CONTROL SDA_SLAVE
A1 CONTROL LOGIC
AND
A0
REGISTER
BANK
RESET POWER-ON
VDD RESET
BUS
RECOVERY/
SCL_MST1 INITIALIZATION
INPUT STOP
FILTER DETECTION
SDA_MST1
OSCILLATOR
INT0
INTERRUPT
INT1 INT_IN
LOGIC
002aab382
VSS
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
7. Pinning information
7.1 Pinning
INT0 1 16 VDD
SDA_MST0 2 15 INT_IN
SCL_MST0 3 14 SDA_SLAVE
INT0 1 16 VDD
RESET 4 13 SCL_SLAVE SDA_MST0 2 15 INT_IN
PCA9541D/01
PCA9541D/03 12 A3 SCL_MST0 3 14 SDA_SLAVE
SCL_MST1 5
RESET 4 PCA9541PW/01 13 SCL_SLAVE
SDA_MST1 6 11 A2 SCL_MST1 5 PCA9541PW/03 12 A3
SDA_MST1 6 11 A2
INT1 7 10 A1
INT1 7 10 A1
VSS 8 9 A0 VSS 8 9 A0
002aab379 002aab380
Fig 2. Pin configuration for SO16 Fig 3. Pin configuration for TSSOP16
16 SDA_MST0
13 INT_IN
15 INT0
14 VDD
terminal 1
index area
SCL_MST0 1 12 SDA_SLAVE
RESET 2 11 SCL_SLAVE
PCA9541BS/01
SCL_MST1 3 PCA9541BS/03 10 A3
SDA_MST1 4 9 A2
7
5
8
INT1
VSS
A0
A1
002aab381
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
[1] HVQFN16 package die supply ground is connected to both the VSS pin and the exposed center pad. The
VSS pin must be connected to supply ground for proper device operation. For enhanced thermal, electrical,
and board-level performance, the exposed pad needs to be soldered to the board using a corresponding
thermal pad on the board, and for proper heat conduction through the board thermal vias need to be
incorporated in the printed-circuit board in the thermal pad region.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
8. Functional description
Refer to Figure 1 “Block diagram of PCA9541”.
1 1 1 A3 A2 A1 A0 R/W
fixed hardware
selectable
002aab390
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.
Remark: Reserved I2C-bus addresses must be used with caution since they can interfere
with:
0 0 0 AI 0 0 B1 B0
002aab391
The 2 LSBs are used as a pointer to determine which register will be accessed.
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 roll over to 00b after the last
allowed register is accessed (10b).
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
• 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 LSBs of the Command Code do not roll
over to 00b but stay at 10b.
Unused bits must be programmed with zeros. Any command code (write operation)
different from ‘000AI 0000’, ‘000AI 0001’, and ‘000AI 0010’ will not be acknowledged. At
power-up, this register defaults to all zeros.
Each system master controls its own set of registers, however they can also read specific
bits from the other system master.
PCA9541
IE REG#00 IE 0 IE 1 REG#00 IE
MASTER 0 MASTER 1
SCL_MST0 SCL_MST1
SDA_MST0 002aab392 SDA_MST1
Bits MYBUS and BUSON allow the master to take control of the bus.
The MYBUS and the NMYBUS bits determine which master has control of the bus.
Table 9 explains 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.
The BUSON and the NBUSON bits determine whether the upstream bus is connected or
disconnected to/from the downstream bus. Table 10 explains when the upstream bus is
connected or disconnected.
• 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.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
• 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.
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 logic 1.
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 logic 1 by the master
during the same write sequence as the one programming MYBUS and BUSON bits.
When activated and whether the bus was previously idle or not:
a. 9 clock pulses are sent on the SCL_SLAVE.
b. 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.
c. 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.
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 logic 1.
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 logic 1.
Interrupt status can be read. See Section 8.4 “Interrupt Status registers” for more
information.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
The MYTEST and the NMYTEST bits cause the interrupt pins of the respective masters to
be activated for a ‘functional interrupt test’.
Remark: The regular way to proceed is that a master asks to take the control of the bus
by programming MYBUS and BUSON bits based on NMUYBUS and NBUSON values.
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
based on NMYBUS and NBUSON values.
Remark: Any writes either to the Interrupt Enable Register or the Control Register cause
the respective register to be updated on the 9th clock cycle, that is, on the rising edge of
the acknowledge clock cycle.
Remark: The actual switch from one channel to another or the switching off of both the
channels happens on a STOP command that is sent by the master requesting the switch.
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.
Table 5. Register 0 - Interrupt Enable (IE) register (B1:B0 = 00b) bit allocation
7 6 5 4 3 2 1 0
0 0 0 0 BUSLOSTMSK BUSOKMSK BUSINITMSK INTINMSK
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
[1] Default values are the same for PCA9541/01 and PCA9541/03.
[1] Default values are the same for PCA9541/01 and PCA9541/03.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Switch to the new channel is done when the master initiating the switch request sends a
STOP command to the PCA9541.
If either master wants to change the connection of the downstream channel, 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.
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.
The Auto Increment feature (AI = 1) allows to program the PCA9541 in 4 bytes:
Start
111A3A2A1A0 + 0 PCA9541 Address + Write
00010000 Select Reg#00 with AI = 1
Data Reg#00 Interrupt Enable Register data
Data Reg#01 Control Register data
Stop
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Table 12 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.
Current status of the I2C-bus is determined by the bits MYBUS, NMYBUS, BUSON and
NBUSON is one of the following:
• 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 master reading its Control Register has control and the I2C-bus is off.
• The master reading its Control Register has control and the I2C-bus is on.
‘I2C-bus off’ means that upstream and downstream channels are not connected together.
‘I2C-bus on’ means that upstream and downstream channels are connected together.
Remark: Only the 4 LSBs of the Control Register are described in Table 12 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.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
NXP Semiconductors
Table 12. Bus control sequence
Read Control Register performed by the master Write Control Register performed by the master
Byte Status NBUSON BUSON NMYBUS MYBUS Byte Action performed NBUSON[3] BUSON NMYBUS[3] MYBUS
read[1] written[1][2] to take mastership
Hex Hex
0 bus off has control 0 0 0 0 4 bus on x 1 x 0
1 bus off no control 0 0 0 1 4 bus on, take control x 1 x 0
2 bus off no control 0 0 1 0 5 bus on, take control x 1 x 1
3 bus off has control 0 0 1 1 5 bus on x 1 x 1
4 bus on has control 0 1 0 0 - no change no write required
5 bus on no control 0 1 0 1 4 take control x 1 x 0
6 bus on no control 0 1 1 0 5 take control x 1 x 1
All information provided in this document is subject to legal disclaimers.
[3] x can be either ‘0’ or ‘1’ since those bits are read-only bits.
PCA9541
14 of 42
NXP Semiconductors PCA9541
2-to-1 I2C-bus master selector with interrupt logic and reset
• To indicate to the former I2C-bus master that it is not in control of the bus anymore
• 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).
– 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.
• Indicate to both I2C-bus upstream masters that a downstream interrupt has been
generated through the INT_IN pin.
• Functionality wiring test.
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).
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 downstream I2C-bus 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).
Remark: 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.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
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).
• setting the TESTON bit to ‘1’ to test its own INT line
• setting the NTESTON bit to ‘1’ to test the other master INT line
Setting the TESTON and/or NTESTON bits to ‘0’ by a master will clear the interrupt(s).
Remark: Interrupt outputs have an open-drain structure. Interrupt input does not have any
internal pull-up resistor and must not be left floating (that is, pulled HIGH to VDD through
resistor) in order to avoid any undesired interrupt conditions.
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.
Table 13. Register 2 - Interrupt Status register (B1:B0 = 10b) bit allocation
7 6 5 4 3 2 1 0
NMYTEST MYTEST 0 0 BUSLOST BUSOK BUSINIT INTIN
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Table 14. Register 2 - Interrupt Status (ISTAT) register bit description …continued
Legend: * default value
Bit Symbol Access Value[1] Description
2 BUSOK[4] R only 0* no interrupt generated by bus sensor function
1 interrupt generated by bus sensor function (masked when bus
recovery/initialization requested) - Bus was not idle when the switch occurred
1 BUSINIT[4] R only 0* no interrupt generated by the bus recovery/initialization function
1 interrupt generated by the bus recovery/initialization function;
recovery/initialization done
0 INTIN[2] R only 0* no interrupt on interrupt input (INT_IN)[5]
1 interrupt on interrupt input (INT_IN)[5]
[1] Default values are the same for PCA9541/01 and PCA9541/03.
[2] 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
[3] Interrupt on a master is cleared after TESTON bit is cleared by the same master or NTESTON bit is cleared by the other master.
[4] BUSINIT, BUSOK and BUSLOST bits in the Interrupt Status Register get cleared after a read of the same register is done. Precisely, the
register gets cleared on the second clock pulse during the read operation.
[5] If the interrupt condition remains on INT_IN after the read sequence, another interrupt will be generated (if the interrupt has not been
masked).
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
• I2C-bus upstream Channel 0 connected to the I2C-bus downstream channel for the
PCA9541/01
• no I2C-bus upstream channel connected to the I2C-bus downstream channel for the
PCA9541/03.
002aaa964
5.0
Vo(sw)
(V)
4.0
(1)
(2)
3.0
(3)
2.0
1.0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
(1) maximum
(2) typical
(3) minimum
Fig 8. Pass gate voltage as a function of supply voltage
Figure 8 shows the voltage characteristics of the pass gate transistors (note that the graph
was generated using the data specified in Section 12 “Static characteristics” of this data
sheet). In order for the PCA9541 to act as a voltage translator, the Vo(sw) 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 Vo(sw) should be equal to or
below 3.3 V to effectively clamp the downstream bus voltages. Looking at Figure 8, we
see that Vo(sw)(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 17).
6'$
6&/
GDWDOLQH FKDQJH
VWDEOH RIGDWD
GDWDYDOLG DOORZHG PED
6'$
6&/
6 3
67$57FRQGLWLRQ 6723FRQGLWLRQ
PED
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
SDA
SCL
SLAVE
002aaa966
9.4 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
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
data
Interrupt Enable (IE) data control register
slave address command code register register (CONTROL)
S 1 1 1 A3 A2 A1 A0 0 A 0 0 0 1 0 0 0 0 A A A P
Fig 13. Write to the Interrupt Enable and Control registers using the Auto-Increment (AI) bit
Remark: If a third data byte is sent, it will not be acknowledged by the PCA9541.
S 1 1 1 A3 A2 A1 A0 0 A 0 0 0 1 0 0 x x A Sr 1 1 1 A3 A2 A1 A0 1 A
A A A P
Remark: If a fourth data byte is read, the first register will be accessed.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
NXP Semiconductors
After the STOP condition
MASTER 1 is disconnected
SDA_MST0(1) from the downstream channel.
slave address command code register data Control register
S 1 1 1 A3 A2 A1 A0 0 A 0 0 0 AI 0 0 0 1 A 0 0 0 1 0 1 0 0 A P
INT1
All information provided in this document is subject to legal disclaimers.
SCL_SLAVE 1 2 3 4 5 6 7 8 9
(1) We assume that a read of the Control register was done by MASTER 0 before this sequence and that 000x 0101 was read (MASTER 1 controlling the bus).
PCA9541
Fig 15. Write to the Control register and switch from Channel 1 to Channel 0 (bus recovery/initialization requested)
22 of 42
NXP Semiconductors PCA9541
2-to-1 I2C-bus master selector with interrupt logic and reset
S 1 1 1 A3 A2 A1 A0 0 A 0 0 0 AI 0 0 0 1 A 0 0 0 0 0 1 0 0 A P
INT1
MASTER 1 has control of the bus MASTER 0 has control of the bus
(1) We assume that a read of the Control register was done by MASTER 0 before this sequence and that 000x 0101 was read
(MASTER 1 controlling the bus).
Fig 16. Write to the Control register and switch from Channel 1 to Channel 0 (bus recovery/initialization not
requested)
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
SLAVE CARD
3.3 V
VDD
VDD
MASTER 0
SCL0 SCL_MST0
SDA0 SDA_MST0
RESET0 PCA9541
SLAVE 2
INT0 INT0 INT_IN INT
VSS SDA SCL
SDA_SLAVE
SCL_SLAVE
INT1 INT1
VSS
A3
A2
A1
A0
VSS
002aab611
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
SCL0
MASTER 0
MASTER 1
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
SDA0
SCL1
SDA1
002aab612
I2C-bus 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.
For even higher reliability in multipoint backplane applications, two dedicated masters can
be used for every card as shown in Figure 19.
SCL0
PCA9541
MASTER 0
MASTER 1
SDA0
SCL1
SDA1
SCL0
PCA9541
MASTER 0
MASTER 1
SDA0
SCL1
SDA1
SCL0
PCA9541
MASTER 0
MASTER 1
SDA0
SCL1
SDA1
SCL0
PCA9541
MASTER 0
MASTER 1
SDA0
SCL1
SDA1
002aab613
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
ASSEMBLY A SDA/SCL
MASTER A
SLAVE A0
MAIN
MASTER
ASSEMBLY B SDA/SCL
MASTER B
SLAVE B0
002aab614
The alternative, shown with dashed lines, is to use a PCA9548 1-to-8 channel switch on
the master card and run 8 I2C-bus devices, 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 printed-circuit board if the PCA9541/03 is used.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
PCA9541
MASTER 0
A B C D E F G H
EEPROM
EEPROM
EEPROM
EEPROM
EEPROM
EEPROM
EEPROM
EEPROM
PCA9548
Z Z Z Z Z Z Z Z
002aab615
SDA/SCL
MASTER SLAVE 1
SDA
PCA9541/03 slave I2C-bus
SCL
SLAVE 0 SLAVE 2
RESET
002aab616
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
[1] 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 125 C.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
[1] Pass gate propagation delay is calculated from the 20 typical Ron and the 15 pF load capacitance.
[2] After this period, the first clock pulse is generated.
[3] 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.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
0.7 × VDD
SDA
0.3 × VDD
0.7 × VDD
SCL 0.3 × VDD
0.7 × VDD
SCL
0.3 × VDD
tBUF tf
tr
0.7 × VDD
SDA
0.3 × VDD
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
SCL
SDA
30 %
trst
RESET 50 % 50 % 50 %
tREC;STA
tw(rst)L
trst
INTn 50 %
002aae735
6.0 V
open
VSS
VDD RL
500 Ω
VI VO
PULSE
DUT
GENERATOR
RT CL
50 pF
002aab393
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
62SODVWLFVPDOORXWOLQHSDFNDJHOHDGVERG\ZLGWKPP 627
' ( $
;
F
\ +( Y 0 $
=
4
$
$
$
$
SLQLQGH[
ș
/S
/
H Z 0 GHWDLO;
ES
PP
VFDOH
',0(16,216LQFKGLPHQVLRQVDUHGHULYHGIURPWKHRULJLQDOPPGLPHQVLRQV
$
81,7 $ $ $ ES F ' ( H +( / /S 4 Y Z \ = ș
PD[
PP
R
R
LQFKHV
1RWH
3ODVWLFRUPHWDOSURWUXVLRQVRIPPLQFKPD[LPXPSHUVLGHDUHQRWLQFOXGHG
627 ( 06
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
76623SODVWLFWKLQVKULQNVPDOORXWOLQHSDFNDJHOHDGVERG\ZLGWKPP 627
' ( $
;
F
\ +( Y 0 $
=
4
$ $
$
$
SLQLQGH[
ș
/S
/
GHWDLO;
Z 0
H ES
PP
VFDOH
',0(16,216PPDUHWKHRULJLQDOGLPHQVLRQV
$
81,7 $ $ $ ES F ' ( H +( / /S 4 Y Z \ = ș
PD[
PP
R
R
1RWHV
3ODVWLFRUPHWDOSURWUXVLRQVRIPPPD[LPXPSHUVLGHDUHQRWLQFOXGHG
3ODVWLFLQWHUOHDGSURWUXVLRQVRIPPPD[LPXPSHUVLGHDUHQRWLQFOXGHG
627 02
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
+94)1SODVWLFWKHUPDOHQKDQFHGYHU\WKLQTXDGIODWSDFNDJHQROHDGV
WHUPLQDOVERG\[[PP 627
' % $
WHUPLQDO
LQGH[DUHD $
$
( F
GHWDLO;
H
&
H
H E Y 0 & $ % \ & \
Z 0 &
/
H
(K H
H
WHUPLQDO
LQGH[DUHD
'K ;
PP
VFDOH
',0(16,216PPDUHWKHRULJLQDOGLPHQVLRQV
$
81,7
PD[
$ E F ' 'K ( (K H H H / Y Z \ \
627 02
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
• Through-hole components
• Leaded or leadless SMDs, which are glued to the surface of the printed circuit board
Not all SMDs can be wave soldered. Packages with solder balls, and some leadless
packages which have solder lands underneath the body, cannot be wave soldered. Also,
leaded SMDs with leads having a pitch smaller than ~0.6 mm cannot be wave soldered,
due to an increased probability of bridging.
The reflow soldering process involves applying solder paste to a board, followed by
component placement and exposure to a temperature profile. Leaded packages,
packages with solder balls, and leadless packages are all reflow solderable.
• Board specifications, including the board finish, solder masks and vias
• Package footprints, including solder thieves and orientation
• The moisture sensitivity level of the packages
• Package placement
• Inspection and repair
• Lead-free soldering versus SnPb soldering
• Process issues, such as application of adhesive and flux, clinching of leads, board
transport, the solder wave parameters, and the time during which components are
exposed to the wave
• Solder bath specifications, including temperature and impurities
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
• Lead-free versus SnPb soldering; note that a lead-free reflow process usually leads to
higher minimum peak temperatures (see Figure 30) than a SnPb process, thus
reducing the process window
• Solder paste printing issues including smearing, release, and adjusting the process
window for a mix of large and small components on one board
• Reflow temperature profile; this profile includes preheat, reflow (in which the board is
heated to the peak temperature) and cooling down. It is imperative that the peak
temperature is high enough for the solder to make reliable solder joints (a solder paste
characteristic). In addition, the peak temperature must be low enough that the
packages and/or boards are not damaged. The peak temperature of the package
depends on package thickness and volume and is classified in accordance with
Table 18 and 19
Studies have shown that small packages reach higher temperatures during reflow
soldering, see Figure 30.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
peak
temperature
time
001aac844
17. Abbreviations
Table 20. Abbreviations
Acronym Description
AI Auto Increment
CDM Charged Device Model
DUT Device Under Test
EEPROM Electrically Erasable Programmable Read-Only Memory
ESD ElectroStatic Discharge
FRU Field Replaceable Unit
HBM Human Body Model
I2C-bus Inter Integrated Circuit bus
IC Integrated Circuit
MM Machine Model
POR Power-On Reset
RC Resistor-Capacitor network
SMBus System Management Bus
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
[1] Please consult the most recently issued document before initiating or completing a design.
[2] The term ‘short data sheet’ is explained in section “Definitions”.
[3] The product status of device(s) described in this document may have changed since this document was published and may differ in case of multiple devices. The latest product status
information is available on the Internet at URL http://www.nxp.com.
19.2 Definitions damage. NXP Semiconductors accepts no liability for inclusion and/or use of
NXP Semiconductors products in such equipment or applications and
therefore such inclusion and/or use is at the customer’s own risk.
Draft — The document is a draft version only. The content is still under
internal review and subject to formal approval, which may result in Applications — Applications that are described herein for any of these
modifications or additions. NXP Semiconductors does not give any products are for illustrative purposes only. NXP Semiconductors makes no
representations or warranties as to the accuracy or completeness of representation or warranty that such applications will be suitable for the
information included herein and shall have no liability for the consequences of specified use without further testing or modification.
use of such information. Limiting values — Stress above one or more limiting values (as defined in
Short data sheet — A short data sheet is an extract from a full data sheet the Absolute Maximum Ratings System of IEC 60134) may cause permanent
with the same product type number(s) and title. A short data sheet is intended damage to the device. Limiting values are stress ratings only and operation of
for quick reference only and should not be relied upon to contain detailed and the device at these or any other conditions above those given in the
full information. For detailed and full information see the relevant full data Characteristics sections of this document is not implied. Exposure to limiting
sheet, which is available on request via the local NXP Semiconductors sales values for extended periods may affect device reliability.
office. In case of any inconsistency or conflict with the short data sheet, the Terms and conditions of sale — NXP Semiconductors products are sold
full data sheet shall prevail. subject to the general terms and conditions of commercial sale, as published
at http://www.nxp.com/profile/terms, including those pertaining to warranty,
intellectual property rights infringement and limitation of liability, unless
19.3 Disclaimers explicitly otherwise agreed to in writing by NXP Semiconductors. In case of
any inconsistency or conflict between information in this document and such
General — Information in this document is believed to be accurate and terms and conditions, the latter will prevail.
reliable. However, NXP Semiconductors does not give any representations or
No offer to sell or license — Nothing in this document may be interpreted or
warranties, expressed or implied, as to the accuracy or completeness of such
construed as an offer to sell products that is open for acceptance or the grant,
information and shall have no liability for the consequences of use of such
conveyance or implication of any license under any copyrights, patents or
information.
other industrial or intellectual property rights.
Right to make changes — NXP Semiconductors reserves the right to make
Export control — This document as well as the item(s) described herein
changes to information published in this document, including without
may be subject to export control regulations. Export might require a prior
limitation specifications and product descriptions, at any time and without
authorization from national authorities.
notice. This document supersedes and replaces all information supplied prior
to the publication hereof.
Suitability for use — NXP Semiconductors products are not designed, 19.4 Trademarks
authorized or warranted to be suitable for use in medical, military, aircraft,
space or life support equipment, nor in applications where failure or Notice: All referenced brands, product names, service names and trademarks
malfunction of an NXP Semiconductors product can reasonably be expected are the property of their respective owners.
to result in personal injury, death or severe property or environmental I2C-bus — logo is a trademark of NXP B.V.
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
21. Contents
1 General description . . . . . . . . . . . . . . . . . . . . . . 1 16 Soldering of SMD packages . . . . . . . . . . . . . . 36
2 Features and benefits . . . . . . . . . . . . . . . . . . . . 2 16.1 Introduction to soldering. . . . . . . . . . . . . . . . . 36
3 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 16.2 Wave and reflow soldering. . . . . . . . . . . . . . . 36
16.3 Wave soldering . . . . . . . . . . . . . . . . . . . . . . . 36
4 Ordering information . . . . . . . . . . . . . . . . . . . . . 3
16.4 Reflow soldering . . . . . . . . . . . . . . . . . . . . . . 37
5 Marking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
17 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . 38
6 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . 4
18 Revision history . . . . . . . . . . . . . . . . . . . . . . . 39
7 Pinning information . . . . . . . . . . . . . . . . . . . . . . 5
19 Legal information . . . . . . . . . . . . . . . . . . . . . . 41
7.1 Pinning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
19.1 Data sheet status . . . . . . . . . . . . . . . . . . . . . . 41
7.2 Pin description . . . . . . . . . . . . . . . . . . . . . . . . . 6
19.2 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
8 Functional description . . . . . . . . . . . . . . . . . . . 7 19.3 Disclaimers . . . . . . . . . . . . . . . . . . . . . . . . . . 41
8.1 Device address . . . . . . . . . . . . . . . . . . . . . . . . . 7 19.4 Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . 41
8.2 Command Code . . . . . . . . . . . . . . . . . . . . . . . . 7
20 Contact information . . . . . . . . . . . . . . . . . . . . 41
8.3 Interrupt Enable and Control registers
description . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 21 Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
8.3.1 Register 0: Interrupt Enable (IE) register
(B1:B0 = 00b) . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.3.2 Register 1: Control Register (B1:B0 = 01b) . . 11
8.4 Interrupt Status registers. . . . . . . . . . . . . . . . . 15
8.4.1 Bus control lost interrupt . . . . . . . . . . . . . . . . . 15
8.4.2 Recovery/initialization interrupt. . . . . . . . . . . . 15
8.4.3 Downstream interrupt . . . . . . . . . . . . . . . . . . . 16
8.4.4 Functional test interrupt . . . . . . . . . . . . . . . . . 16
8.4.5 Register 2: Interrupt Status Register
(B1:B0 = 10b) . . . . . . . . . . . . . . . . . . . . . . . . . 16
8.5 Power-on reset . . . . . . . . . . . . . . . . . . . . . . . . 17
8.6 External reset . . . . . . . . . . . . . . . . . . . . . . . . . 18
8.7 Voltage translation . . . . . . . . . . . . . . . . . . . . . 18
9 Characteristics of the I2C-bus . . . . . . . . . . . . 19
9.1 Bit transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
9.2 START and STOP conditions . . . . . . . . . . . . . 19
9.3 System configuration . . . . . . . . . . . . . . . . . . . 20
9.4 Acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . 20
9.5 Bus transactions . . . . . . . . . . . . . . . . . . . . . . . 21
10 Application design-in information . . . . . . . . . 24
10.1 Specific applications . . . . . . . . . . . . . . . . . . . . 24
10.2 High reliability systems . . . . . . . . . . . . . . . . . . 25
10.3 Masters with shared resources. . . . . . . . . . . . 26
10.4 Gatekeeper multiplexer . . . . . . . . . . . . . . . . . 26
10.5 Bus initialization/recovery to initialize slaves
without hardware reset . . . . . . . . . . . . . . . . . . 27
11 Limiting values. . . . . . . . . . . . . . . . . . . . . . . . . 28
12 Static characteristics. . . . . . . . . . . . . . . . . . . . 28
13 Dynamic characteristics . . . . . . . . . . . . . . . . . 30
14 Test information . . . . . . . . . . . . . . . . . . . . . . . . 32
15 Package outline . . . . . . . . . . . . . . . . . . . . . . . . 33
Please be aware that important notices concerning this document and the product(s)
described herein, have been included in section ‘Legal information’.