0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AS三部曲之二 | TSN同步运行机制:多级设备同步如何避免误差累积?

虹科智能自动化 2025-09-25 17:32 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


引言

时间敏感网络(TSN)要求所有设备在纳秒级精度下协调工作。AS同步通过建立统一的时间基准,确保关键数据(如工业控制自动驾驶指令)在严格时间窗口内传输,避免因时钟偏差引发系统故障。在上一篇(AS三部曲之一:如何理解TSN同步概念中的时钟角色?)中,我们详细介绍了IEEE 802.1AS标准作为IEEE 1588 PTP协议的特定应用规范,在时间敏感网络(TSN)中实现纳秒级高精度时钟同步的基础概念与核心机制。


在掌握了AS的基础概念之后,深入理解其内部的同步运行机制是解锁其强大能力的关键。理解AS同步机制,不仅是掌握TSN技术精髓的核心,更是设计高可靠性实时系统的基石它解决了分布式系统中“时间一致性”的根本问题,为未来自动驾驶、工业4.0、元宇宙等低延迟高同步需求场景提供关键技术支撑。

* 不想逐字读长文?点击收听本文播客


01.

同步报文

gPTP (广义精确时间协议) 是IEEE 802.1AS标准定义的核心协议,它源于IEEE 1588 PTP,但为时间敏感网络(TSN)进行了优化,旨在实现亚微秒级的时间同步。其同步过程主要依赖于以下报文类型的交互:

930a58b8-99f2-11f0-8ce9-92fbcf53809c.png


事件报文

时间概念报文,进出设备端口时会打上精确的时间戳,用于计算主从时钟之间的时间偏移和路径延迟。事件报文包含以下4种:

Sync、Delay_Req、Pdelay_Req和Pdelay_Resp。


通用报文

非时间概念报文,进出设备端口时不会打上时间戳,用于主从关系的建立、时间信息的请求和通告。通用报文包含以下6种:

Announce、Follow_Up、Delay_Resp、Pdelay_Resp_Follow_Up、Management和Signaling。



02.

同步原理

2.1 同步机制对比

gPTP采用主从设备(Master-Slave)间双向交互时间同步报文的机制,通过记录并计算报文收发的时间戳差值,获取设备间的总往返时延。在假设双向传输路径对称的前提下,将总时延除以2即可估算单向通信延迟,进而推算出从设备相对于主设备的时间偏差。

从设备依据该偏差校准本地时钟,即可实现与主设备的高精度时间同步。相较于传统同步协议如1588v2与NTP,gPTP在实现机制上更接近PTP(精确时间协议)的局部实现。

9318ce98-99f2-11f0-8ce9-92fbcf53809c.png

NTP协议通常运行于主控板,其测量的通信时延不仅包含链路传输时间,还引入了各类内部处理延迟(如队列拥塞、软件调度及数据处理等),导致时延波动显著,且难以保证双向时延的对称性,最终限制了时间同步的精度。

PTP1588协议基于以下假设:链路延迟相对稳定(或在相邻同步间隔内变化可忽略),且双向路径时延对称。因此,该协议通过在物理链路两端最近处标记时间戳以测量链路时延,从而实现了较高的同步精度。


PTP1588协议进一步定义了两类时延测量与同步方式:

□ Delay机制:适用于端到端路径的时延测量

□ Pdelay机制:用于在两个支持该功能的通信端口之间直接测量端口到端口的传播时延(即链路延迟),此过程与端口的主从角色无关

gPTP的同步过程通常遵循经典的PTP延迟请求-响应机制,习惯性沿用Pdelay机制,作为重要区别,gPTP要求(或强烈推荐)在网络的物理层(PHY)或MAC层对PTP报文打上时间戳,而不是在操作系统或应用层。这完全消除了协议栈处理、中断延迟、系统调度等带来的不可控抖动。



2.2 同步原理

矫正对时原理

为了更深入理解同步原理的过程,我们从PTP1588这个协议出发介绍不同方式下的同步机理,然后通过实验验证gPTP的结果,证明其采用了何种方式。

