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.

TMP108: I2C timing specification

Part Number: TMP108

Dear TI team,

on table 12 of TMP108 data sheet, there is no timing definistion for tR(Min) and tF(Min) of SCL and SDA in Fast-mode.

When I2C master defines that timing specification based on NXP I2C spec(UM10204), I think TMP108 should also defince that tR(min) and tF(min),

because tR and tF spec does not meet Master I2C spec when TMP108 ouputs data or ack to master. 

If TI agrees with my question, could you provide the updated table 12 which added tR(min) and tF(min) timingu spec, please?

If TI does not update, please let me know the reason why tR(min)and tF(min) spec is not neccesary on table 12.

BR,

Kasaoka

  • Hi Kasaoka-San

    Thank you for your question.

    There is no defined minimum TR or TF for the TMP108, and most of our I2C temperature sensors are specified in this way. If you want to assume the minimum listed in the I2C specification you can, but the TMP108 will communicate correctly provided the other timing specifications listed in table 12 are met. 

    Keep in mind that if the rise and fall times are decreased arbitrarily, you will likely see an increase in under/overshoot. Care should be taken to ensure that you do not exceed the recommended operating voltages of the device. 

    Best Regards,
    Brandon Fisher

  • Hi Brandon san,

    thank you for your quick reply,

    let me clarify again for the meaning of my original question.

    below is SCL and SDA timing spec for master and TMP108,

    I2C master spec: tR(min)=20 ns,  tF(min)=20xVdd/5.5, tR and tF(max)=300ns

    TMP108 spec: tR(min)=n/a, tF(min)=n/a, tR and tF(max)=300ns


    <SCL is always from I2C master to TMP108>

    I understand TMP108 can gurantee to communicate with the I2C master in SCL tR and tF timing spec, because the I2C master spec(20ns < tR and tF < 300ns) is within TMP108 spec(tR and tF < 300ns).

    <SDA is from TMP108 to I2C master when master reading>

    when I2C master reads TMP108 data, I think TMP108 SDA fR and tF timing spec is not meet I2C master tR and tF spec, because TMP108 spec(tR and tF < 300ns) is over the I2C master spec(20ns < tR and tF < 300ns) .

    Can TMP108 gurantee to communicate with the I2C master with above tR and tF spec ?

    BR,

    Kasaoka 

  • Hi Kasaoka-san,

    This timing should work provided the pull-up values are reasonable. The TR value is going to be entirely dependent on just your pull-up value and the bus capacitance. Please see the below equation from I2C Bus Pullup Resistor Calculation.

    This is because the TMP108 will just release the bus (stop pulling down) when transitioning from low state to high state. 

    In terms of fall time, the IOL of the TMP108 is around 3mA, which is not particularly strong. In order to violate the minimum rise and fall time of the I2C specification you would need to see a fall time between 6.5 and 12 nSec ( for 1.8V to 3.3V operation). This would only be possible if your bus capacitance were very low and you used a strong pullup value. 

    Best Regards,
    Brandon Fisher

  • Hi Brandon san,

    thanks for your detail explanation,

    actually, I'd like to know the I2C timing of attahced Master MCU accepts the TMP108 I2C timing, or not in the SDA tF and tR timing point of view when Master reads Slave data,

    because the TMP108 tR and tF minimum timing is NOT defined. I think no minimumm spec means TMP108 might have 0ns tR or tF timing.

    regards,

    Kasaoka

  • Hi Kasaoka-San,

    Yes, the TMP108 will communicate with this master, based on the timings in this table. It will communicate with any master that meets I2C spec.

    The lack of a minimum specification on fall time for the TMP108 is meant just to reflect that the TMP108 can tolerate fall times faster than the I2C spec. 

    Best Regards,
    Brandon Fisher