“大白兔”:每纳秒都很重要的时候
扫描二维码
随时随地手机看文章
在围绕赛灵思FPGA及SoC器件构建的产品中,一种基于以太网的高精度时序解决方案正在进入市场。
电信和信息科学的最新发展正在推动工业时间传输要求明显接近科研应用水平。例如,即将到来的100G以太网网络及5G移动电信要求时序精度在几纳秒范围内,而用于配电的智能电网则要求亚微秒精度。高频率交易的时间戳(一般指股票交易)需要可靠的机制将时间从认证机构分配给业务中心。最后,GPS或伽利略等采用GNSS技术的定位服务都可通过高精度同步机制获得优势。
一种诞生于欧洲核研究机构CERN、名为“大白兔”的以太网技术旨在满足这些应用及其他应用的高精度时间需求。以《爱丽丝仙境奇遇记》中着迷于时间的野兔命名的“大白兔”技术基于并兼容于PTPv2(IEEE-1588v2)和同步以太网等标准机制,但经过适当修改,可实现亚纳秒精度。“大白兔”不仅天生可通过远距离链路执行自校准,而且还能够以极小的退化将时间分配给极大数量的设备。
我们的分支机构Seven Solutions SL自2009年“大白兔”技术创世以来就一直在开发该技术,其始终致力使用赛灵思全可编程解决方案将大白兔产品带入市场。我们的最新产品是ZEN(Zynq®嵌入式节点)电路板,这是一款旨在保持高精度参考时钟的时序电路板,不仅可为其它节点提供时序信息,同时还可在“大白兔”网络框架中进行自我同步。
由于价格原因,基于芯片级原子钟等高精度时钟的解决方案对于大规模采用而言成本太高。
时间简史
物理学家一直都理解时间的重要性,多年来已经发明了各种测量时间的方法。从简单的天空扫描技术(日规、测星仪)到依靠亚原子世界(原子钟)属性的复杂机制,科学家一直都在为开发精确时钟而孜孜不倦地工作。现有时钟在大约3亿年内不会有1秒的误差,这种精度在许多应用中至关重要,例如维持国家度量衡实验室时标。
不过,这些极为精确的时钟非常昂贵、脆弱,并且会占据大量的物理空间。因此它们并不适合许多现实场景。实际上大多数应用通常依赖电子产品,其包含低成本时钟(晶体振荡器)。只需花上几美元,我们就可在一大批规格各异的振荡器中做出选择。
对于简单的应用而言,振荡器的精确度已经足够了。但在许多其它需要同步通信或全局时间概念来同步工作的应用领域(分布式仪器)中,这些彼此互不相连的“自由运行时钟”就无法使用了。虽然设计人员可通过安装较好的振荡器来局部解决该问题,但在技术上这样做并非总是可行。单独的时钟仍然没有同步,即便小小的频率偏差,也会让这种方法失效。
然而由于价格原因,基于高精度时钟(如芯片级原子钟或CSAC)的解决方案对于大规模采用而言成本太高。在这些情况下,替代方法是将时钟信息从基准时钟(高稳定、一般价格昂贵)分配给网络中所有其它需要准确同步的组份。问题是我们如何才能做到?
时间传输技术
分配时间可选择多种方法。请注意分配频率(涉及通过导线发送振荡器信号)与分配相位(当事件在网络的所有组份中以极为一致的瞬间触发时)不同。
例如,我们可通过使用同轴线缆或光纤传输时钟振荡来解决第一个问题(频率分配)。在第二个场景(相位分配)中,我们不仅可在导线上编码一个脉冲,进行每秒传输,而且还可将这个脉冲作为参考,知道新的每秒开始的时间。这种技术一般被称为每秒脉冲(PPS)信号。
另外,还存在第三个问题。我们可能还需要提供时间,这不仅要让各项工作按相同时间运行,或是提供有关何时开始计数(相位)的相同参考,而且还要确保我们在所有设备中具有相同的时间。因此,可通过从中央时间服务器传播时间信息,然后测量该消息的传播时间并在每个节点上对其进行标注的方法来分配时间值。有了频率、相位(PPS)和时间这三个元素,我们就可以说网络是同步的。
目前的工业解决方案以不同的方法提供这些属性。例如,GPS设备通过提供参考频率(10至50MHz)、PPS信号和串行码来提供时间(一般基于NMEA协议)。这种方法广泛用于大量需要准确同步的系统中,因为不同仪器可以便捷连接至不同的GPS接收器。但它使用大量低级信号。在电网应用中,这些值通过名为IRIG-B的简单协议提供,其可提供时间和PPS信息。过去,IRIG-B方法一直能充分满足同步电网的需求。然而今天它不能处理“智能电网”,因为这种电网正在变得空前复杂,而且还包含需要更高精度的新型能源监控应用。
随着数据包网络的基本普及,交换网络以往使用的机制已经过发展演化,适应了数据包网络。在基于精确时间协议(PTPv2或IEEE-1588v2)加同步以太网(SynCE)的解决方案中,SDH/SONET技术也在逐渐转变。PTPv2是网络时间协议(NTP)的工业演化版,该协议被互联网用于同步整个网络中的计算机。PTPv2依靠硬件时间戳机制显著改善时间同步的精度。
第二种机制SynCE可实现在数据载体上编码时钟信号。采用这种对用户透明的方法,我们可将时钟信息和频率分配给所有设备。将PTPv2与SynCE配对,有助于我们针对电信无缝使用数据包网络。这种组合是当前电信、电网和自动化应用中最常见的解决方案。请注意,一些与相位传播及系统可扩展性有关的关键问题仍然十分重要,而且尚待解决。
科学应用及更高层次应用
许多应用都需要把参考时钟源信息传播到不同目的地点。科研机构可能是需要高精度时间分配最为严格的基础设施。从CERN的LHC加速器到CTA、SKA或KM3NeT等大型射电天文分布式设施,所有这些都需要超高精度的时间与频率分配。
但新一代IT及通信应用还需要使用目前标准方法无法实现的极高精度时间传输。例如在GPS应用领域,测量卫星信号传播时间等同于测量距离,因此定位与时间精度测量密切相关。一般来说,GNSS容易受阻塞或电子欺骗问题的影响。所以在用于时间分配时,建议重要基础设施将地面替代方案(基于光纤)用作互补冗余机制。
“大白兔”解决方案
“大白兔”()是精确时序以太网的扩展和外延。它是CERN于2009年构思的一个开放式协作软硬件项目,技术行业已急切开始参与了其发展。源代码提供在开放式硬件资源库(OHWR,)中,以鼓励不同企业及研究机构进行开发。
从一开始起,位于西班牙格拉纳达的Seven SoluTIons ()就一直在协作设计各种大白兔产品,其中包括电子产品、固件以及门控件。此外,该公司还可提供基于该技术的定制解决方案和交钥匙解决方案。
图1:白兔应用概要
作为以太网的扩展,”大白兔”技术正在接受评估,以加入高精度配置文件框架中的新一代高精度时间协议标准(IEEE-1588v3)中。标准化将有助于“大白兔”集成至未来各种不同技术中,如图1所示。
“大白兔”技术的深入介绍
“大白兔”整合大量机制,可优化其位于以太网扩展框架内的时序精度,因此可保留以太网通信结构。此外,“大白兔”还集成PTP、同步以太网以及数字双路混合器时间差异(DMTD)相位跟踪技术。
Seven SoluTIons提供的全新ZEN电路板将展示“大白兔”的主要组份如何在产品中结合(图2)。ZEN电路板以赛灵思Zynq-7000全可编程SoC为基础,内含“大白兔”内核以及可提供高精度时钟的千兆位以太网MAC实现方案。在“大白兔”内核中实现的同步机制包括以下组份:
频率同步(同步):这可通过使用SynCE实现,其可编码数据载体中的时钟信号。为确保所有节点都使用相同的频率,我们采用一个基于本地振荡器的机制,该振荡器可通过从光链路恢复的外部时钟进行控制。
相位同步:节点的物理时钟可转发至主设备组份,或从主设备组份转发至节点,以便主设备能够将该信号(来自从设备)的相位与自己的相位相比较。偏差应该与信号通过光纤的传播时间相同(使用PTP进行正确测量)。有了该信息,主设备就可确定其自己的时钟与来自从设备的时钟之间的相位差,并要求从设备将其相位转换成与主设备完全相同的值。该过程可通过在FPGA门控件中实现一个数字DMTD来数字化完成。