932a7bfc-99f2-11f0-8ce9-92fbcf53809c.png

在同步网络设备中,当报文发出或抵达时,会依据设备本地时钟为其标记时间戳。在一步(One-Step)模式下,延迟测量机制所使用的同步(Sync)报文会直接携带其自身的发送时刻信息。而在两步(Two-Step)模式下,同步报文本身并不包含发送时间戳,设备仅记录该报文的实际发送时刻,并通过随后发出的Follow_Up报文传递这一时间信息。

主设备于t1时刻发出Sync报文。若其工作在one-step模式,该报文中会直接携带时间戳t1;若为two-step模式,则t1将在后续的Follow_Up报文中发送。

从设备在t2时刻收到Sync报文。在one-step模式下,t1可从该报文中直接提取;在two-step模式下,需等待接收Follow_Up报文以获取t1。

从设备于t3时刻向主设备发送Delay_Req报文。

主设备在t4时刻接收到该Delay_Req报文。

√ 主设备通过Delay_Resp报文将时间戳t4传送至从设备。


基于所获得的t1、t2、t3、t4四个时间戳,从设备可计算出主从设备间的平均路径延迟(Delay)及时钟偏差(Offset),进而校准自身时钟,实现与主设备的精确同步。具体计算原理如下:

9339515e-99f2-11f0-8ce9-92fbcf53809c.png

需要注意的是:结果的精度取决于时间戳的精度。它们应尽可能准确地反映发送和接收时间。从设备的偏移量和延迟计算是基于在两个不同地方获取的时间戳的差异。因此,两个时钟应使用相同的刻度,即相同的tic间隔。这是通过漂移补偿实现的:从属时钟速率通过控制环路加速或减慢。稍微不同的抽动间隔会降低结果。


设备通过协议计算出本地时钟与主时钟源之间的时间偏差,并依此对本地时钟进行校准。这一持续且周期性的同步机制,保证了从设备能够始终与主时钟保持精确的时间同步。

根据上述工作机制,精确的时间同步依赖于主时钟(Master)与从时钟(Slave)之间传输路径的时延对称性若双向传输时延存在差异,将导致同步偏差,其数值等于上行与下行时延差值的一半。因此,实现高精度时间同步的核心在于确保节点间时延保持稳定、避免抖动。尽管链路传播时延通常较为一致,但设备节点处的处理时延往往波动较大。

为此,在IEEE相关标准协议中,通过引入校正字段(correctionField)参与延迟计算,能够有效补偿时延不对称性,从而更准确地估计平均路径时延(Delay)与时钟偏移量(Offset)。

93495216-99f2-11f0-8ce9-92fbcf53809c.png

如图转发时延校正处理,在设备的入口与出口端口,系统会依次对报文中的correctionField字段进行时间补偿:入口阶段减去当前时间戳,出口阶段则加上相应时间戳。这一处理机制实际上相当于将报文在当前设备内部的转发时延值累积至校正字段(correctionField)中。


转发中继类型

端到端

端到端透明时钟更新与单个数据包传输相关的延迟的时间间隔字段。从设备通过端到端的延迟请求/延迟响应消息交换来测量到主站的延迟。端到端延迟测量的基本操作如下图所示:

935ba4ca-99f2-11f0-8ce9-92fbcf53809c.png


点对点

对等透明时钟测量与入口传输路径相关的线路延迟,并将此延迟也包括在校正字段中。TC使用Pdelay-Req/Pdelay-Resp消息测量到所有相邻时钟的链路延迟。对等透明时钟可以允许在网络拓扑更改后更快地重新配置。点对点延迟测量的基本操作如下图所示:

93699c4c-99f2-11f0-8ce9-92fbcf53809c.png

需要注意的是:IEEE 802.1AS网桥传输同步的方式非常相似,事实上,在数学上等同于IEEE 1588对等透明时钟(TC)传输同步的方式。

