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.

[参考译文] UCD90320:UCD90320讨论 PMBus 访问。 —SDA 信号驱动低电平异常

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1188697/ucd90320-ucd90320-discussion-on-pmbus-access---abnormal-driving-low-on-sda-signal

器件型号:UCD90320

当我们的主器件(MCP2221)通过 PMBus 与 UCD90320通信时、有时 PMBus 会挂起、因为 SDA 保持低电平。 不确定这件事发生了什么。

您能否检查以下实验数据并查看是否有任何方法可访问 DPM 状态或分析问题? 谢谢。

1.当问题发生时,DPM_I2C 总线挂起,并且 DPM 显示出奇怪的行为。 (输出引脚似乎不能用作设计的逻辑、例如 LA 波形上的下部通道)

2.可以看到 i2c 在接口上没有停止。

作为 绿色(主器件侧为 SDA)和蓝色(DPM 侧为 SDA)信号、主器件侧和 DPM 侧之间有 PCA9546。 DPM 似乎在早些时候驱动至低电平。 同时、当 SDA 迹线被导线断开时、DPM 侧的 SDA 仍然为低电平。

4.请参阅 MCP2221和 UCD 之间的通信事务的附加文件。 (使用急性 LA 工具打开。)

e2e.ti.com/.../LogLA_5F00_230118_5F00_110616_5F00_With-DPM-I2C_2600_Scope.zip

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

    你(们)好

    1.主机是否支持时钟 扩展? 这非常关键。 如果没有时钟拉伸、通信将不可靠  

    2.设备上运行的固件版本是什么? 请使用块读取来读取命令0xFD。

    此致

    Yihe

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

    感谢您的及时反馈。  

    MCP2221支持对流量的时钟拉伸。 是否有任何特定的时钟拉伸要求(例如、时钟拉伸可以等待多长时间? 等)以便主器件与 UCD90320通信?

    2.对于 UCD90320、我们使用 过 UCD90320ZWSR 和 UCD90320ZWST。 FW 是否嵌入在 PN 信息中? 还是我们始终可以从真正的芯片中的0xFD 读取它?

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

    你(们)好

    在什么类型的事务(写入或读取)下、发生了这种情况。

     我需要看到一个完整的事务波形、并进行放大以查看每个时钟位。  主机不仅支持高达35mS 的时钟扩展、还需要处理超时情况。

    固件版本是来自 IC 的0xFD 命令的一部分。

    UCD 不支持一些命令协议、主机应避免使用这些协议。

    1.发送具有 W 或 R 位+ STOP 的器件地址。

    2.从 UCD 读取数据使用停止+启动而不是重新启动

    此致

    Yihe

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

    谢谢 Yihe、

    由于假期,我暂停了很长时间的回应。 请查看下面的部分内容、让我们继续讨论、同时我可以使用设备收集此问题的数据。

    我们从具有0xFD 的 DPM 获得的是00 91。 FW 版本是否全新且足够稳定?

    2.交易详情包含在此讨论线程开头的 zip 文件中。 下面还提供了粗略快照。

    (请参阅以下链接下载 MSO3000系列工具、以对 zip 文件内的 MSW 文件进行解码。)

    https://www.acute.com.tw/logic-analyzer-en/support/download/software

    3.在上述信息中,您是否认为我们遇到了 UCD 应避免的某种情况?

    在我们的观察中、与其他事务波形相比、主器件(MCP2221)的 ACK 周期相当长。 这是 UCD 的限制吗?

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

    你(们)好

    返回0xFD 是错误的、很显然、这里存在一些问题。

    如果无法使0xFD 正常工作、则在其他地方出现问题也不会让人感到意外。 让我们重点介绍0xFD。

    当存在如此多的0xFF 时、这意味着没有任何器件驱动 SDA、因此默认情况下它是高电平。  

     执行0xFD 读取时、请使用示波器(而不是监听器或数字分析器工具)捕获波形。

    这是器件的预期返回结果

    此致

    Yihe

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

    您好、Yihe、

    这是我访问0xFD 时的错误。 请参阅以下有关反馈值的快照;如果有的话、请告诉我。 谢谢。

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

    你(们)好

    通过查看您的捕获、我们确实在 SCL 的上升沿释放了 SDA、但在 PCA 侧、它没有看到这一点、因此 SDA 始终为低电平。

    这里使用了什么上拉电阻器?

    此致

    Yihe

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

    您好、Yihe、

    感谢~您可以看到正常条件下的波形、即传输将具有停止令牌、然后释放总线。

    以下波形是故障条件。 SDA 被驱动为低电平、并且不能发出停止令牌。 此外,巴士被绞车。

    在上述情况中、它显示了最终 NACK 令牌的差异。 在故障情况下、SDA 在 SCL 驱动为低电平后立即驱动为低电平。 然后主器件无法驱动停止令牌包。

    在正常情况下、SCL 释放为高电平以创建停止令牌后、SDA 仍保持高电平。

    这就是我们要关注的问题、并希望 TI 能为我们提供分析 UCD 内部状态的一些指导。

    上拉电阻器在 SDA 和 SCL 上都使用2k Ω。 下面还显示了拓扑。

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

    你(们)好  

    根据波形、DPM I2C_SDA 为高电平、但 PCA 侧为低电平。  

    您需要有一个范围来捕获所有这些内容。 您所拥有的工具捕获没有要显示的详细信息。

    此致

    Yihe

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

    您好、Yihe、

    谢谢你。 我将  用如下方式圈出 SDA 线。 请参阅。

    您可以参考最后一个字节事务上的波形。 我在挂起前看不到异常信号。

    时序规格。 回顾一下、我们实际上有一些不会引起总线挂起的条件。 因此、我们比较它们在时序上的差异。 您可以看到 tBUF 和 Tlow 在挂起和非挂起条件之间有很大不同。 您能否回顾一下这是否是 UCD PMBus 的限制?

    符号

    参数

    最小

    最大

    单位

    挂起 条件

    条件而不挂起

    fsmb

    SMBus 工作频率

    10.

    100

    kHz

    97K

    10万

    tBUF  

    停止和启动条件之间的总线空闲时间

    4.7.

    µs μ A

    204.58毫秒

    315.75us

    THD:STA

    (重复)启动条件后的保持时间。 在这个周期之后、第一个时钟被生成。

    4.

    µs μ A

    5美元

    5.15 μ s

    Tsu:STA

    重复启动条件建立时间

    4.7.

    µs μ A

    5.7us

    5.55 μ S

    TSU:STO

    停止条件建立时间

    4.

    µs μ A

    5.52uS (典型值)

    5.52 μ S

    THD:DAT

     数据保持时间

    300

    ns

    580nS

    395nS

    Tsu:DAT  

    数据建立时间

    250

    ns

    4.485us

    4.5 μ S

    TIMEOUT

    检测时钟低电平超时

    25

    35.

    ms

    Tlow  

    时钟低电平周期

    4.7.

    美国

    4.9us

    4.8us

    大腿

    时钟高电平周期

    4.

    50

    美国

    5.5 μ s

    5.2 μ S

    低电平:SEXT

    累计时钟低电平延长时间(从器件)

    25

    ms

    2.5ms (典型值)

    801uS

    低电平:MEXT  

    累计时钟低电平延长时间(主器件)  

    10.

    ms

    1.8m 秒

    361.5 μ S

     

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

    时序差异附录:

    MASTER- MCP2221 (上表中的挂起条件)。 事务波形始终具有更长的 ACK 至下一个 SR 周期。 它会感应更长的 Tlow (SEXT 和 MEXT)

    MASTER- MCP2221 (上表中的挂起条件)。  总线在2个事务中的任何一个之间的较长时间内被释放。 它会感应更长的 tBUF。

    另一个主设备。 (上表中的非挂起条件)。  事务波形始终具有更短的 ACK 至下一 SR 周期(与 MCP2221案例相比)

    另一个主设备。 (上表中的非挂起条件)。  传输波形始终 具有较短 的总线空闲周期。 (与 MCP2221案例比较)

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

    你(们)好

    感谢您的波形。

    由于没有交易、因此这里的巴士自由时间无关紧要。 但是、在重新启动 1.8ms (低电平:MNEXT)之前的时钟低电平很长。 您是否知道它为什么需要这么长的时间? 这个软件是基于 I2C 主设备吗?  

    即使如此,我也不知道有什么问题。

    捕捉显示挂起在读取时。  

    您能否帮助捕获以下范围:

     良好的读取-需要每个位的完整事务+详细信息   

    2.用挂起读取- 需要每个位的完整事务+详细信息

    我想进行比较

    此致

    Yihe

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

    谢谢 Yihe、

    以下2个波形是相同的地址/命令和相同的 MCP2221读出值。

    MASTER- MCP2221 -将8C 写入0x11

    主器件- MCP2221 -读取0x11

    在随后的传输之后、总线挂起、因为 SDA 保持低电平。

    MASTER- MCP2221 -将8C 写入0x11

    主器件- MCP2221 -读取0x11。  

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

    你(们)好

    感谢您的参与。 您可以看到、NACK 在两种不同情况下有很大不同。

    良好的是非常清楚的(ACK 时钟位上的 SDA 高电平) 、但不好的是、SDA 的下降沿有点在 CLK 周期内(粉色和绿色)。 主器件为何如此快速地将 SDA 拉低?

    此致

    Yihe

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

    我的观察结果如下:

    白色帧似乎由 dev 驱动。 粉色的帧似乎由 Master 驱动。  

    因为这是读取命令并返回00、而主器件将 ACK 逐出。  

    在该波形的最后几个段中、作为我标记的帧、它看起来是由 dev、Master 和 dev 再次驱动的低电平。

    我的读数是低电平上的电压电平略有不同。 主设备驱动器的功率将会更低、而开发设备驱动器的功率将更高一些。

    此外、在最初在中捕获的以下波形中。 您可以首先从 SMBus 分支中看到 DEV 驱动 SDA、然后主端受到影响。