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.

[参考译文] TCA9555:I2C 时序要求标准

Guru**** 2933120 points

Other Parts Discussed in Thread: TCA9555, PCA9555

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/735256/tca9555-i2c-timing-requirement-criterion

器件型号:TCA9555
主题中讨论的其他器件: PCA9555

您好、Sirs、

还有一个问题。

请问您的 I2C 输入上升时间数据表上的测试条件是什么?
该值显示最大值为1000ns,但我们使用800ns,BMC 将发送失败消息。

因此,我们想知道测试条件是什么。


谢谢!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    实际上、我们担心这是一个设计问题、因此需要帮助进行澄清。

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

    Shu-Cheng、您好!

    您所指的时序是表7.6中的 I2C 接口时序、该时序取自 I2C 标准。 从19的参考图中、我假设测试是使用1k 上拉电阻和50pF 负载电容完成的。

    现在讨论上升时间。 您需要了解、上升时间不应受到单个 I2C 器件的很大影响。 上升时间是上拉电阻器(器件外部)和总线上电容的函数。 I2C 器件的电容最大应为10pF、因此这不应对上升时间产生太大的影响。

    在标准模式下、您提到的800ns 值低于1000ns、但如果您想要调整此上升时间参数、则需要操作上拉电阻器。 其中、较低值的电阻器会产生较短的上升时间、而较大的电阻器会进一步降低上升时间。

    谢谢、

    -Bobby

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

    您好、Sirs、

    感谢您的快速回复。

    那么、我是否可以知道在您的测试中使用1k 上拉电阻和50pF 负载电容的 I2C 的上升时间是多少?

    喜欢... 500ns? 800ns? 或者??


    此外、如果上升时间大约为1000ns、TI 如何确保上升时间不会受到 TCA9555的影响?  

    喜欢...有报告或任何文档?

    谢谢!!

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

    "那么、我是否可以知道在您的测试中使用1k 上拉电阻和50pF 负载电容器的 I2C 的上升时间是多少?"

    我无法访问该信息、但在这种负载下、您应该预计上升时间大约为42纳秒、从 Vcc 的70%到 Vcc 的30%。

    "如果上升时间大约为1000ns、TI 如何确保上升时间不会受到 TCA9555的影响? "

    我查看了该器件的内部设计。 SCL 只有一个经过 ESD 结构的器件输入级。 输入缓冲器是 CMOS FET 的栅极。 除了寄生电容外、没有任何其他因素会影响从该电容产生的上升时间。

    "喜欢...有报告或任何文档?"

    请参阅以下文档、了解上升时间如何受到影响以及如何控制上升时间。

    谢谢、

    -Bobby

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

    您好、Sirs、

    感谢您的回复。

    我们知道时序 来自 I2C 标准。

    我们想知道 TI 是否在内部测试了此规格?

    如果是、是否有任何报告可以共享?

    谢谢!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Sirs、
    很抱歉、推送了、对此有任何更新吗?
    我们想知道 TI 如何定义此1000ns 规格?
    因为我们遵守此规范(大约800ns),但 BMC 始终发送错误消息。
    谢谢!!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Sirs、
    更新我们的测试。
    如果我们在 SCL 上更改2k、SDA 使用原始电阻器、我们的 BMC 将通过。
    如果我们在 SDA 上更改2k、SCL 使用原始电阻器、BMC 仍会发送错误消息。
    如果更改为使用 NXP PCA9555ㄝ 并在两侧使用原始电阻器(SCL/SDA)、则我们的 BMC 将通过(上升时间为800ns)。
    那么、我们错过了什么吗?
    您对此案例有什么想法吗?
    您能否与我们分享 TI 如何定义此1000ns 规格?

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

    您好、Shu、

    "我们想知道 TI 是否在内部测试了此规范?"

    我们不会根据时序要求对器件进行筛选。 测试是在使用与该器件共享同一数字内核的器件之前完成的、结果是该器件通过了所有飞行颜色的时序要求(非常好)。 我一直与负责管理您所要求的客户的 FAE 合作。 我向他提供了您要求的内容(文档)。 我无法在此处提供此数据、因为它需要 NDA。  

    "您能否与 TI 分享如何定义此1000ns 规格?"

    I2C 标准定义为最大值。

    我发现的数据显示、400pF 负载和10pF 均可在-40C 和85C 的两种情况下提供高达1100ns 的 Vcc 1.6V 和5.5V 时的 ACK。

    即使在您的情况下、我们的器件也能满足低于1000ns 的要求。 在这方面没有问题、我认为您从保证的角度来看、低于1000ns 的任何内容都可以正常工作。

    "您对此案例有什么想法吗?"

    此问题似乎是编码问题、您会收到错误的负面信息。 根据您提供的信息,我们的设备似乎仍在工作,但您的 BMC 只是认为有问题。

    '如果更改为使用 NXP PCA9555ㄝ并在两侧使用原始电阻器(SCL/SDA)、我们的 BMC 将通过(上升时间为800ns)。'

    我建议尝试将 PCA9555的上升时间设置为类似于我们的器件所见的860ns 或900ns、并查看 BMC 是否认为这是故障。

    -Bobby

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

    你好、Bobby。

    我们已获得您的测试结果、谢谢!!

    我们在相同的条件下更改了 NXP PCA9555、上升时间为860ns、BMC 未发送任何错误消息。

    因此,可以进行长时间验证,因为此问题不会出现在每个读取/写入条件下,因此很可能发生。

    例如、我们的 BMC 每秒读/写 TCA9555、但此问题仅在15 ~ 30分钟左右出现一次。

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

    "BMC 未发送任何错误消息。" BMC 是否会告诉您问题是由于上升时间所致,还是可能有其他问题发生,而您认为问题是上升时间? (因为您可以通过使用上拉电阻器使上升时间加快来获得100%的通过?)

    "因此,可以进行长时间验证,因为此问题不会出现在每个读取/写入条件下,因此很可能发生。"
    我们可以设置一些操作来执行此操作、但您需要我们运行测试多长时间? 是否100%的器件发生故障、或者故障额定值是否也较低?

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

    您好、Sirs、

    感谢您的回复。

    "BMC 未发送任何错误消息。" BMC 是否会告诉您问题是由于上升时间所致,还是可能有其他问题发生,而您认为问题是上升时间? (因为您可以通过使用上拉电阻器使上升时间加快来获得100%的通过?)

    是~我们更改了快速上升时间后、100%修复了故障现象。

    "因此,可以进行长时间验证,因为此问题不会出现在每个读取/写入条件下,因此很可能发生。"
    我们可以设置一些操作来执行此操作、但您需要我们运行测试多长时间? 是否100%的器件发生故障、或者故障额定值是否也较低?

    当然、如果可能、我们需要100%的器件测试。

    我们还需要知道有多少读取/写入时间可以满足故障现象。 (就像读/写10000次会遇到第一次失败的情况一样。。。)

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


    我创建了测试设置和代码来进行测试、并尝试今天运行测试、但出于某种原因、我遇到了问题。 我认为它与我使用的缓冲器有关。 明天我将使用另一个缓冲器重试、并返回给您。

    "是否100%的器件发生故障、或者故障额定值是否也较低?

    当然、如果可能、我们需要100%的器件测试。"
    ^您似乎误解了我要问的问题。 测试并发现故障时的性能。 您是否在所有电路板上或仅在少数电路板上看到了该问题?

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

    您好、Sirs、

    感谢您的回复。

    我们可以在我们的所有板上看到该问题。

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

    嘿、Shu、

    我刚刚使用3个不同的上拉电阻器运行了一个测试。 5k (上升时间远低于1000ns)、28k (上升时间~850ns)和33k (上升时间~950ns)。

    下图是28k 上拉电阻器:

    我设置我的代码以设置 (写入)配置寄存器、输出寄存器(全部为高电平)和输出寄存 器(全部为低电平)、然后读取我写入的寄存器。 我的代码检查我是否收到 ACK 以及写入器件的数据是否与我读取的数据相同。

    我将代码循环运行30、000次、并使用所有3个不同的上拉电阻器运行5次、无法检测到任何错误。

    (我已验证我的代码是否检测到 Nacks 和错误数据)。

    我从未发现过任何故障。

    谢谢、

    -Bobby