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.
https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1227639/dp83826e-dp83826e
器件型号:DP83826E您好!
我们的此设计基于 DP83826ERHBT
硬件端:
原理图:
e2e.ti.com/.../Ethernet-_2D00_-DP83826E.pdf
布局:RMII 布线长度
我们 在 RMII 线路上有终端电阻器、
如果我们有任何 布局问题,您能提供建议吗 ?
所有线路50欧姆控制阻抗
布线长度如上图所示
软件方面:
我们在电路板上做了一些测试、
我们在 PHY 和 PC 之间进行了环回 ——在 负载测试下运行良好
我们在 MAC 到 PHY 之间执行了环回--我们丢失了数据包
我们在 将 DP83826连接到 Xilinx zc7000系列(7030)时遇到问题。
MAC 似乎并未捕获所有接收到的数据包(Rx 数据包)。
为了排除任何与电缆相关的问题、我已断开以太网电缆连接并将 PHY 置于数字环回模式(0x16=0x104)。
即使在这种配置下、仍然会发生数据丢失。 作为验证测试、我将 MAC 本身置于回路模式、然后测试仪成功识别所有数据。
就接收停止前发送的数据量而言、数据丢失的发生不遵循一致的模式。
它可能在一秒钟后发生、甚至在几分钟后发生。 在忽略任何传入数据几分钟后、它将再次开始接收、直到下一次接收中断。
有趣的是、我在以太网链路完全建立时观察到相同的行为。 MAC 接收几个数据包、然后在一段时间内暂停接收过程(同时仍在发送数据)、
并最终恢复接收。
我还使用10M 和半双工设置进行了环回测试、但结果保持一致。
我附上了 MII 寄存器供您参考。 但是、我不认为这是问题的根本原因、因为信道在大约60%的时间内正常工作。
我怀疑 MII 设置对这种行为负责。
此外、TI 提供的 Linux 驱动程序(u-boot、kernel)也存在问题
连接的寄存器转储
e2e.ti.com/.../8lab_5F00_ti83826Registers.txt
尊敬的 Meri:
至于您的原理图和布局问题、我在下面附上了原理图和布局检查清单。 如果您有一些疑虑、请查看:
e2e.ti.com/.../0882.DP83826_5F00_Schematic_5F00_Design_5F00_Review_5F00_Checklist.xlsxe2e.ti.com/.../8765.IndustrialPHY_5F00_Layout-Review-Checklist.xlsx
关于您对数字回送封装丢失的担忧、我想问几个问题:
--
谢谢!
林希尔曼
尊敬的 Hillman:
感谢您的 快速响应
我们做了您的建议 (MII 环回)-但我们得到了相同的 结果
部分数据包丢失 -部分数据包正确 、部分数据包 损坏
还有其他想法吗?
如果 数据包损坏、如何设置引脚 RX_ERR 和 TX_ERR 作为错误指示的功能 ?
提前感谢、
迈尔
您好、Meir、
MII/RMII 接口之间的布局布线好像有问题。
--
此致、
林希尔曼
你好, 林希尔曼:
PYH 到端接 电阻器 布线的长度 为70mil 至236mil
2549mil 至2686mil 迹线的 MAC 长度端接
CLK_OUT 上的 PHY
当有数据包广播时 、引脚31为"1"
当有 否 数据包广播 引脚31为"0"
Q: VOD、VID、VOH、VIH 规格
RX_CLK
TX_CLK
端接电阻器上的探头
TXD[0]:
RxD[0]:
有没有其他的建议,如何找出什么错误?
非常感谢、
迈尔
你好, 林希尔曼:
PYH 到端接 电阻器 布线的长度 为70mil 至236mil
2549mil 至2686mil 迹线的 MAC 长度端接
CLK_OUT 上的 PHY
当有数据包广播时 、引脚31为"1"
当有 否 数据包广播 引脚31为"0"
Q: VOD、VID、VOH、VIH 规格
RX_CLK
TX_CLK
端接电阻器上的探头
TXD[0]:
RxD[0]:
有没有其他的建议,如何找出什么错误?
非常感谢、
迈尔
你好,林希尔曼:
对我们的问题是否有任何建议或解决方案?
迈尔
您好、Meir、
可以使用 IBIS 仿真对 MAC 接口进行验证。 然而奇怪的是、通信会在随机时间完全停止并恢复。 这让我觉得链接可能会掉下来。 您共享的寄存器转储是在通信良好还是通信不良期间? 您可以接受另一个寄存器转储、以便我们可以并排比较好与坏的情况吗? 请在寄存器转储中包含寄存器0x467和0x468、以便我们检查配置。
此外、请以 pdf 格式分享完整的原理图。
谢谢。
大卫
尊敬的 David:
测试场景:
我们试图 同时 ping 和读取 PHY 寄存器--转储所有寄存器
在日志中、有所有寄存器的50个转储、
e2e.ti.com/.../1016.teraterm.log
良好的 沟通
通信不良
日志中 (良好的通信 和不良的通信)
寄存器0x467:0x87
寄存器0x468:0x185
原理图
e2e.ti.com/.../7635.Ethernet-_2D00_-DP83826E.pdf
RMII 布线长度
那么您是否可以查看这些布线长度。
当 我们连接示波器探头以查看信号波形时出现的另一个问题 有时 它提高了 Ping 请求的统计信息
我们是否可以添加从 DP83826 到 RX_CLK TX_CLK 的延迟?
也许我们有布局问题 -我们如何解决它的问题?
非常感谢您的帮助。
迈尔
您好、Meir、
e2e.ti.com/.../IndustrialPHY_5F00_Layout-Review-Checklist-_2800_1_2900_.xlsx
--
谢谢!
林希尔曼
你好, 林希尔曼:
有时探测 TX_CLK 还会改善 Ping (小于 RX_CLK)、但不会始终如一地持续改进。 (非常奇怪的行为..)
PHY 到 PC 在负载测试条件下运行良好
MAC --> PHY --> PC 工作良好
从 PHY 到 MAC 似乎都存在问题、
或者直接 用100mil 来匹配它们 (TX_CLK 和 RX_CLK 布线在该组中最长)
请检查一下
感谢您的帮助。
迈尔
您好、Meir、
--
此致、
林希尔曼