软硬件协同下PTP同步的工作过程

目录

1. 初始化阶段(协商出一个master)

2. 同步阶段(时钟同步和时间同步)

2.1 时钟同步阶段(频率同步,有相位差)

2.2 时间同步阶段(无相位差)

2.3 ACS9521的例子


1. 初始化阶段(协商出一个master)

在初始化阶段,每个被设置为master的节点都会发送包含了自身时钟参数的SYNC packets,每个接收到SYNC packets的有潜能作为master的节点的软件会将自身的时钟参数与接收到的时钟参数进行比较,如果别人家的时钟更好,该节点的软件就老实地做slave,并且不再发SYNC packets,它会暂时将这个比它更好的节点当作master,它心有不甘,它会不停地接收别人发的SYNC packets,并将它与自己的master比较,如果别人家的更好,它会毫不犹豫地转认新master,最终所有节点会找出来那个最强的节点作为master,其他的节点都是slave,都要听命于这个最强master。

2. 同步阶段(时钟同步和时间同步)

时间同步阶段分为时钟同步阶段和时间同步阶段。

2.1 时钟同步阶段(频率同步,有相位差)

这个阶段,slave根据master的时钟校准自己的时钟

1)master软件发送SYNC packets后,会设置一个标志位,以通知master硬件记录发送时间,master硬件将该时间放在一个寄存器中,master软件读取该寄存器的值,将其放在Follow_UP packets。

2)slave会捕获SYNC packets,记录自己的接收时间T2,slave之后会捕获Follow_UP packets,从中获取master软件发送SYNC packets的时间T1,slave软件会根据T1和T2计算出master使用自己的时钟时连续的packets之间的时间间隔,然后slave软件以此为目标,调整自己的时钟以达到同样的时间间隔。使用此种方法完成slave时钟校准到master时钟。
 

图2.1 时钟同步阶段图示

 

2.2 时间同步阶段(无相位差)

这个阶段,slave实现时间同步,达到完全同步至master

图2.2 时间同步阶段图示

master软件发送Sync packets,通知master硬件记录发送时间T1,slave软件通知slave硬件记录接收时间T2,master再发送Follow_Up packets,里面会携带T1,slave软件之后会返回Delay_Req packets,slave硬件会记录发送时间T3,master软件接收到Delay_Req packets后,通知master硬件记录接收时间T4,master软件再发送Delay_Response packets,里面会携带T4,slave软件接收到该packets后,它就获取到了T1、T2、T3和T4,根据下面的公式可以计算出slave需要调整的时间,最终实现时间同步。
Slave Adjust Time = - [(T2-T1) - (T4-T3)] / 2

2.3 ACS9521的例子

图 2.3 Block diagram of PTP functions

需要关注几点:

  • 当ACS9521工作在slave模式,上图红色框内的目的在于产生path delay,它用于实现slave与master的相位同步(时间同步)。
  • 当ACS9521工作在master模式,Frequency and Time Generator产生的PTPoutClk[3:0]与1PPS/1Hz/1PPns[1:0]时间同步,后者与PTPInClk[7:0]中的一个时间同步,所以最终,这三个都是时间同步的。
  • PTP Ports工作在MAC层,即是说PTP message在以太网帧中封装,使用下图的格式:

图2.4 PTP Message Over Layer 2

  • 时间戳使用Frequency and Time Generator产生的本地时间基准。

 

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力不期待

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值