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.

[参考译文] DS80PCI810:[DS80PCI810NJYT]支持带热插拔(插头)的 NVMe 应用程序

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/788730/ds80pci810-ds80pci810njyt-support-nvme-application-with-hot-swap-plug

器件型号:DS80PCI810

作为标题,我们在实施热插拔方面有一些问题,NVMe x1需要 PCI-E x4来实施,因此使用2个中继器 IC (配置:TX x8和 Rx x8)。

相位处于热插拔功能中、我们希望中继器可以单独控制4个通道(CH0~CH3或 CH4~CH7)本身、但中继器的 PRSNT#属于全局控制所有通道。

根据对 DS80PCI810NJYT 数据表的研究、通过 SMBus 从模式寄存器映射、我们也许可以实现它。

您能帮我们提供合适的解决方案或建议、谢谢。

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

    您好、廖先生、

    为每个 NVMe 驱动器使用单个 DS80PCI810将允许直接使用 PWDN 引脚在热插拔时控制硬件。  为了将 Tx 和 Rx 信号连接到同一转接驱动器器件、PCB 布线需要穿过 DS80PCI810。

    或者、也可以使用 SMBus 控制寄存器来单独控制通道 PWDN。  这将使系统能够独立控制 DS80PCI810中每个通道的 Rx 检测过程。  此过程更耗时、因为每个通道都需要一组寄存器写入来重置 Rx 检测状态机、并准备接收新的 NVMe 驱动器。

    请注意: 从主机的角度来看、此操作也很重要。  它还从 DS80PCI810上移除了输入终端。  这有助于通知主机硬件链路不再完整。

    此致、

    Lee

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

    基于您的提及、我有两个问题:

    请注意:从主机的角度来看、此操作也很重要。 它还从 DS80PCI810上移除了输入终端。 这有助于通知主机硬件链路不再完整。

    问题1.移除 DS80PCI810的输入端接、我们能否独立移除通道的输入端接? (删除输入端接行为决定 PWDN 状态?)
    问题2.当中继器使用 SMBus 控制寄存器单独控制 PWDN 时、假设 PWDN (CH0至 CH3)已更改(发生复位)、我们想知道中继器是否会再次从 EEPROM 加载代码。 (或发生复位时、中继器将返回到失效状态(主控模式)一次。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、廖先生、

    Q1: 是的、可以通过 SMBus 寄存器写入来移除单个通道上的输入端接。  

    Q2:否、中继器不会重新加载 EEPROM、除非循环 READ_EN 输入以创建 HL 转换、使用 SMBus 强制加载新 EEPROM、或在中继器上循环通电。

    这是 SMBus 信息

    整个器件终端可通过寄存器0x02[7:6]进行控制

     

    寄存器写入的序列、用于同时为所有8个通道复位 rxdet 状态机。

     

    0x02 = 80'h

    0x02 = C0’h

    0x02 = 80'h

    0x02 = 00'h

     

    这将为所有八个通道重新启用 rxdet 状态机。

     

    无法通过单个通道控制 rxdet 状态机。

     

    要控制少于8个通道的端接、需要在寄存器0x08中覆盖 RXDET 引脚。  

    写入0x08 = 08'h

     

    然后、每个要控制的通道中的 RXDET 位需要按以下顺序进行编程。

    CH0的示例

     

    写入0x0E = 00'h (输入 hi-z、因此终止被关闭)

    写入0x0E = 0C'h (启用自动 rxdet、输入为高阻态、直到检测到输出端接)

     

    此致、

    Lee