This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

I2C problem with multiple TXS0108 on the same bus

Other Parts Discussed in Thread: TXS0108E, TCA9517

Hi,

We're using TXS0108ERGYR as buffers for the bi-directional signals.

On our interface board, some GPIO and I2C lines are connected from FPGA to the A-port of TXS0108 and signals from B-port of TXS0108 are connected to VPX connector. Voltage levels are 3V3 on both ports. OE is kept low at powerup and driven high after powerup.

On the system, we have multiple slots and if there are more than interface board with TXS0108, we can't communicate through I2C. However, if a single interface board is used with a different board (power board, for example), we can communicate.

Can multiple TXS0108 ICs be connected on the same bus, is there a limitation?

Is the problem related with the internal pull-up values, or the line capacitance?

  • bildeircin,

    I think there can be a potential issue with achieving the proper VOL level.

    Section 8.3.1. of the datasheet describes the TXS0108E architecture. Note the pass gate transistor and R1 and R2. When the input is driven low (VIL), the output voltage equals the input voltage PLUS the voltage drop across R1, the R_on of the pass gate transistor, and R2:

    VOL = VIL + (R1 + R_Npass + R2)*(Current thorugh this path).

    If we lump R1, R_Npass, and R2 as a single series resistor, then cascading multiple TXS0108E devices is effectively connecting a bunch of series resistors. So the VOL after each device will get progressively larger and larger, to the point where the VOL of one TXS0108E is not within the VIL spec of the next TXS0108E that it connects to.

    If possible, force VIL on the first TXS0108E (DC votage, no AC) and then measure the output voltage after each TXS0108E. Does it get larger after each device?

    Best Regards,
    Nirav

  • Hello Nirav,

    After your comments, I checked the Electrical Specifications and in 6.3 Recommended Operating Conditions maximum VIL is given as 0.15V whereas in 6.5 Electrical Characteristics, maximum VOL is given as 0.55V. Therefore, should I understand that second TXS0108E may  not see the signal level as low?

    Typical values of R1 and R2 are given as 150 ohms in A Guide to Voltage Translation With TXS-Type Translators  and the value of N-channel pass-gate transistor is given as 300 ohms to 500 ohms in 8.3.1 Architecture of datasheet. Therefore we're talking about a resistance of 600 to 800 ohms. In order not to exceed max VIL of 0.15V, the maximum current will be 187.5uA to 250uA (for 800 ohms and 600 ohms respectively). So, even with two TXS0108E cascaded, if the current exceeds these values, logic low may not be sensed by the second TXS0108E

    When two TXS0108Es are cascaded and the first is driven low, the circuit simply becomes as shown and the voltage at the input of the second TXS0108E becomes 0.186V which is larger than the max VIL. Of course this is a simplified circuit (after fast transition period) but after your comments this is what I guess is happening. Please correct me if there are mistakes in my assumptions.

  • bildircin,

    bildircin bil said:

    After your comments, I checked the Electrical Specifications and in 6.3 Recommended Operating Conditions maximum VIL is given as 0.15V whereas in 6.5 Electrical Characteristics, maximum VOL is given as 0.55V. Therefore, should I understand that second TXS0108E may  not see the signal level as low?

    Yes, if the first TXS0108E transmits a VOL of 0.55V, then we can't guarantee that the second TXS0108E will identify that 0.55V as low.

    I went to the lab today and did a quick spot check of TXS0108E VOL vs. VIL. The table below illustrates that keeping VIL very low will keep VOL very low. I do not know how realistic it is for you to keep VIL very low in your application.

    Input Pin connected to Keithley 2400 Sourcemeter
    Output Pin connected to hand held multimeter with 1MΩ termination to GND
    Temp [°C] VCCA [V] VCCB [V] Input Voltage [mV] Input Current [mA] Output Voltage [mV]
    25 3.3 3.3 0 -0.160 25
    25 3.3 3.3 10 -0.160 34
    25 3.3 3.3 20 -0.159 44
    25 3.3 3.3 30 -0.159 54
    25 3.3 3.3 40 -0.158 64
    25 3.3 3.3 50 -0.158 74
    25 3.3 3.3 60 -0.158 84
    25 3.3 3.3 70 -0.157 94
    25 3.3 3.3 80 -0.157 104
    25 3.3 3.3 90 -0.156 114
    25 3.3 3.3 100 -0.156 124
    25 3.3 3.3 110 -0.155 134
    25 3.3 3.3 120 -0.155 144
    25 3.3 3.3 130 -0.154 154
    25 3.3 3.3 140 -0.154 164
    25 3.3 3.3 150 -0.153 174
    25 3.3 3.3 160 -0.153 184
    25 3.3 3.3 170 -0.152 193
    25 3.3 3.3 180 -0.152 203
    25 3.3 3.3 190 -0.151 213
    25 3.3 3.3 200 -0.151 223
    25 3.3 3.3 210 -0.150 233
    25 3.3 3.3 220 -0.150 243
    25 3.3 3.3 230 -0.150 253
    25 3.3 3.3 240 -0.149 263
    25 3.3 3.3 250 -0.149 273
    25 3.3 3.3 260 -0.148 283
    25 3.3 3.3 270 -0.148 293
    25 3.3 3.3 280 -0.147 303
    25 3.3 3.3 290 -0.147 313
    25 3.3 3.3 300 -0.146 323

    bildircin bil said:

    Typical values of R1 and R2 are given as 150 ohms in A Guide to Voltage Translation With TXS-Type Translators  and the value of N-channel pass-gate transistor is given as 300 ohms to 500 ohms in 8.3.1 Architecture of datasheet. Therefore we're talking about a resistance of 600 to 800 ohms. In order not to exceed max VIL of 0.15V, the maximum current will be 187.5uA to 250uA (for 800 ohms and 600 ohms respectively). So, even with two TXS0108E cascaded, if the current exceeds these values, logic low may not be sensed by the second TXS0108E

    Yes. Limiting the current draw when driving a low is what matters. I don't think there is much that can be done about this. The current draw is coming from the 40k pullups from each cascaded TXS0108E. I think the only thing you can control is the input voltage on the first TXS0108E.

    bildircin bil said:

    When two TXS0108Es are cascaded and the first is driven low, the circuit simply becomes as shown and the voltage at the input of the second TXS0108E becomes 0.186V which is larger than the max VIL. Of course this is a simplified circuit (after fast transition period) but after your comments this is what I guess is happening. Please correct me if there are mistakes in my assumptions.

    Your schematic looks correct. I got 138 mV instead of 186 mV though.

    I went in the lab and tried a pseudo-cascade setup using one TXS0108E:

    V_IN --> TXS0108E A1 --> TXS0108E B1 --> TXS0108E A2 --> TXS0108E B2 --> V_OUT

    It looks like the only option at this point is to reduce the VIL.

    Temp [°C] VCCA [V] VCCB [V] Input Voltage [mV] Input Current [mA] Output Voltage [mV]
    25 3.3 3.3 0 -0.315 96
    25 3.3 3.3 10 -0.314 106
    25 3.3 3.3 20 -0.313 116
    25 3.3 3.3 30 -0.313 125
    25 3.3 3.3 40 -0.312 135
    25 3.3 3.3 50 -0.311 145
    25 3.3 3.3 60 -0.310 155
    25 3.3 3.3 70 -0.309 164
    25 3.3 3.3 80 -0.308 174
    25 3.3 3.3 90 -0.307 184
    25 3.3 3.3 100 -0.306 194
    25 3.3 3.3 110 -0.305 203
    25 3.3 3.3 120 -0.304 213
    25 3.3 3.3 130 -0.303 223
    25 3.3 3.3 140 -0.302 233
    25 3.3 3.3 150 -0.301 242
    25 3.3 3.3 160 -0.300 252
    25 3.3 3.3 170 -0.300 262
    25 3.3 3.3 180 -0.299 272
    25 3.3 3.3 190 -0.298 281
    25 3.3 3.3 200 -0.297 291
    25 3.3 3.3 210 -0.296 301
    25 3.3 3.3 220 -0.295 310
    25 3.3 3.3 230 -0.294 320
    25 3.3 3.3 240 -0.293 330
    25 3.3 3.3 250 -0.292 340
    25 3.3 3.3 260 -0.291 349
    25 3.3 3.3 270 -0.290 359
    25 3.3 3.3 280 -0.289 369
    25 3.3 3.3 290 -0.288 379
    25 3.3 3.3 300 -0.287 388

    Best Regards,
    Nirav

  • Hi Nirav,

    First of all, thank you for the quick response and extensive lab testing.

    As I see on the second table, a maximum of 96mV is measured on the serial resistance between A and B port.

    Of course this value may differ between individual ICs and resistance between two cascaded ICs may increase due to soldering, routing and connections, which, in the end, will cause an increase in the input voltage of the second IC. Clearly, there's a risk of exceeding the maximum VIL (0.15V) of the second IC. We'll try to find an alternative IC for future applications.

    Thanks again...

  • bildircin,

    You'e very welcome. I believe the information that you and I contributed to thread will be meaningful to others as well!

    For you application, can I suggest the TCA9517? I spoke with the applications engineer for I2C and was informed that its VOL is buffered low and permits cascaded connections.

    Port B of the TCA9517s can't be connected together, so your connection would need to look like this:

    (A) TCA9517 (B) ------- (A) TCA9517 (B) --------- (A) TCA9517 (B) ---- etc
    More details about cascaded connection are available at the end of Section 10.2 in the datasheet (Typical Application).
    Best Regards,
    Nirav