作为标题,我们在实施热插拔方面有一些问题,NVMe x1需要 PCI-E x4来实施,因此使用2个中继器 IC (配置:TX x8和 Rx x8)。
相位处于热插拔功能中、我们希望中继器可以单独控制4个通道(CH0~CH3或 CH4~CH7)本身、但中继器的 PRSNT#属于全局控制所有通道。
根据对 DS80PCI810NJYT 数据表的研究、通过 SMBus 从模式寄存器映射、我们也许可以实现它。
您能帮我们提供合适的解决方案或建议、谢谢。
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.
作为标题,我们在实施热插拔方面有一些问题,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
您好、廖先生、
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