每座桥测量相对于其邻居的频率偏移;相对于GM的累积频率偏移以及从端口上同步消息到达与主端口上后续同步消息发送之间的时间差用于构造放置在后续消息中的同步时间。此外,相邻网桥和/或终端站之间的传播延迟是使用对等延迟机制测量的。


03.

AS同步机制测试

选取三台交换机作为测试设备,两台交换机通过时钟优先级方式进行Master和Slave设置,确立时钟角色,其中一台交换机作为DUT时间感知中继器,去传输和同步Master和Slave的时钟。

937c9662-99f2-11f0-8ce9-92fbcf53809c.png


3.1 初始化参数

进入交换机的Web管理页面,首先确认交换机设备处于出厂配置模式下,即确认AS的参数是否进行过调整。

938fa446-99f2-11f0-8ce9-92fbcf53809c.png


3.2 Mater-DUT-Slave时钟设置

根据第2节当中对于BMCA最佳主时钟选取的规则,设置IP地址192.168.4.64交换机的时钟Priority1为100,192.168.4.65交换机的时钟Priority1为默认248(作为待测DUT),192.168.4.66交换机的时钟Priority1设置为200,并开启gPTP的start功能。

此时情况下,4.64交换机的时钟作为Master存在,4.66交换机作为Slave存在,可以理解为它们作为两个OC(普通时钟存在并进行同步)。

4.65交换机作为BC(本质上它也是作为一个Slave时钟参与同步,并转发Master-slave之间的同步报文)。如下设置:

93a11f14-99f2-11f0-8ce9-92fbcf53809c.png

交换机1设置


93b7bdd2-99f2-11f0-8ce9-92fbcf53809c.png

交换机2设置


93cebdac-99f2-11f0-8ce9-92fbcf53809c.png

交换机3设置


93e57178-99f2-11f0-8ce9-92fbcf53809c.png

gPTP(802.1AS)使能开启


3.3 观察DUT&Slave同步精度

由第2节所述,AS同步精度偏移是相对于Master时钟的偏移量,所以精度误差主要由Slave计算并获得偏移结果。在RELY-TSN交换机中我们可以在Slave角色的交换机中观察相对于Master角色的时钟偏移量。

虹科合作伙伴SOC-E RelyUm系列

TSN测试方案

93fe9a04-99f2-11f0-8ce9-92fbcf53809c.png


虹科为客户提供SOC-E RelyUm系列TSN IP核、板卡、TSN交换机、测试套件等一站式解决方案,覆盖从产品研发到实际应用的全链条。

无论您处于产业链的哪个环节,是进行新产品研发,还是构建完整的应用网络,都能在我们这里找到适配的产品与服务,满足您多样化的需求。


在本次案例中,由于4.65和4.66的交换机充当Slave(DUT=BC时钟,Slave=OC时钟),所以在两台交换机的同步打印窗口查看同步精度结果。

首先观看主时钟设备的PTP clockID实例,GM clock ID以及GM present布尔值。其中PTP clockID实例为本设备的时钟源ID、GM clock ID为主时钟Master ID、GM present为false时表示本设备作为主时钟源Master设备;为ture时表示本设备作为从时钟Slave设备(外部存在Master)。同时查看OC时钟(Master&Slave clock)和BC构建生成的同步树,即三台交换机的同步端口状态(Master/Slave-port)。

942180be-99f2-11f0-8ce9-92fbcf53809c.png


9431f7b4-99f2-11f0-8ce9-92fbcf53809c.png

Master时钟状态


94448f5a-99f2-11f0-8ce9-92fbcf53809c.png

DUT slave时钟状态


947b98ba-99f2-11f0-8ce9-92fbcf53809c.png

Slave时钟状态


结果显示,Slave设备(交换机3)的GM clock ID为Mater设备(交换机1)的PTP clockID实例,并且GM present=true,同步精度GM offset为3ns左右。

DUT设备(交换机2)GM clock ID为Mater设备(交换机1)的PTP clockID实例,并且GM present=true,同步精度GM offset为3ns左右。

