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.

TCA9546APWR

Other Parts Discussed in Thread: TCA9546A, SN74LV4052A, TMUX1309, TMUX1574, SN74CBT3257C, SN74CBTLV3257, TMUX1121, TMUX1122, TMUX1112, TMUX1111, TCA9548A

Hello,

I have two bus masters and one slave device so I need a demux to allow either of them to talk to the slave. I can either use 4 such parts or if you have a dual or quad I can lower the IC count. I would also like to connect one of the bus masters to TCA9546APWR and one of the outputs of that to the demux and then to slave

Bus master --> TCA9546APWR --> 2 : 1 demux --> I2C Slave

Can you suggest a part?

Thanks,

Divakar

  • I am showing a block diagram

  • I assume all slaves have the same I²C address?

    If you do not need level shifting and have some GPIOs, then you can replace the TCA9546A with any 4:1 switches for two channels, such as the TMUX1309 or SN74LV4052A.

    If the software on both processors is multi-master capable, then you do not need any 2:1 switches. But if you need to disconnect processor 1 while processor 2 is active, then combine the TCA9546A, TMUX1309, or SN74LV4052A with two 4-channel 2:1 switches like the SN74CBT3257C, TMUX1574, or SN74CBTLV3257 (depending on the supply voltage).

  • Divakar,

    I support Clemens's suggestions above, though I will supplement with a suggestion to use the TMUX devices over the respective SN74 devices. Specifically, TMUX1309 over SN74LV4052A and use the TMUX1574 over SN74CBT3257C and SN74CBTLV3257.

    The TMUX series is the newer series of our multiplexer devices, and they offer lower price, along with generally increased performance, range, and bandwidth.

    Best,

    Danny

  • Thank you,

    Yes all slaves have the same I2C address. No level shifting needed and the voltage is 3.3V

    There seems to be no availability of TMUX parts. If that is the case is it okay to use the SN74 parts? Are either of these families fine for I2C lines?

    Thanks,

    Divakar

  • Also,

    since I have 4 I2C buses needing individual conrol, do you have dual SPST in one package or if it has 4 SPST switches, can I control 2 individually? I would not like to control 4 lanes as I only need one for SDA and one for SCL.

  • For processor 2, I can use TCA9546A and individually access on slave at a time since I have only 1 bus from the processor. However, for processor 1 I have 4 buses so I need 4 individual control to turn ON or off.

  • Divakar,

    There seems to be no availability of TMUX parts. If that is the case is it okay to use the SN74 parts? Are either of these families fine for I2C lines?

    You are welcome to use the SN74 parts if you prefer. Just note that the SN74CBT3257C is for 5 V operation. The appropriate part depends on the time frame of your project. The stocking of the TMUX parts is a factor of both popularity and global supply chain impacts that are currently in play. If these are needed in the near term then you would be fine to use the SN74 devices instead.

    since I have 4 I2C buses needing individual conrol, do you have dual SPST in one package or if it has 4 SPST switches, can I control 2 individually? I would not like to control 4 lanes as I only need one for SDA and one for SCL.

    To be clear, the TMUX1309 is a two-channel 4:1 mux, so you would be able to take your SDA/SCL lines and redirect them to one of four pairs of outputs. Based on my understanding, this should fit your need. But of course we do have two-channel SPST switches available if you prefer this (or if I misunderstand your request). Look at TMUX1122 and TMUX1121 and see if they fit what you'd like.

    For processor 2, I can use TCA9546A and individually access on slave at a time since I have only 1 bus from the processor. However, for processor 1 I have 4 buses so I need 4 individual control to turn ON or off.

    The devices above should be able to help with this. In general, note that the big application-related difference between implementing a multiplexer (i.e. TMUX or SN74CBT device) and implementing a I2C switch/mux (i.e. TCA device) is that the TCA series of devices are controlled via the I2C bus itself. That is, the switch itself is also controlled via the I2C bus it is controlling. On the contrary, the traditional TMUX-like devices are controlled via an external logic pin (or logic pins), requiring an extra GPIO.

    Best,

    Danny

  • Thank you,

    your understanding was correct. But my processor 2 connects also to TCA9546APWR to fan out to other devices. Since TMUX1309 is not available and because TMUX1122 or 1121 are available, I can use 4 x TMUX1122/1121 to processor 1. I can add another TCA9546APWR for processor 2 and the outputs of TMUX will tie to outputs of TCA9546APWR. 

    I would still need a pull up on the other side of TMUX1122 right? I know TCA9546APWR needs it. 

  • Also, am I allowed to cascade TCA9546APWR? One of my TCA9546APWR outputs isn't used. can I tie it to another TCA9546APWR and then feed it to the slaves?

  • Divakar,

    Also, am I allowed to cascade TCA9546APWR?

    With careful design this could be permissible, but please see my below question.

    I would still need a pull up on the other side of TMUX1122 right?
    One of my TCA9546APWR outputs isn't used. can I tie it to another TCA9546APWR and then feed it to the slaves?

    Would you be able to provide a rough block diagram or drawing of the design you are considering now? I want to make sure I'm on the same page before putting forward "yes/no" answers regarding feasibility.

    Best,

    Danny

  • Please see below.

    I am not cascading TCA9546AWR

  • Divakar,

    Thank you for this - it greatly helps visualization.

    Regarding the use of the TMUX1121/TMUX1122, you could consider consolidating these four blocks into two TMUX1111 or TMUX1112 four-channel SPST devices. It would reduce IC count and cost. Also, for the two TCA9546A devices, you could instead consider using one 8-channel TCA9548A.

    To address pull-up resistor placement, as you mentioned, you would need pull-up resistors on both sides of the TCA9546A devices. Whether pull-up resistors are needed between Processor 1 and the TMUX devices is dependent upon the activity of the I2C BUS 1 (and 2, 3, 4) when the TMUX switch is open. If communication and activity is totally ignored, then pull-up resistors might not be needed, though you should pay close attention to the possibility of shoot-through current across the input stages of the SDA/SCL pins of Processor 1 when floating. If these buses are used for communication to other devices or are otherwise used while the TMUX gate is open, then you would need pull-up resistance here as well.

    When designing with a network like this, it is important to consider the fact that pull-up resistors are in parallel with each other when on the same bus. However, it sounds to me like there is not a situation in design where both Processor 1 and Processor 2 are connected to the same I2C bus, so this might be a moot concern.

    Best,

    Danny

  • Thanks,

    I just sent you my schematics in private for review.

  • Divakar,

    Thanks. For now we can continue our discussion there.

    Best,

    Danny