388S该款芯片的产品在组网测试时,遇到了错误帧计数异常现象,描述如下:
在ECAT分路器之后的第一个从站(L7ECS,芯片388S)中,0x300寄存器存在错误计数;而后续的各个站点的0x300寄存器也都显示有计数值,但0x308寄存器却没有计数值。为什么在另一个分支之后的第一个0x300寄存器会有计数值,而后面的0x308寄存器才有计数值呢?
感谢您对TI产品的关注。我们正在核实您的问题,请等待我们的答复。
您好
据我们的专家分析,0x300/301的计数增加分别由CRC错误和PHY接收错误引起。ESC会在转发数据包给下级设备时附加一个奇偶位,以标记错误来源。因此,后续设备会递增转发错误计数器0x308/309。TWITTER设备在无关联PHY错误的情况下持续产生CRC错误。
Daniel 说:TWITTER设备在无关联PHY错误的情况下持续产生CRC错误。
这个我知道,但是根据统计结果,这个错误在经过分支器后,传递给L7ECS的错误,记录在0x300/301,而在这个L7ECS后的两台L7ECS为何记录错误数还在0x300/301.而不是0x308。在Excel表格截图的标记红色方框可以看到差异,后面记录在0x308,只有使用388s芯片的L7ECS记录在0x300/301.
PHY中是否启用了奇数半字节检测?
PHY是DP83822,在其手册里CR2(0xA)寄存器描述中,bit1默认为0,是开启奇数半字节检测的(未改其配置,均保持默认)。