Master设备(交换机1)的Port-1端口作为Master-port,DUT设备(交换机2)的Port-0端口作为Slave-port,用于和上一极时钟节点(交换机1)连接,Port-1端口作为master-port,用于和下一级时钟节点进行连接同步。Slave设备(交换机3)的Port-0端口作为slave-port,用于和上一级时钟节点(DUT)进行连接同步。整体同步树与第2节中描述一致。



3.4 观察同步报文

利用Slave(交换机3)设备的端口进行端口镜像,此例中采用port-1进行端口镜像,对port-0同步端口进行同步报文捕获。Slave设备开始port-1的镜像捕获,捕获port-0端口的Ingress和Egress帧,如图所示。

94899870-99f2-11f0-8ce9-92fbcf53809c.png

Slave设备(交换机3)的port-1接入电脑PC,并通过wireshark进行报文捕获,如图所示。

949a200a-99f2-11f0-8ce9-92fbcf53809c.png94b6cc78-99f2-11f0-8ce9-92fbcf53809c.png

在捕获的报文中我们查看用于AS同步的几条特定报文,Sync,Announce、Follow_Up、Pdelay_Req和Pdelay_Resp、Pdelay_Resp_Follow_Up。

特别说明的是,RELY-TSN交换机采用的是2步法P2P对等延迟计算方式,该方式是指Pdelay方式下的Pdelay_Resp报文,不带有本报文发送时刻的时间戳,设备只是记录Pdelay_Resp报文发送时的时间,由后续的Pdelay_Resp_Follow_Up报文带上Pdelay_Resp报文发送时刻的时间戳。

Correctionfield的修正值有数值,该测试案例中存在DUT这个边界时钟,同步报文在转发过程需要进行对等延迟计算和驻留延迟补偿等,从而添加到修正报文当中。此外我们还可以在看到用于同步计算的preciseOriginTimestamp (seconds)和preciseOriginTimestamp。


结语.

AS同步机制的成熟,标志着TSN技术在自动驾驶、工业4.0和元宇宙等领域迈出关键一步。其纳秒级精度和轻量化架构,解决了“时间一致性”这一分布式系统的根本挑战。未来,随着TSN生态的扩展,AS协议有望进一步优化低延迟高同步需求场景,推动网络从“尽力而为”向“确定性传输”的范式转变。敬请期待“AS三部曲”终篇,我们将深入解析协议优化与前沿应用。





作者简介

罗显志

