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.

[参考译文] TCA4307:在 I2C 热插拔应用中使用交错式连接器时的解决方案。

Guru**** 1155080 points
Other Parts Discussed in Thread: TCA4307, TCA9617B, TCA9511A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1323695/tca4307-solution-if-i-can-t-use-staggered-connector-in-i2c-hot-swap-application

器件型号:TCA4307
主题中讨论的其他器件: TCA9617BTCA9511A

愿你们都平安,

我想使用 I2C 缓冲器"TCA4307"来利用其热插入和上升时间加速特性。 尽管数据表和文档中提供了完善的信息、但我仍然有以下问题:

-什么是正确的牵引电阻器(Rp),可以在3.3 DC 和1 MHz I2C 速度下提供120 ns 的上升时间? 从数据表的曲线图8-4可以看出、Rp 在20ns 的上升时间内为1千欧、因此我认为我所使用的值可以超过 FM+要求。


-如果我无法实现交错连接器来确保 GND -> VCC -> SDAIN、SCLIN 的顺序连接,那么我们可以放一个电容器和电阻(例如: 47千欧、0.1 μ F)、位于"TCA4307"的"EN"引脚上、以确保芯片在 VCC 被连接并且稳定前不会连接 I2C 总线(输入和输出)?

谢谢。


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

    尊敬的 Mohammad:


    -什么是正确的牵引电阻器(Rp),可以在3.3 DC 和1 MHz I2C 速度下提供120 ns 的上升时间? 从数据表中的曲线图8-4可以看出、Rp 在20ns 的上升时间内为1千欧、因此我认为我可以使用超过 FM+要求的相同值。

    这可以通过执行 此处应用手册中的计算来确定。 本应用手册假设上拉电阻器是上升沿转换中的唯一元件。 TCA4307添加来自上升时间加速器(RTA)的上拉电流、此加速器在 Vsda/SCL = 0.6V 和 VCC = 3.3V 时提供一个典型的上拉电流5mA。  

    如果在不考虑 RTA 的情况下进行上拉计算、那么通过设计可确保您遵循应用手册中的计算而不考虑 RTA、那么您将达到 FM+ I2C 速度标准。

    -如果我无法实施交错式连接器来确保 GND -> VCC -> SDAIN、SCLIN 的顺序连接、那么我们可以放置电容器和电阻(例如: 47千欧、0.1 μ F)、位于"TCA4307"的"EN"引脚上、以确保芯片在连接 VCC 并稳定前不会连接 I2C 总线(输入和输出)?

    GND 连接首先对于热插拔系统至关重要、并且应该是最后一次断开(根据设计)。 将不会有相同的影响。 如果 SDA/SCL 线路先连接、交错连接很有用、这有助于防止它们发生任何潜在的反偏置。 反向偏置可能以这种方式损坏周围的电路。  

    如需了解更多相关信息、请参阅有关 I2C 热插拔应用的应用手册

    此致、

    泰勒

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

    您好、Tyler:

    感谢您的答复和解释。

    对于 Rp 问题、我根据您提到的应用手册中的信息计算了 Rp、可以看出它是一个小电阻器。 我想利用 TCA4307的上升时间加速器、但我找不到应用手册中存在的类似公式。 TCA4307的数据表只提供了表明 Rp = 1Kohm 适合高达20ns 的上升时间的曲线。 尽管20ns 超过了我打算使用的 FM+ 1MHz、但我想我别无选择、只能使用它、因为没有其他公式来计算1MHz 上升时间的准确 Rp。

    总之、我可以将1Kohm 与 TCA4307一起用于 FM+ 1MHz 速度、没有问题。

    对于交错连接器点...感谢您解释"反偏置"点。 我现在理解了、因此必须找到交错连接器。 问题是、我使用的是现成的连接器(不是 PCB 边缘连接器)、它不能用于热插拔应用。 如果制造商有解决方案、我会尽量联系他们。

    此致、

    Mohammad。

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

    不保证 TCA4307支持任何高于400kHz 的速度、无论您使用什么电阻器。

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

    您好、Clemens:

    我注意到没有其他缓冲器支持 FM+、而且 TCA4307数据表中的曲线指出了20ns 的上升时间、并提到400KHZ 为"最低速度"、所以我认为 TCA4307在 FM+中工作、否则他们应该为更高的速度开发新的 IC!

    我希望有更多关于 TCA4307内部的详细信息、以便了解它是如何工作的、以及指定的上升时间和 Rp 之间的关系是什么? 是受外部 Rp 影响以产生充电电流的内部电流源、或者仅当达到更快的0.6V 电压时、总上升时间更短。 此外、我想知道在400kHz 时具有20ns 的上升时间有什么优势?

    如果我在1MHz 下测试了 TCA4307、它能正常工作、那么我可以在项目中安全使用它吗、否则其他芯片可能不能正常工作?

    此致、

    Mohammad。

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

    TCA4307数据表中的曲线复制自其他地方。 (脚注2在哪里?) 对于快速模式总线而言、20ns 的上升时间是没有意义的。

    第6.5节中的值是最大时钟频率。 400kHz 的值位于"最小值"列中、因为此值在所有情况下都能保证适用于所有器件。 有些芯片、在某些温度下、可能会升高、但却无法保证。

    没有具有您需要的所有功能的 FM+解决方案。

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

    Mohammad、

    很抱歉误解。 TCA4307只能保证在400kHz 频率下工作、而 Clemen 在这里是正确的。  

    1 MHz 的数据表无法保证器件的电气特性。 TCA4307上的 FM+操作可能按预期工作、也可能不按预期工作。  

    我们唯一的快速模式缓冲器是 TCA9617B。 它不具有热插拔功能、总线阻塞检测和预充电等功能。 它是一种在 B 侧具有静态电压偏移的标准 I2C 缓冲器、但以1 MHz 为特征。  

    1MHz 热插拔可通过 TCA9617B +多路复用器+校准 IO 扩展器以分立方式完成。 请参阅热插拔的分立式热插入实现应用手册中的图3-1。

    [报价 userid="567454" url="~/support/interface-group/interface/f/interface-forum/1323695/tca4307-solution-if-i-can-t-use-staggered-connector-in-i2c-hot-swap-application/5037210 #5037210"]我希望有更多关于 TCA4307内部的详细信息以了解它是如何工作的以及指定上升时间与 Rp 之间的关系? 是受外部 Rp 影响以产生充电电流的内部电流源、或者仅当达到更快的0.6V 电压时、总上升时间更短。 此外、我想知道在400kHz 时具有20ns 的上升时间有什么优势?

    RTA 类似于在从低逻辑周期向高逻辑周期转换期间开启的 FET。 它实际上看起来像一个上拉电阻器。

    从数据表中、如果 VCC = 3.3V、典型 IPU = 5mA、并且 VSDA/SCL = 0.6V、我们可以计算该 RTA 的"Rpull-up "强度。  

    R =(3.3V - 0.6V)/ 5mA = 540欧姆

    RTA 的上拉强度看起来像一个540欧姆的上拉电阻。 从外部并行添加的任何元件都会使总上拉电阻更小(上拉电阻更强)。  

    RTA 在0.6V 以及压摆率至少为1.25V/us 时触发。 在针对此器件的基准测试中、由于内置有在上升沿辅助的 RTA、我能够在两侧使用20k Ω 上拉电阻器轻松运行 TCA4307。  

    此致、

    泰勒

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

    感谢克莱门斯纠正我的理解。 我认为数据表曲线实际上是不正确的。

    非常感谢 Tyler 的解释。 因此、它是一个通过电流源(范围为2至5 mA)进行正常充电的电容器、超过了从4 mA 充电电流开始的快速模式要求(400kHz、400pf)。

    您说过您使用20k Ω 上拉电阻器测试了 TCA4307、因此我知道它在400kHz 下工作正常、但您没有在1MHz 等更高速度上测试。

    我不知道使用1MHz 速度进行测试是否适用。 使用3至5 mA 电流源时、它应该在1MHz、最高200pf 的负载电容下工作。

    此致、

    Mohammad。

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

    Mohammad、

    i2c 标准规定:

    更像是根据电压阈值和压摆率打开和关闭的定时 FET 电路。  

    您说过您使用20k Ω 上拉电阻器测试了 TCA4307,因此我了解它在400kHz 下运行良好,但您没有在1MHz 等更高速度上进行测试。

    从数据表的角度来看、器件仅适用于标准模式和快速模式。 建议速度为0kHz 至400kHz。 任何更高的速度都超出了数据表特性。 虽然器件的工作速度可能比数据表中保证的速度快、但未在大于400kHz 的频率下对该器件进行测试。  

    我不知道是否适用于您以1 MHz 速度进行测试。 使用3到5 mA 电流源时、它应该在1MHz、最高200pf 的负载电容下工作。[/报价]

    该器件的特点是仅支持400kHz 的频率。 这是一个真正的 I2C 热插拔缓冲器,可以将 i2c 的两个段分开,输入端驱动400pF,输出端驱动400pF 负载电容,总共800 pF -->即缓冲器通过重新驱动总线将 i2c 总线分成多个段。  

    此致、

    泰勒

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

    谢谢 Tyler、我明白了。

    我决定以400kHz 的频率运行、因为采用 TCA9617B + MUX + tcal IO 扩展器的分立式解决方案在本例中不适用。 该设计基于 DIN 轨模块(<25)、该模块中的连接器左右并排连接、并且它不是一个固定背板、其中每个卡可以通过开关或多路复用器拥有自己的 I2C 总线。 到最后一个模块的最大距离大约为50cm、根据计算结果+ TCA4307的输入电容在400pf 范围内。

    请允许我再次返回到热插拔点。

    在热插拔应用手册第3页中、它提到了以下内容:

    其他说明:
    •外部卡应连接 GND、然后在 SDA/SCL 之前通电:
    –如果 SDA/SCL 线路先连接、这有助于防止它们出现任何潜在的偏置。
    –需要一个母对公连接器,该连接器会错开信号以在不同时间进行连接。

    在第4页中再次重复:

    所需的第二个设计设置是从外部卡到背板的连接必须首先将接地端和电源连接到外部卡、然后 SDAIN/SCLIN 连接到背板 I2C 总线。

    其原因是、在 SCLIN/SDAIN 连接到背板之前、TCA9511A 需要上电并打开其1V 预充电电路。 如果 SDAIN 或 SCLIN 线路与电源和接地同时连接到背板、 然后、1V 预充电电路不会及时上电、如果背板上的 SDA/SCL 线路为高电平或转换为高电平、背板 I2C 总线可能会瞬间下降到接地。

    在 TCA4307数据表的图8-6中、交错连接器的连接序列为:GND、然后 VCC、然后 SDA/SCL、然后 BD_SEL。

    BD_SEL 连接到外部卡上的热插拔电源。 热插拔电源的输出为 TCA4307供电、而不是为主 VCC 供电。

    因此、即使 GND 和 VCC 在 SDA/SCL 之前连接到电路板、但热插拔电源仍然尚未激活、并且 TCA4307尚未通电。 也就是说、只有 GND、那么 SDA/SCL 在 TCA4307实际功率之前连接到 TCA4307、该功率来自热插拔电源的输出。

    此外、热插拔电源通常需要一段时间来升高输出电压。

    那么、如果我理解正确、那么我的问题是:GND 是否足以防止 TCA4307上的任何反偏置、以及防止在其为高电平时将 SDA/SCL 线路拉至 GND?

    我认为反偏置问题还归因于 FET、它可以在 TCA4307上电之前连接。 TCA4307上电后需要断开 FET。 我是否理解正确?

    此致、

    Mohammad。

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

    只是为了澄清一下、虽然它是24个模块+主器件、但它将分为两个 I2C 总线、一条总线上的16个模块和另一条总线上的8个模块。 TCA4307将缓冲每个模块上的所有 I2C 从器件、所以每个 I2C 总线的总线电容少于400pf。

    欢迎并赞赏对这一连接方案可行性的任何评论。

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

    尊敬的 Mohammad:

    因此、即使 GND 和 VCC 在 SDA/SCL 之前连接到电路板、但热插拔电源仍尚未激活并且 TCA4307尚未通电。 也就是说、只有 GND、然后 SDA/SCL 在 TCA4307实际功率之前连接到 TCA4307、该功率来自热插拔电源的输出。

    需要避免接地不当产生的浪涌电流。 尽管像这个这样使用 I2C 的低功耗应用、但采用交错连接仍然是很好的做法。 如果未首先建立 GND'ing 而最后移除 GND、浪涌电流可能会损坏 IO。 即使在低功耗系统中、悬空 GND 连接也不好。  

    因此,如果我理解正确,那么我的问题是,GND 是否足以防止 TCA4307上出现任何反向偏置,并防止 SDA/SCL 线路在高电平时拉至 GND?

    当为 TCA4307提供 VCC 时、BD_SEL 似乎是一个附加的保护层。  

    即使存在 BD_SEL、悬空 GND 也不理想。 通常情况下会存在浪涌电流、而外围卡的第一个连接和最后一个连接则不会触发 GNDING。  

    我认为反向偏置问题也是由于 FET 可能在 TCA4307上电之前连接。 TCA4307上电后需要断开 FET。 我是否理解正确?

    您在这里指的是什么 FET?  

    只是为了澄清一下、虽然它是24个模块+主器件、但它将分为两个 I2C 总线、一条总线上的16个模块和另一条总线上的8个模块。 TCA4307将缓冲每个模块上的所有 I2C 从器件、所以每个 I2C 总线的总线电容少于400pf。

    欢迎并赞赏对这一连接方案可行性的任何评论。

    [/报价]

    只要每个模块都有自己唯一的 I2C 地址、并且寄生总线电容不超过 TCA4307每侧的400pF、这个连接方案就看起来不错... SDA/SCL 输入侧和 SDA/SCL 输出侧总计800pF 的寄生总线电容负载。  

    此致、

    泰勒

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

    您好、Tyler:

    我之前在答复中提到的 FET:

    "RTA 就像一个在从低逻辑周期向高逻辑周期转换期间打开的 FET。 它看起来实际上像是上拉电阻器。"

    这个想法是... 当 TCA4307断电时、它应该在 SDA/SCL 上显示一个高阻态、因此我们可以轻松地在"EN"引脚 TCA4307上放置一个接地电容器和连接 VCC 的电阻器、以防止 I2C 总线上的任何负载影响、直到 TCA4307完全通电、 进行控制以安全地将 SDA/SCL 连接到两侧的 I2C 总线。 遗憾的是、似乎没有发生这种情况、TCA4307正在加载 I2C 总线、但它未加电可能是由于某些内部元件所致。

    另一方面、数据表中的图8-6通过外部卡上的热插拔电源连接 SDA/SCL、然后 TCA4307上电、因而违反了热插拔应用手册。

    这里的问题是:TI 团队是否根据图8-6测试了 TCA4307、它是否在不加载 I2C 总线的情况下工作? 如果答案是肯定的、那么大多数情况下 TCA4307将 SDA/SCL 隔离为高阻态、而它未上电、因此无需错开连接器。 也许只能先连接 GND 以防止外部卡上的悬空 GND。

    我希望我的观点是明确的。

    此致、

    Mohammad。

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

    您好、Tyler:

    只要每个模块都有其自己的唯一 I2C 地址,并且寄生总线电容不超过 TCA4307两侧的400pF,此连接方案就看起来可以... SDA/SCL 输入侧和 SDA/SCL 输出侧总计800pF 的寄生总线电容负载。  [/报价]

    是的、一切都将如您上述所述、我们将在 IN 侧使用1Kohm 上拉电阻器、在>400KHZ/400pf I2C 上提供最佳上升时间、并在3.3V 电源上使用约3 mA 的灌电流。

    此致、

    Mohammad。

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

    Mohammad、

    是的、我明白您的观点。 我认为图8-6典型应用会有所误导、因为我们明确地说 GND > VCC > SDA/SCL 是信号的连接顺序。 对于 BD_SEL 所做的是什么、没有解释。 如果 BD_SEL =高电平并打开热插拔电源、则适合进行交错连接。 否则、图表中会误导。  

    想法是.. 当 TCA4307断电时、它应该在 SDA/SCL 上显示一个高阻态、因此我们可以轻松地在"EN"引脚 TCA4307上放置一个接地电容器和连接 VCC 的电阻器、以防止 I2C 总线上的任何负载影响、直到 TCA4307完全通电、 进行控制以安全地将 SDA/SCL 连接到两侧的 I2C 总线。 遗憾的是、似乎没有发生这种情况、TCA4307正在加载 I2C 总线、但它未加电可能是由于某些内部组件所致。

    我正在阅读应用手册

    https://www.ti.com/lit/an/slva703/slva703.pdf?ts = 1708035284850&ref_url=https%253A%252F%252Fwww.google.com%252F

    无论在 TCA4307中将一个电容器放置到 GND 和将电阻器放置到 VCC 的计划如何。 无论 TCA4307加电至 VCC 还是接地、主要问题是接地到引脚的二极管。 我认为这是热插拔问题的根源、正是连接共用 GND 很重要的原因、否则会有很大的浪涌电流、从而损坏该 GND 至引脚二极管、导致 IO 引脚永久短路。  

    我不认为 TCA4307中存在引脚至 VCC ESD 二极管。 无论如何、TCA4307中有一些 ESD 结构、如果至少未首先建立 GND、则会给器件带来后果。 从数据表的角度来看、在保证热插拔安全而没有交错连接的情况下、以及 IC 或系统中的某些器件发生损坏的情况下、我无法判断该线是什么。  

    此处的问题是:TI 团队是否根据图8-6测试了 TCA4307、该器件是否在不加载 I2C 总线的情况下正常工作? 如果答案是肯定的、那么大多数情况下 TCA4307将 SDA/SCL 隔离为高阻态、而它未上电、因此无需错开连接器。 也许只能先连接 GND、以防止外部卡上的 GND 悬空。

    我没有根据图8-6测试4307。  

    即使在器件未通电时 SDA/SCL 为高阻态、从背板电源到 TCA4307寄生电容器的浪涌电流也可能会使 IO 引脚发生过压。 绝对 最大电压输入为-0.5V 至7V、此处没有太多的裕度来绝对保护免受热插拔情况下的损坏。  

    此致、

    泰勒

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

    您好、Tyler:

    感谢您阅读关于热插拔中瞬变的应用手册。 这是一项出色的工作,向我解释了很多我以前不明白的东西。

    即使在器件未通电时 SDA/SCL 为高阻态,来自背板电源的电感的浪涌电流也可能会导致 IO 引脚出现过压。 绝对 最大输入电压为-0.5V 到7V、在热插拔情况下绝对防止损坏的裕度不大。

    如果我们同意我们无论如何都得先将 GND 应用于热插拔卡、那么主要的问题就是 TCA4307数据表中提到的问题、I2C 热插拔。当总线为高电平时、SDA/SCL 上的问题与总线中断有关。 TCA4307 SDA/SCL 突然连接至总线、因为它可能会将其下拉、导致此时从器件与主器件通信的时钟丢失。 因此、当 I2C 总线空闲时或在检测到输入端的停止位之后、要求 TCA4307首先上电以施加1V 预充电、然后再将两侧正确连接到输入和输出端。

    因此、如果 TCA4307在未通电时在 I2C 总线上显示高阻态、那么如果我们刚刚遵循图8-6中所示的序列、一切都将正常。 即、首先连接 GND、接下来的任何操作都不是问题。

    因此、您能否研究这一点(可能在 TI 设计人员内部):

    "当它未加电时、TCA4307是否在 I2C 总线上显示高阻态?"

    我认为,回答上述问题应该以赞赏和感谢的方式解决这一问题。

    此致、

    Mohammad。

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

    尊敬的 Mohammad:

    我相信我现在理解你的观点。  

    如果我们同意我们无论如何都得先将 GND 应用于热插拔卡、那么主要的问题就是 TCA4307数据表中提到的问题、I2C 热插拔。当总线为高电平时、SDA/SCL 上的问题与总线中断有关。 TCA4307 SDA/SCL 突然连接至总线、因为它可能会将其下拉、导致此时从器件与主器件通信的时钟丢失。 因此、当 I2C 总线空闲时或在检测到输入端的停止位之后、要求 TCA4307首先上电以施加1V 预充电、然后再将两侧正确连接到输入和输出端。

    因此、如果 TCA4307在未通电时在 I2C 总线上显示高阻态、那么如果我们刚刚遵循图8-6中所示的序列、一切都将正常。 即、首先连接 GND、接下来的任何操作都不是问题。

    因此、您能否研究这一点(可能在 TI 设计人员内部):

    "当它未加电时、TCA4307是否在 I2C 总线上显示高阻态?"

    [/报价]

    数据表中的这项陈述有助于回答您的问题:

    如果您有任何进一步的问题、敬请告知。  

    此致、

    泰勒

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

    您好、Tyler:

    是的、这就是我的意思、因为数据表的第1页中提到了它、如下所示:

    但是、当他们在第10页中再次提到它并且我们开始了讨论时、我感到困惑:当 IC 通电时、它可能只有 Hi-Z、但当它从零伏 Vcc 启动时、却检测不到 UVLO。

    我希望现在我已充分了解 IC 以及如何连接它以充分利用其出色的功能。

    非常感谢您的支持,解释和良好的信息。 非常感谢。

    也感谢克莱门斯的支持。

    此致、

    Mohammad。