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.

[参考译文] TLV320AIC3109-Q1:I2C SDA 卡在低电平状态

Guru**** 2439560 points
Other Parts Discussed in Thread: TAS6424E-Q1, TLV320AIC3109-Q1

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1375222/tlv320aic3109-q1-i2c-sda-stuck-in-low

器件型号:TLV320AIC3109-Q1
主题中讨论的其他器件:TAS6424E-Q1、、 TAS6424

工具与软件:

您好、TI 专家:

现在、我们在 AIC3109上遇到 I2C SDA 卡滞问题。 当问题发生时、 SDA 被拉至低电平。 (SCL 通常为高电平。) 在我们的系统中、 I2C 结构 是主器件(SoC)<->从器件1:TAS6424E-Q1 +从器件2:TLV320AIC3109-Q1 。 当我们尝试断开 AIC3109和系统之间的 SDA 时、系统的 SDA 恢复正常(高电压)。 AIC3109的 SDA 仍短接至 GND。 (通过 AIC3109本身拉至低电平。)  

Q1:根据下面的测量、如果 SoC 在 AIC3019的复位拉高之前开始向 TAS6424发送 I2C 寄存器、它会使 AIC3109的 I2C SDA 卡住吗? SoC 是否应该 在 AIC3109的复位处于拉高状态后开始发送 I2C?

(CB 表示 AIC3109、AMP 表示 TAS6424。 在 D3 AIC3109复位拉至高电平之前、I2C 开始在 D6、D7中进行传输。)

Q2:根据数据表"7.3.1硬件复位"、如果在所有电源稳定之前将 RESET 保持在低电平(下图中的测量值)、则将复位拉高、它是否满足7.3.1的要求?

Q3:AIC3109 SDA 以前是否曾从其他 TI 客户处听到过?

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    问题1:  

    I2C 总线应至少能够在低电平状态下驱动2mA、 在高电平状态下驱动20mA。

    这是被视为是 AIC3109器件高电平的电平。 该值也在 TAS6424E-Q1数据表的数字输入/输出下给出。

    也就是说、当 SDA 卡滞时、在引脚和 IOVDD 上测得的电压是多少。 电阻器的值是多少?

    问题2:

    正确

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Daveon:

    感谢您的及时回复。 我们发现 I2C 卡滞问题与 AIC3109复位引脚的上拉时序有关。 请帮助您在下面找到更多信息。

    图1:当 D3:AIC3109复位上拉至高电平时、D7:SDA 卡住、由 AIC3109导致。 (可能:大约200个周期将获得一次。)

    图2:放大为 AIC3109 RESET 上拉电阻。 RESET 上拉时序与 SoC 向 AMP IC 发送的 I2C 寄存器完全重叠。 然后、SDA 由 AIC3109拉至低电平。 I2C SDA 卡滞。

    图3:在将 RESET 时序调优为不与 I2C 重叠后、2200周期测试后已不再出现 SDA 卡滞问题。

    Q1:如果复位时序与 I2C 总线重叠、为什么 AIC3109可能会使 SDA 卡住?

    问题2:TI 能否在您这边重现相同的故障模式?

    Q3:如果 TI 能够重现此问题、TI 是否计划更新数据表中的序列要求?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jheng:

    很高兴您的问题得到解决。  

    此外、第7.2节方框图中显示了 RESET 引脚驱动 i2c 控制总线。 7.3中还规定、在上电时必须将复位拉至低电平10ns、并且在该序列之后可以正确进行读取和写入。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Daveon:

    感谢您的答复。

    首先、在我前面有关7.3.1的问题中、复位时序符合数据表要求。

    第二、在我们的测量中、I2C 寄存器的地址重叠到复位、 属于 TAS6424 (0xD4)、但 不会 AIC3109 (0x18)。

    请让我来澄清一下我的问题:AIC3109的复位上拉时序是否也需要避免 不限  即使未将 I2C 数据传输发送至 AIC3109?

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    遗憾的是、在复位期间从主器件切换 SDA 会影响读取/写入能力。 如果在序列中没有重叠、到 其它器件的 I2C 传输应该不影响 AIC3109。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Daveon:

    明白了。  您能帮忙提供如下图所示的 AIC3109复位和 I2C 传输间的时序标准吗? 谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jheng:  

    10ms 是复位切换和 i2c 数据传输之间足够的时间来避免任何错误。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Daveon:

    感谢您的答复。 根据数据表修订版 答、这个时序要求似乎未在数据表中列出、这意味着  我们不知道在满足此问题之前应该被遵守、并在我们的项目中请求 TI 的帮助。 请在下面帮助找到我的问题,谢谢。

    Q1:TI 是否计划在下一个修订版数据表中更新此时序要求?

    问题2:在使用此编解码器时、是否有任何其他类似此类隐藏条件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jheng:

    遗憾的是、由于器件已过时、我们仅限于现有的数据表和配套资料、数据表未来将不再进行修订。 I2C 协议是标准协议、而 i2c 写入和之间的时序是器件所独有的。 该数据表指示在 I2C 写入之前将复位拉至10ns 下拉。