虹科高级技术工程师,专注TSN技术领域,具有丰富的理论基础和应用经验,提供专业的TSN测试和培训服务。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AS
    AS
    +关注

    关注

    0

    文章

    30

    浏览量

    26453
  • 时钟同步
    +关注

    关注

    0

    文章

    141

    浏览量

    13607
  • TSN
    TSN
    +关注

    关注

    3

    文章

    296

    浏览量

    18063
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    油烟机选购三部曲

    油烟机选购三部曲厨房油烟含有20多万种有害物质,不仅会致癌,对肠道、大脑神经等也有很大的危害。厨房油烟已成为人体健康的隐形杀手。而肩负清洁厨房油烟的重任,一款好的吸油烟机将为你的生活增色不少
    发表于 12-22 14:45

    三部曲(全书)

    天嵌的三部曲
    发表于 07-01 16:41

    冒泡排序法三部曲の一、冒泡排序原理版

    的类型就多进行3x4次排序,为了解决这个问题,对冒泡排序法进行进一步优化,将在冒泡排序法三部曲、冒泡排序优化中解决这个问题。
    发表于 09-12 10:30

    冒泡排序法三部曲の冒泡排序原理版(一)

    ;, array[n]);printf("\t");//空格一次}return 0;}运行结果上述代码没有问题,但是如果数组是类似{1,2,3,5,4}这样的类型就多进行3x4次排序,为了解决这个问题,对冒泡排序法进行进一步优化,将在冒泡排序法三部曲
    发表于 09-12 10:42

    冒泡排序法三部曲冒泡排序法的优化

    本帖最后由 卢小 于 2019-9-14 11:23 编辑 环境:VS2017C language在冒泡排序法三部曲の一冒泡排序法的原理之后,其实存在一些可优化的问题,首先就是假如是
    发表于 09-13 12:17

    CPU的基本结构和运行机制

    目录一. CPU的基本结构和运行机制参考《ARM微控制器与嵌入式系统--清华》一. CPU的基本结构和运行机制分析其中的CPU:(ALU、寄存器组、控制单元是必要的,其他非必要)一个完整的CPU:将
    发表于 11-03 09:22

    一种消除误差累积多级快速独立分量分析算法

    针对传统串行FastICA 算法存在误差累积的缺点,该文提出一个多级结构的快速独立分量分析算法(MSFICA)。该算法采用两级结构来消除误差累积
    发表于 02-10 14:30 9次下载

    荣耀Note9什么时候上市?荣耀三部曲华为荣耀Note9即将发布,配置、渲染图、价格消息汇总

    喜欢全面屏新机?喜欢大屏手机?那这部6.6英寸的超大屏全面屏手机真的是不容错过。这就是华为即将发布的最新旗舰,荣耀三部曲之一的---荣耀Note 9。
    发表于 08-02 10:16 4130次阅读

    智慧消防落地逃不开的三部曲是哪三部曲

    智慧消防应用落地,只有攻破数据、算法、标准大关键问题,后期贴近实战的产品、场景化应用解决方案等才可能真正行之有效。
    发表于 07-16 14:55 1017次阅读

    存储三部曲的第一——NAS

    目前数据存储的形态,主要就是SAN、NAS和OBJ这种。作为存储三部曲的第一,先来说说我最喜欢的NAS。 NAS(Network Attached Storage),网络附加存储。简单的说
    的头像 发表于 12-03 14:11 3865次阅读

    存储三部曲最后一SAN的现状如何?

    今天分享存储三部曲的最后一,高冷的SAN。 SAN(Storage Area Network),存储局域网络,一种主要基于FC(FibreChannel)的光纤通道存储技术,用于SAN中的存储就是
    的头像 发表于 12-03 14:15 3449次阅读

    php运行机制和原理

    PHP是一种在服务器端执行的脚本语言,它被广泛用于开发动态网站。它的运行机制和原理非常重要,因为它决定了PHP脚本如何被解释执行和与服务器进行交互。 PHP的运行机制 PHP脚本的运行机制涉及到以下
    的头像 发表于 12-04 15:28 1775次阅读

    虹科干货 | AS三部曲之一:如何理解TSN同步概念中的时钟角色?

    导读随着时间同步需求的增长,IRIG-B、LORAN-C、NTP、PTP、GPS同步和SyncE等技术相继被提出并应用。然而,这些方案要么难以满足高精度要求,要么实现成本过高,限制了它们在低成本
    的头像 发表于 08-13 17:34 1456次阅读
    虹科干货 | AS<b class='flag-5'>三部曲</b>之一:如何理解<b class='flag-5'>TSN</b><b class='flag-5'>同步</b>概念中的时钟角色?

    AS三部曲收官 | TSN精度突破:IEEE 802.1AS如何实现纳秒级时间同步

    同步协议,以下简称AS)同步逻辑,虹科AS三部曲已来到终章,先快速衔接前两篇核心:第一篇《如何理解TSN同步概念中的时钟角色?》拆解了
    的头像 发表于 11-05 17:03 1609次阅读
    AS<b class='flag-5'>三部曲</b>收官 | <b class='flag-5'>TSN</b>精度突破:IEEE 802.1AS如何实现纳秒级时间<b class='flag-5'>同步</b>?

    audio核心库的运行机制与技术要点

    音频系统核心库的稳定运行,是实现低延迟、高保真音频体验的前提。其内部通过精密的线程调度、缓冲区管理与设备驱动交互,保障音频数据的连续性与同步性。本文将聚焦其运行机制,逐层拆解关键技术要
    的头像 发表于 02-06 19:17 191次阅读
    audio核心库的<b class='flag-5'>运行机制</b>与技术要点