Other Parts Discussed in Thread: TLK10232
部件号: TLK10232
您好:
我有一个带有 TLK10232 的板连接到 CX4 连接器、用于在 LS 侧传输 XAUI、并连接到 HS 侧的 SFP+。
我使用的是 BIDI SFP+。
我使用光学链路将两块电路板连接在一起、并在 XAUI 接口上执行电气环回。
我使用 GUI 中的“低级配置“选项按如下方式配置了 TLK10232:
- 复位器件(写入 1 至 0x1E.0000 位 15 或将 RESET_N 引脚置为有效)
- 确保基准时钟选择 (156.25MHz 或 312.5MHz) 正确–这是通过寄存器 0x1E.001D 位 12(默认为 156.25MHz) 完成)完成的
- 通过将 1'b0 写入 0x07.0000 位 12 来禁用自动协商
- 通过将 16'h0000 写入 0x01.0096 来禁用链路训练
- 将 16'h03FF 写入 0x1E.8020。 这样、通常通过 KR 培训配置的链接设置就可以手动配置。
- 根据链路条件、您可能需要更改 0x1E.0003 和 0x1E.0004 的默认配置。 对于光学连接、我们通常建议将 HS_ENTRACK (0x1E.0004 位 15) 更改为 1'b1、将 HS_EQPRE (0x1E.0004 位 14:12) 更改为 3'b101。 这可以作为起点、但您可能需要执行一些 BER 测试来优化这些值。
- 通过将 1'b1 写入 0x1E.000E 位 3 发出数据路径复位命令。
链路建立正常。
几分钟到一小时后、我看到一个电路板报告 TX_FIFO_UNDERFLOW (0x1E.000f 位 7)、而配合的电路板报告 RX_FIFO_OVERFLOW (0x1E.000f 位 4)。 和 TX_FAULT (0x1.0008 位 11)
在某些情况下、一个板上的 TX_FIFO_溢出函数和配合上的 RX_FIFO_下溢函数。
问题是故障仍然存在。 这些位在读取后不会清除。 只有在我通过将 1'b1 写入 0x1E.000E 位 3 执行数据路径复位后、才能清除该复位。
该问题仅发生在 BIDI SFP+设备上、而在双工 SFP+设备上则不会发生。
在 HS 侧检查 PRBS 错误时、我在 BIDI SFP 上看到错误、但在双工 SFP+上没有错误。 顺便说一下、XAUI 界面始终没有错误。
一方面问题明显是 SFP+ BIDI 问题,另一方面 SFP+ BIDI BER 为 ~6.7e-14(通过 PRBS 测试检查超过 24 小时),优于行业标准 1e-12。 恐怕其他 SFP+模块也会发生这种情况
是否可以在没有数据路径复位的情况下从 FIFO 故障中恢复?
在正常操作期间执行数据路径重置时、流量会大量丢失。
此致、
Yossi