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.

[参考译文] TCA9800:I2C 缓冲

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1234290/tca9800-i2c-buffering

器件型号:TCA9800
主题中讨论的其他器件:ISO1541TCA9517、PCA9306 ISO1450P82B96ISO1640TCA9517A

我的设计需要隔离式电源分为两部分(分别称为 A 部分和 B 部分)。  I2C 从 A 部分运行到 B 部分、我认为 需要将其缓冲。 推荐了 TCA980x 系列、因此我当时认为我要为 Vcca = A 部分的3.3V、Vccb = B 部分的3.3V、GND =接地 B

e2e.ti.com/.../i2c-buffer-v2.pdf

我需要一些有关如何选择要使用的 TCA980x 器件以及如何调整上拉电阻大小的帮助。

I2C 总线以400kHz 的频率运行、 而且我们上面只有一个器件(即、一个主器件控制一个从器件)、因此在估算每个器件15pF 总线电容并查看每个器件的限制后、无论上升时间如何、任何 TCA980x 器件都足以应对是正确的吗? 因为我并不完全确定如何确定上升时间。 FPGA 文档并未说明上升时间(我对 FPGA 也不太熟悉、因此我不知道这是不是通常指定的)。  

由于上拉电阻也是根据上升时间计算的、因此、如果上升时间真的很短、以便我不会意外地超过 Rpmax、那么最好还是调整上拉电阻的大小?

此外、FPGA 和总线开关之间存在上拉电阻器。 现有10k 上拉电阻是否足够、或者是否需要在 TCA980x 缓冲器之前添加3.3V 电源的上拉电阻?

