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.

TCA9416: Power Savings Using Rise-Time Accelerator

Part Number: TCA9416
Other Parts Discussed in Thread: TCA9406, TCA9509, , TCA9800

Hello, I read some articles about how a rise-time accelerator can reduce power dissipation for 2-wire bus (e.g. I2C). However I couldn't find any real world performance numbers on how much energy is being saved by using a bus accelerator instead of e.g. 2.2 kOhm pull-up resistors (fast-mode). We are working on a wearable, which would have 4 devices on an I2C bus (work on 3.3V but some devices could also work on 1.8V if this was available), including a heart rate monitor and accelerometer, both of which will have ODR rate 100-400Hz. Thus we were looking into using a bus accelerator for energy reduction when reading the sensor data (since when the SDA/SCL is pulled LOW, the power is wasted 10kOhm (built-in accelerator pull-ups) / 2.2kOhm (pull-ups without accelerator) ~ 5 times). Do you have any calculations / tests showing how much energy would actually be saved using any of your accelerators? I noticed some of your provided options TCA9416, TCA9406, TCA9509 and it seems that TCA9416 is the latest/best one for energy constrained applications? We want to ensure lowest power consumption AND the PCB area possible, regardless of price, thus do you think rise-time accelerator would be a good fit for our scenario?

I would calculate these numbers myself, however the datasheet has quite many acronyms, thus makes it more difficult analysing it. Also I couldn't see but can I use a single side e.g. A with voltage VCCA=3.3V, while VCCB=0V, which would work as an accelerator ONLY (no voltage translation) and thus potentially less current would be drawn by the chip? What is the quiescent current (when voltage on SCL_A=VCCA and SDA_A=VCCA) and active current (when SDA_A/SCL_A are both pulled LOW)? 

Thank you for taking the time to help us out!

  • The amount of saved power depends on the total time the SDA/SCL lines are pulled low. So with an accelerator, you can either increase speed for the same pull-up current, or reduce pull-up current for the same speed.

    If the accelerator is idle most of the time, the increased idle current compared to pull-up resistors could make the situation worse. Do you have any estimates (bytes per second) on the I²C traffic?

    The most modern translator/buffer with rise-time accelerators is the TCA9800 family (four pull-up current choices). Connecting pins 1…5 to GND should leave only the current source.

  • Hi Clemens,
    Thanks for the quick reply. Currently we are considering rates in the order of 2KB/s to 4KB/s, which is 16Kbytes/s to 32Kbytes/s. On I2C fast-mode this should have utilisation of 4-8%. According to my calculations, using a 2.2kOhm resistor this would equate to 30uA to 60uA average current due to signal being pulled low on EACH line. This isn't that much, however we need to fit into 1mA total average current requirements for the whole system, which requires to optimise everything very well.. If instead 10kOhm resistors were used (built-in pull-ups within the rise-time accelerator) this value would drop to average current of 6.6uA on each line. Thus if the accelerator doesn't consume more average current than ~45uA, then I would consider it a worthwhile option?

  • One thing to mention, we were considering TCA9416 and TCA9406 due to their very small size ~1mm2. Out device will be in a form of a ring, thus space saving are very important.

  • EDIT: I fixed a calculation error at the end, total consumption saved is 64% not 36% compared to the initial values provided

    Hi Montvydas,

    I've tried to work through some numbers based on some assumptions you gave us. 

    Power savings fix.pdf

    I did take some additional assumptions and ignore the power involved in calculating rise time. This is tricky since voltage and current when caps discharge are not constant so the math would involve a convolution between a phase difference of voltage and current to get power. 

    I also assumed the power during the rise time trigger would actually be very low (double digit nanosecond turn on time) so I omitted that from the calculation. 

    Lastly, I calculated the power from one side of the TCA9416 but realized that the calculation still turns of the same if we assume the power should be 2x but the pull up resistor on the opposite TCA9416 side is 10k and Vcc were still 3.3V on this side. {I mean if we were to calculate power on both side A and side B of TCA9416 under the same conditions, then the power would have to be doubled but if we take the liberty of making say side B with only the internal pull up and side A connected to your host with an internal 10k for both host and TCA9416 then the calculation still holds}

    -Bobby

  • Hi Bobby,

    Thanks for the detailed analysis! That helped a lot :)


    Montvydas