IEEE1588
21 Nov 2024
时钟戳收发
IEEE1588 时钟戳的收发,是指在 MAC 发送或接收到报文后,则触发时钟戳的捕捉,此时对应的发送或接收描述符会将相应的 Timestamp 信息记录在 TDES6、TDES7 和 RDES6、RDES7 中。
为了让 DMA 能够记录 Timestamp,需要配置以下信息:
- 寄存器 ALT_DES_SIZ = 1
- 描述符的大小为 8 words
- 使能 TDES0 的 TTSE(Transmit Timestamp Enable)。
为了接收时间戳信息,需在 Timestamp 控制寄存器上使能对应的接收帧类型。
时钟校准
IEEE1588 功能支持对内部系统时钟的校准:
- 粗糙校准:通过 PTP 协议报文的交互计算出时钟偏差,通过 Update 寄存器更新系统时间。
- 精准校准:通过 PTP 协议报文的交互计数时钟偏差的频率比,更新 Timestamp Addend 寄存器,实现同步时钟。