1. 时钟相位错误导致数据收发错误。
现象a : soc环境内serdes block, 环境外对接serdes, 在serdes建链过程中发生重复的建链和掉链现象, serdes是外部厂商IP核, 内部代码不可见。 经mac解包发现接收到的数据有错误, 但单个serdes仿真没有错误, 此情况非常难定位数据错误发生在哪里。
解决a: 发现smac中用于发送的数据的时钟有毛刺,导致数据发送错误。
总结: 通常情况下, 有两根时钟, 一根标准时钟, 一根实际时钟用于发送或接收数据, 实际时钟相对于标准时钟都有频率偏移, 这个偏移超过可控制范围会产生毛刺, 该毛刺会导致发送数据时在正常数据之间夹杂非正常数据,导致各种各样的问题, 难以定位。