40G/50G 子系统的 IEEE 1588 功能在硬件级别为出入双向提供准确的以太网帧时间戳。
时间戳根据前面定义的输入时钟源(系统定时器)来捕获。不过,此时间源必须与 SerDes 位于同一个时钟域中。您可能需要使用外部电路来重新定时。
在典型的应用中,PTP 算法(或 servo,不属于此 IP)将移除一段时间内(许多包样本)的时间戳错误。这种错误最好要尽可能小,以最大程度减少收敛时间和从时钟漂移。PTP 包通常每秒钟发射约 10 次。
所有入口帧都会获得时间戳。由您负责解读收到的帧,并确定特定帧是否含有 PTP 信息(通过其以太类型来判断)以及判断此时间戳需保留还是丢弃。
如果出口帧被标记为 PTP 帧,则为其设置时间戳。出口帧的时间戳与其用户提供的标签相匹配。
传入帧的时间戳则按照与包起始相对应的 AXI4-Stream 周期,并行显示在用户接口上。然后,您可以根据需要将时间戳添加到包上。
按照定义,时间戳的捕获时间与 SOP 通过 40G/50G High Speed Ethernet 子系统中捕获平面的时间一致,具体如下方原理图中所示:
图 1. 接收
图 2. 发射