感谢你的帮助。

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

    TCA980x 的 B 侧可能不与电平转换器配合使用。 并且 B 侧上不得有任何上拉电阻器。

    无论如何、转换器/总线开关可能会使额外的缓冲器变得不必要。 您正在使用什么器件?

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

    您好、Clemens:

    A 和 B 部分均将  74CBTLVD3245PW 用于总线开关。

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

    TCA980x 不得在 B 侧具有上拉电阻、但在断开连接时、总线需要一些上拉电阻。 TCA980x 不是一个好主意。

    TCA980x 在电气级别上的用途是什么? 如果两个电源几乎相同、应该没有问题。

    为什么有两个总线开关? 您只需一个即可断开两块板。

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

    总线开关是在 FPGA 的 COTS 板上设计的、因此它们已经是设计的一部分。  

    实际上、我只需要使电源 轨在 A 段和 B 段之间保持隔离、所以我的直觉是我还需要对两个电路之间的信号进行缓冲、这让我搜索了 i2c 缓冲器。

    我 第一次发现 i2c 隔离器、那是我应该查找的器件类型的术语吗? 我不熟悉这种设计、因此还不熟悉术语。 在我的初始搜索中 、我遇到了 ISO1541、看起来它会达到我想要的效果。

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

    您好、Gillian:

    选择 TCA980x 的主要目的是什么、因为电源 A =电源 B、并且不接近于 I2C 的400pF 寄生电容限值、因此您不需要电平转换? 您是否需要热插拔缓冲器? 将在 I2C 通信期间断开段 A 和段 B、这可能会导致 I2C 总线锁定(我看到 GNDA 和 GNDB 最终连接在一起)。

    关于如何选择要使用的 TCA980x 器件以及如何调整上拉电阻、我需要一些帮助。

    如您所知、TCA980x 都是相同的器件、但具有不同级别的 ICS 电流源。  

    根据 B 端的负载大小、您决定要实施的设备的版本。 但是、在您提供的方框图中、B 侧似乎存在10k Ω 电阻器、为了使器件正常工作、TCA980x 上不允许这种电阻器。 TCA980x 不需要 B 侧存在外部电流源。 使用此器件的好处是、虽然它是电平转换和缓冲器、但在 B 侧也不需要上拉电阻器、从而节省成本和空间。 它还具有没有静态电压偏移(SVO)的缓冲器、可以将 VOL 推至低于大多数缓冲器的典型值0.22V (TCA9800)左右。  

    您使用的总线开关是一个 NXP 器件、内部看起来是无源的。 当开关打开时、总线开关 A 侧与 B 侧分开的唯一元件是简单的 FET 电阻 RDS_ON。 这意味着 TCA980x 将通过10k 上拉电阻产生到电源 B 的外部电流  

    为了建议您在所提供的方框图中使用另一个可以包含上拉电阻器的缓冲器、我建议查看 TCA9517。 请确保遵循此设备上的 VILC 规格、以确保其正常工作。  

    我需要一些有关如何选择要使用的 TCA980x 器件以及如何调整上拉电阻大小的帮助。

    I2C 总线以400kHz 的频率运行、 而且我们上面只有一个器件(即、一个主器件控制一个从器件)、因此在估算每个器件15pF 总线电容并查看每个器件的限制后、无论上升时间如何、任何 TCA980x 器件都足以应对是正确的吗? 因为我并不完全确定如何确定上升时间。 FPGA 文档并未说明上升时间(我对 FPGA 也不太熟悉、因此我不知道这是不是通常指定的)。  

    [/报价]

    在您的应用中、寄生总线电容似乎不会是问题。 我怀疑您的设计是否会超过400pF 限制、除非您尝试使用非常长的迹线进行通信。 上升时间直接受存在的总线电容大小和使用的上拉电阻器的影响。 如果您知道寄生电容远小于400pF、则上升时间应该不是问题。  

    由于上拉电阻也是根据上升时间计算的、是否最好在上升时间真的很短的情况下调整上拉电阻、这样我就不会意外地超过 Rpmax?

    在这里链接了一个非常好的应用手册 、说明了如何计算 I2C 解决方案的上拉电阻。  

    [quote userid="565206" url="~/support/interface-group/interface/f/interface-forum/1234290/tca9800-i2c-buffering 此外、FPGA 和总线开关之间存在上拉电阻器。 现有10k 上拉电阻是否足够?是否需要在 TCA980x 缓冲器之前添加3.3V 电源的上拉电阻?[/quote]

    我想我们已经对此进行了一点讨论、但 TCA980x 不能在 B 侧存在上拉电阻器。 一般而言、考虑到寄生总线电容很小、10kohm 上拉电阻在您的系统中可以正常工作。  

    如果您有任何其他问题、敬请告知。  

    此致、

    泰勒

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

    你好,泰勒,首先,感谢真正彻底的响应.  

    我真的只看了 TCA980x 系列、因为一位技术支持专家推荐了它。 我最初是在问 PCA9306是否能够提供我需要的缓冲、之后被告知不会提供缓冲、我应该查看 TCA980x。

    我认为在操作过程中、A 部分和 B 部分不应断开。

     我要寻找的核心目标 是确保在满足电源隔离要求的情况下、I2C 信号能够正确通信。 由于应该对电源进行隔离、我认为我还希望确保在 A 和 B 之间传输的信号也应该进行隔离/缓冲(不确定这里的术语是否正确)。 我知道、从技术上讲、由于接地连接在一起、它们不是完全隔离的、因此目标是 尽可能地将它们分开、除非接地需要连接在一起。

    所有这一切都是说、我 对使用 TCA980x 没有任何特定的附件、因此我很乐意 抛弃这一想法、并使用其他方法。

    我 认为 我提供的方框图实际上是错误的。 我怀疑总线开关没有转换到3.3V;开关和 FPGA 正在生成1.8V 信号、开关显然只是在那里启用 I2C 信号。 我需要再次检查是否是这样。

    假设要使用的信号为1.8V、我们使用的是 在 A 的开关和 B 的开关之间使用的 PCA9306 I2C 电平转换器的旧设计(这是需要电源隔离之前的设计)。 从那开始、我想连接一个 PCA9306以从1.8V 转换为3.3V、然后是一个数字隔离器(我一直在寻找 MAX14850、因为我有其他一些数字信号要缓冲、我看到了 ISO1450)、 但同样、如果您有其他建议、请不要使用特定附件)、然后使用另一个 PCA9306从3.3V 转换为1.8V。 这听起来能正常工作吗?

    看看 TCA9517、好像我必须使用其中的3个(1.8V <-> 3.3V <-> 3.3V <-> 1.8V)、因为我无法将 B 侧连接在一起、对吗?  如果是、我认为应该选择哪个选项可以节省更多空间、因为我的板越来越拥挤。

    再次感谢您的帮助。

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

    如果接地端相同、则电隔离没有意义。 目前还不清楚您需要哪种隔离。 您尝试通过隔离防止的实际问题是什么?

    I²C 使用开漏信号、也就是说、电流只针对低电平信号流动。 因此无需完全缓冲信号。 为了保持高电平电压分离、使用 PCA9306这样的无源开关就足够了。

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

    您好、Tyler、我在这里与一些工程师谈论了如何描述我正在尝试做的事情。 其目的是控制返回电流、因此我被告知使用 隔离器一直保持接地分离、直到它们连接在一起。  

    正如我在上一个响应中提到的、我意识到我将使用的 I2C 信号将是1.8V、而不是3.3V。 在了解可用的 I2C 隔离器后没有发现任何适用于1.8V 信号的隔离器、但可能我没有看到。 我希望无需添加电平转换器即可节省空间。 是否有可使用的 I2C 隔离器或可能在1.8V 下工作的任何双向标准数字隔离器?

    我是否应该在隔离论坛上提出新问题?

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

    使用2×P82B96、您可以在中间使用更高的电压和一个普通2+2隔离器。

    (我怀疑您可以忽略隔离器。)

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

    您好、Gillian:

    缓冲主要用于重新驱动高负载总线、从而驱动寄生总线电容接近400pF 限值的 I2C 信号。 具有这种寄生电容值的 I2C 总线容易出现上升时间问题、尤其是在较快的数据速率下、并且需要重新驱动、从而实现缓冲器/中继器解决方案。  

    您在此处的响应让您似乎需要某种类型的电气隔离(隔离 GND A 和 GND B)。  

    我们的团队为 I2C 开关/多路复用器/IO 扩展器/缓冲器等收发器器件提供支持 我会将该线程转给隔离团队、看看他们是否有可满足您需求的 I2C 解决方案。  

    此致、

    泰勒

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

    您好、Gillian:

    根据您分享的方框图、我看到接地 GNDA 和 GNDB 连接在一起而不是隔离。 如果将它们隔离、那么这两个部分之间就不会有任何隔离。 仅当 GNDA 和 GNDB 未进行电气连接时、使用 ISO1640等 I2C 隔离器才能实现隔离。 否则、ISO1640将像 I2C 缓冲器一样工作。

    让我们了解您的应用是否需要隔离、在这种情况下、您可以使用 ISO1640并使 GNDA 和 GNDB 保持独立。 如果不需要隔离、则可以使用 I2C 缓冲器。 谢谢。


    此致、
    Koteshwar Rao.

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

    你好,科特什瓦尔,同意 的理由不是完全孤立。 但是、我们在 A 部分和 B 部分控制返回电流、并希望尽可能地保持接地分离。 理解了缓冲器与隔离器的区别、因此我们假设隔离器实际上是我需要的、并且 GNDA 和 GNDB 没有连在一起。

    不过、我很确定 I2C 是1.8V、而不是3.3V、这就是为什么我想知道 TI 是否有能够在1.8V 工作的隔离器、因为我看到的所有隔离器都是3.3V 或更高的、 但我想检查一下、以防漏掉能够完美工作的设计。  

    否则、两个用于将1.8V 转换为3.3V 的 PCA9306能否与 ISO1640配合使用?

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

    您好、Gillian:

    感谢您的意见和更新。

    在这种情况下、是 ISO1640可用于 I2C 隔离。 遗憾的是、我们没有支持1.8V 工作电压的 I2C 隔离、我们推荐的最佳器件是 ISO1640。

    否则,两个用于将1.8V 转换为3.3V 的 PCA9306能否与 ISO1640配合使用?

    是的、两个 PCA9306器件可与 ISO1640配合使用以在1.8V 和3.3V 之间转换电压。 请注意、ISO1640的 SIDE1的 I/O 逻辑阈值与标准 TLL/CMOS 阈值略有不同、因此、请确保 MCU I/O 与这些阈值兼容。 如果它们不兼容、那么您可以使用其他转换器、例如 TCA9517A 和 TCA9800。

    谢谢、如果您有任何进一步的问题、请告诉我。


    此致、
    Koteshwar Rao.