NXP Semiconductors
PCA9508
Hot swappable level translating I2C-bus repeater
HIGH long enough to complete the initialization state (ten) and remaining HIGH when all
the SDA and SCL pins have been HIGH for the bus idle time or when all pins are HIGH
and a STOP condition is seen on the SDAA and SCLA pins, SDAA is connected to SDAB
and SCLA is connected to SCLB.
6.1 A side to B side
Once connected, when the PCA9508 senses a LOW level on the A side (below
0.5VCC(A)), it turns on the corresponding B side driver (either SDA or SCL) and drives the
B side down to about 0.5 V. When the external driver turns off, the A side will begin to rise
as it is pulled HIGH by the bus pull-up resistor. When the A side reaches 0.5VCC(A), the
B side driver turns off and both A and B will continue to rise. The result is two smooth
exponential rising edges on both buses with a propagation delay between them which is a
function of the RC time constant on the A side bus.
6.2 B side to A side
When a LOW level is sensed on the B side (below 0.4 V), the corresponding A side driver
is turned on to drive the A side to nearly 0 V. When the external driver turns off, the B side
will begin to rise as it is pulled HIGH by the bus pull-up resistor. When the B side reaches
0.5 V, the A side driver will turn off. The B side driver will remain at about 0.5 V until the
A side rises above 0.5VCC(A), then the B side will continue to rise. The result is a plateau
on the B side rising edge. See Figure 11.
6.3 Weak drive on B side
The following condition should be avoided as it causes the PCA9508 to create a glitch on
the bus. As long as I2C-bus devices connected to the B side can pull the bus lines lower
than 0.4 V, this problem will never occur. When the B side falls first and goes below
0.3VCC(B), the A side driver is turned on and the A side is pulled down to 0 V. The B side
pull-down is switched on and unless the B side is pulled below 0.4 V by an external driver,
the A side pull-down will switch off and the A side will be pulled up by the pull-up resistor.
When the A side rises above 0.5VCC(A), the B side pull-down will turn off. To prevent this
glitch, it is necessary to make certain that the B side LOW level driven by an external
driver is below 0.4 V.
6.4 Enable pin (EN)
The EN pin is active HIGH with an internal pull-up to VCC(B) and allows the user to select
when the repeater is active. This can be used to isolate a badly behaved slave on
power-up until after the system power-up reset. It should never change state during an
I2C-bus operation because disabling during a bus operation will hang the bus.
The EN pin should only change state when the global bus and the repeater port are in an
idle state to prevent system failures.
If the PCA9508 is enabled while the bus is active, the PCA9508 will connect at the first
STOP signal or at the first gap in activity that satisfies the internal idle bus time after the
enable sequence is complete.
PCA9508_1
Product data sheet
Rev. 01 — 28 April 2008
© NXP B.V. 2008. All rights reserved.
5 of 21