CN113381829B - 一种时间同步的方法及计算机设备 - Google Patents
一种时间同步的方法及计算机设备 Download PDFInfo
- Publication number
- CN113381829B CN113381829B CN202110177400.XA CN202110177400A CN113381829B CN 113381829 B CN113381829 B CN 113381829B CN 202110177400 A CN202110177400 A CN 202110177400A CN 113381829 B CN113381829 B CN 113381829B
- Authority
- CN
- China
- Prior art keywords
- synchronization signal
- clock synchronization
- clock
- network interface
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 32
- 230000004044 response Effects 0.000 claims abstract description 76
- 238000012545 processing Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 25
- 239000003550 marker Substances 0.000 description 22
- GWWNCLHJCFNTJA-UHFFFAOYSA-N nicandrenone-2 Natural products C12OC2C2(O)CC=CC(=O)C2(C)C(CCC23C)C1C3CCC2(O)C(C)C1OC(O)C2(C)OC2(C)C1 GWWNCLHJCFNTJA-UHFFFAOYSA-N 0.000 description 21
- 101100388299 Arabidopsis thaliana DTX54 gene Proteins 0.000 description 18
- 101100294133 Arabidopsis thaliana NIC2 gene Proteins 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- PWHVEHULNLETOV-UHFFFAOYSA-N Nic-1 Natural products C12OC2C2(O)CC=CC(=O)C2(C)C(CCC2=C3)C1C2=CC=C3C(C)C1OC(O)C2(C)OC2(C)C1 PWHVEHULNLETOV-UHFFFAOYSA-N 0.000 description 9
- 101100388291 Arabidopsis thaliana DTX49 gene Proteins 0.000 description 7
- 101100268840 Danio rerio chrna1 gene Proteins 0.000 description 7
- 101150065731 NIC1 gene Proteins 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000001152 differential interference contrast microscopy Methods 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- WYDFSSCXUGNICP-UHFFFAOYSA-N 24-methylenecholesta-5,7-dien-3beta-ol Natural products C1C2(C)OC2(C)C(O)OC1C(C)C1C2(C)CCC3C4(C)C(=O)C=CCC4(O)C4OC4C3C2CC1 WYDFSSCXUGNICP-UHFFFAOYSA-N 0.000 description 3
- WYDFSSCXUGNICP-CDLQDMDJSA-N C[C@@H]([C@H]1CC[C@H]2[C@@H]3[C@@H]4O[C@@H]4[C@@]4(O)CC=CC(=O)[C@]4(C)[C@H]3CC[C@]12C)[C@H]1C[C@]2(C)O[C@]2(C)C(O)O1 Chemical compound C[C@@H]([C@H]1CC[C@H]2[C@@H]3[C@@H]4O[C@@H]4[C@@]4(O)CC=CC(=O)[C@]4(C)[C@H]3CC[C@]12C)[C@H]1C[C@]2(C)O[C@]2(C)C(O)O1 WYDFSSCXUGNICP-CDLQDMDJSA-N 0.000 description 3
- 101000583616 Homo sapiens Polyhomeotic-like protein 2 Proteins 0.000 description 3
- 102100030903 Polyhomeotic-like protein 2 Human genes 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 101100388300 Arabidopsis thaliana DTX55 gene Proteins 0.000 description 2
- 101100294134 Arabidopsis thaliana NIC3 gene Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 101000957724 Catostomus commersonii Corticoliberin-1 Proteins 0.000 description 1
- 108091006146 Channels Proteins 0.000 description 1
- 101100297421 Homarus americanus phc-2 gene Proteins 0.000 description 1
- 101100073891 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) nic-3 gene Proteins 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0697—Synchronisation in a packet node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
- H04J3/0614—Systems characterised by the synchronising information used the synchronising signal being characterised by the amplitude, duration or polarity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0673—Clock or time synchronisation among packet nodes using intermediate nodes, e.g. modification of a received timestamp before further transmission to the next packet node, e.g. including internal delay time or residence time into the packet
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
在一个实施方式中,计算机设备包括第一NIC,其包括至少一个网络接口端口,用于使用包括主时钟的第一分组数据网络(PDN)传输数据以提供时钟同步信号S1;第一物理硬件时钟(PHC),用于响应于S1保持时间值T1,以及第一时钟控制器,用于响应于S1产生时钟同步信号S2,S2具有响应于S1设置的频率,并通过连接将S2发送到第二NIC,其包括至少一个网络接口端口以使用第二PDN传输数据,第二PHC和第二时钟控制器,用于接收S2,响应于S2使用时间值T2更新第二PHC,响应于T2将另一时钟同步信号发送到第二PDN中的网络节点,第二NIC充当第二PDN中的主时钟。
Description
技术领域
本发明涉及计算机网络,特别但非排他地涉及计算机网络中的同步计时。
背景技术
在计算机网络中,每个节点(诸如,交换机或端点)通常都有自己的实时时钟。在许多应用中,希望不同节点的实时时钟精确地同步。然而,由于在节点之间分发时钟同步消息所涉及的延迟和抖动,可能难以实现这种同步。
精确时间协议(PTP)被认为是此问题的解决方案。PTP在IEEE标准1588-2002中定义,该标准通过引用并入本文。该协议使网络节点能够使用节点和主设备之间的消息传递,以将其各自时钟的偏移量确定为纳秒级的精度水平。为了获得测量时钟偏移量时的最大精度,通常使用基于硬件的时间戳,例如Weibel和Bechaz在2004年IEEE1588会议(2004,9月28日)上的“ImplementationandPerformanceofTimeStampingTechniques(时间戳技术的实现和性能)”中所述的,其通过引用并入本文。
IEEE 1588标准描述了用于时钟分发的层级式主从架构。在这种架构下,时间分发系统由一个或多个网段和一个或多个时钟组成。普通时钟是具有单个网络连接的设备,并且是同步参考的主机或从机。边界时钟(BC)具有多个网络连接,并且将一个网段精确地同步到另一个网段。为每个网段选择一个同步主机。根计时参考称为超主(GM),其将同步信息传输到位于其网段上的时钟。该段上存在的边界时钟然后将准确的时间中继到其也连接到的其他段。
网络接口控制器(NIC)装置可以包括单个硬件时钟,例如精确时间协议(PTP)硬件时钟(PHC),或每个以太网端口一个硬件时钟。PHC是硬件时钟(例如,包括振荡器和计数器),其根据任何合适的协议或格式(例如,但不限于PTP格式)运行。PHC被同步到网络中的主机。每个网络主机通常运行时钟同步客户端,例如Linux内核中的PTP客户端(例如ptp41),其与分组数据网络中某处的BC或GM通信,例如,使用PTP获得消息来接收来自BC或GM的时间值。NIC可以使用接收到的时间值来更新其本地PHC。在某些应用中,NIC的PHC可以训练NIC服务的处理装置的系统时钟(x86)。
Kagan的美国专利8,370,675描述了一种时钟同步的方法,该方法包括计算实时时钟电路的本地时钟时间和参考时钟时间之间的偏移值,并将该偏移值加载到与实时时钟电路相关的寄存器中。然后将本地时钟时间与寄存器中的值相加,以给出与参考时钟同步的本地时钟时间的调整值。
发明内容
根据本公开的实施方式,提供了一种计算机设备,包括第一网络接口控制器,其包括至少一个第一网络接口端口,其被配置为使用第一分组数据网络(PDN)传输数据,所述第一PDN包括主时钟,所述主时钟被配置为提供时钟同步信号S1,第一连接器,其被配置为连接到连接,第一物理硬件时钟(PHC),其被配置为响应于所述时钟同步信号S1而维持时间值T1,以及第一时钟控制器,其被配置为响应于接收到的时钟同步信号S1产生时钟同步信号S2,所述时钟同步信号S2具有响应于接收到的时钟同步信号S1而被设置的频率,并且通过所述第一连接器并通过所述连接将所述时钟同步信号S2发送至第二网络接口控制器,以及所述第二网络接口控制器,其包括至少一个第二网络接口端口,其被配置为使用与所述第一PDN不同的第二PDN来传输数据,第二连接器,其被配置为连接到所述连接,第二PHC,以及第二时钟控制器,其被配置为:接收来自所述第二连接器的时钟同步信号S2,响应于接收到的时钟同步信号S2,使用时间值T2更新所述第二PHC,响应于所述时间值T2向所述第二PDN中的网络节点发送另一个时钟同步信号,使得所述第二网络接口控制器被配置为充当所述第二PDN中的主时钟。
此外,根据本公开的实施方式,所述连接包括同轴射频(RF)电缆,所述第一连接器包括第一同轴RF连接器,其被配置为连接到所述同轴RF电缆,所述第一时钟控制器被配置为通过所述第一同轴RF连接器和所述同轴RF电缆发送所述时钟同步信号S2,所述第二连接器包括第二同轴RF连接器,所述第二同轴RF连接器被配置为连接到所述同轴RF电缆,所述第二时钟控制器被配置为从所述第二同轴RF连接器接收所述时钟同步信号S2。
进一步根据本公开的实施方式,该设备包括所述同轴RF电缆,其连接在所述第一同轴RF连接器和所述第二同轴RF连接器之间。
另外,根据本公开的实施方式,所述第一时钟控制器被配置为接收所述时钟同步信号S1;以及响应于所述时钟同步信号S1使用所述时间值T1更新所述第一PHC。
此外,根据本公开的实施方式,所述第一时钟控制器被配置为从所述第一PHC读取所述时间值T1,以及响应于所述读取时间值T1产生所述时钟同步信号S2。
进一步根据本公开的实施方式,所述第一时钟控制器被配置为编码所述时钟同步信号S2中的频率信息,以及使用至少一个标记脉冲编码所述时钟同步信号S2中的相位信息,并且所述第二时钟控制器被配置为解码来自所述时钟同步信号S2的频率信息,以及响应于所述至少一个标记脉冲解码来自所述时钟同步信号S2的相位信息。
又进一步根据本公开的实施方式,所述第一时钟控制器被配置为产生指示所述时间值T1的相位值的相位值信号,以及将所述相位值信号与所述时钟同步信号S2带外发送至所述第二时钟控制器,并且所述第二时钟控制器被配置为根据在所述时钟同步信号S2中检测到至少一个标记脉冲的位置,响应于所述相位值对时间值T2的更新进行计时。
另外,根据本公开的实施方式,该设备包括中央处理单元,其中所述第一时钟控制器被配置为经由所述CPU将所述相位值信号发送至所述第二时钟控制器。
此外,根据本公开的实施方式,所述第一时钟控制器被配置为通过调制所述时钟同步信号S2的至少一个脉冲的宽度和/或幅度,使用所述至少一个标记脉冲,编码所述时钟同步信号S2中的所述相位信息,并且所述第二时钟控制器被配置为测量所述时钟同步信号S2中的脉冲的宽度和/或幅度,以识别所述至少一个标记脉冲。
此外,根据本公开的实施方式,所述第一时钟控制器被配置为响应于标记函数,使用标记脉冲的模式编码所述时钟同步信号S2中的所述相位信息,并且所述第二时钟控制器被配置为找到在预定的相关阈值内与所述标记脉冲的模式匹配的所述时钟同步信号S2的一部分,以及根据所述时钟同步信号S2中检测到匹配部分的位置,响应于所述相位值对所述时间值T2的更新进行计时。
又进一步根据本公开的实施方式,所述标记函数基于Walsh函数。
另外,根据本公开的实施方式,所述第二网络接口控制器包括被配置为连接到第二连接的另一连接器,以及所述第二时钟控制器被配置为响应于所述时钟同步信号S2而提供时钟同步信号S3,以及在所述另一连接器和所述第二连接上发送所述时钟同步信号S3,所述设备还包括第三网络接口控制器,包括第三连接器,其被配置为连接到所述第二连接,至少一个第三网络接口端口,其被配置为使用第三PDN传输数据,第三PHC和第三时钟控制器,其被配置为从所述第三连接器接收所述时钟同步信号S3,响应于接收到的时钟同步信号S3,使用时间值T3更新所述第三PHC,响应于所述时间值T3向所述第三PDN中的网络节点发送时钟同步信号,使得所述第三网络接口控制器被配置为充当所述第三PDN中的主时钟。
根据本公开的另一实施方式,还提供了一种时间同步的方法,包括:使用连接将第一网络接口控制器与第二网络接口控制器连接;将所述第一网络接口控制器的至少一个第一网络接口端口连接至第一分组数据网络(PDN);将所述第二网络接口控制器的至少一个第二网络接口端口连接至第二PDN;通过所述至少一个第一网络接口端口从所述第一PDN中的主时钟接收时钟同步信号S1;通过所述第一网络接口控制器响应于接收到的时钟同步信号S1产生时钟同步信号S2,所述时钟同步信号S2具有响应于接收到的时钟同步信号S1而被设置的频率;将所述时钟同步信号S2发送至所述第二网络接口控制器;通过第二网络接口控制器接收所述时钟同步信号S2;响应于接收到的时钟同步信号S2,使用时间值更新所述第二网络接口控制器中的物理硬件时钟(PHC);和响应于所述时间值,将另一个时钟同步信号发送到所述第二PDN中的网络节点,使得所述第二网络接口控制器充当所述第二PDN中的主时钟。
此外,根据本公开的实施方式,该方法包括使用同轴射频(RF)电缆将所述第一网络接口控制器与所述第二网络接口控制器连接,并且其中所述发送包括通过所述同轴RF电缆发送所述时钟同步信号S2。
进一步根据本公开的实施方式,该方法包括响应于所述时钟同步信号S1使用时间值更新所述第一网络接口的PHC。
仍然根据本公开的实施方式,该方法包括从所述第一网络接口控制器的PHC读取所述时间值;以及响应于所述读取时间值产生所述时钟同步信号S2。
另外,根据本公开的实施方式,该方法包括:由所述第一网络接口控制器编码所述时钟同步信号S2中的频率信息,以及使用至少一个标记脉冲编码所述时钟同步信号S2中的相位信息;以及由所述第二网络接口控制器解码来自所述时钟同步信号S2的频率信息,以及响应于所述至少一个标记脉冲解码来自所述时钟同步信号S2的相位信息。
此外,根据本公开的实施方式,该方法包括由所述第一网络接口控制器产生指示相位值的相位值信号;以及将所述相位值信号与所述时钟同步信号S2带外发送至所述第二网络接口控制器,并根据在所述时钟同步信号S2中检测到至少一个标记脉冲的位置,响应于所述相位值对时间值的更新进行计时。
进一步根据本公开的实施方式,所述编码包括通过调制所述时钟同步信号S2的至少一个脉冲的宽度和/或幅度,使用所述至少一个标记脉冲,编码所述时钟同步信号S2中的所述相位信息,以及所述方法还包括由所述第二网络接口控制器测量所述时钟同步信号S2中的脉冲的宽度和/或幅度,以识别至少一个标记脉冲。
仍然根据本公开的实施方式,所述编码包括响应于标记函数,使用标记脉冲的模式编码所述时钟同步信号S2中的所述相位信息,所述方法还包括:由所述第二网络接口控制器找到在预定的相关阈值内与所述标记脉冲的模式匹配的所述时钟同步信号S2的一部分,并且其中计时包括根据所述时钟同步信号S2中检测到匹配部分的位置,响应于所述相位值对所述时间值的更新进行计时。
另外,根据本公开的实施方式,所述标记函数基于Walsh函数。
此外,根据本公开的实施方式,该方法包括将所述第二网络接口控制器与第三网络接口控制器连接;将所述第三网络接口控制器的至少一个第三网络接口端口连接至第三PDN;响应于所述时钟同步信号S2提供时钟同步信号S3;将所述时钟同步信号S3发送至所述第三网络接口控制器;通过所述第三网络接口控制器接收所述时钟同步信号S3;响应于接收到的时钟同步信号S3,使用时间值T3更新所述第三网络接口控制器中的物理硬件时钟(PHC);以及响应于所述时间值T3,将另一时钟同步信号发送至所述第三PDN中的网络节点,使得所述第三网络接口控制器充当所述第三PDN中的主时钟。
附图说明
结合附图从下面的详细描述中将理解本发明,其中:
图1是根据本发明实施方式构造和操作的时间同步系统的框图;
图2是包括图1的系统的设置方法中的步骤的流程图;
图3是包括由图1的系统中的网络接口控制器执行的方法中的步骤的流程图;
图4是在图1的系统中使用的时钟同步信号的示意图;
图5是在图1的系统中使用的替代时钟同步信号的示意图;
图6是包括由图1的系统中的另一网络接口控制器执行的方法中的步骤的流程图;
图7是示出图6的流程图的步骤的相关图的示意图;以及
图8是根据本发明的替代实施方式构造和操作的时间同步系统的框图。
具体实施方式
概述
在一些系统中,例如,可以存在连接到单个机架中的相应服务器的相应网络接口控制器(NIC),或者连接到单个服务器的多个NIC,例如以容纳高带宽和/或何时服务器布置用作多个网络之间的网关。例如,第一NIC可以连接到一个网络,并且第二NIC可以连接到第二网络。连接到第一NIC的网络可以是PTP同步网络,而连接到第二NIC的网络不是。在两个网络中分别提供PTP同步可能是该问题的昂贵解决方案。
本发明的实施方式提供了NIC(例如,NICI和NIC2)之间的时间同步(频率和相位),以将PTP功能从PTP同步网络(连接到NIC 1)转移到非PTP同步网络(连接到NIC2),使得NIC2充当与其连接的网络的PTP主机,实际上使非PTP同步网络成为PTP同步网络。
由于NIC是两个离散的硬件装置,因此以准确的方式对其进行同步存在挑战。通过网络接口端口连接NIC并通过以太网同步通常不是可行的解决方案,因为网络接口端口是用于通用网络流量的有限资源,并且大多数网络管理员不愿为此目的而放弃网络接口端口。通过服务器经由其他技术(例如,外围组件高速互连(PCie)、快速通道互连(QPI)Nvlink、计算高速链接(CXL)、加速器高速缓存一致性互连(CCIX)等)来连接NIC通常将不提供快速或精确同步,例如,抖动可能为毫秒级。
本发明的实施方式通过使用同轴RF电缆(例如SMA电缆,例如RG316电缆)经由诸如经由其同轴射频(RF)连接器(例如,SMA(超微型版本A)连接器)的连接(例如,专用连接)或任何适当的连接(例如,任何适当的电缆或互连)来连接NIC,并通过专用连接(例如,同轴RF电缆)将NIC1到NIC2的时间同步来解决上述问题。同轴RF连接器通常称为PPS输出和PPS输入,其中PPS表示每秒脉冲。PPS输出和输入连接器通常用于诊断以测量两个时钟之间的准确性,或用于接收GPS信号。因此,使用同轴RF连接器进行时钟同步通常不会影响NIC的功能。本发明的实施方式使用同轴RF连接器来连接NIC,同时将每秒使用的脉冲提高到数千个PPS(KPPS)或数百万个PPS(MPPS)。
在一些实施方式中,NICI从其网络中的主时钟接收时间同步信号,并使用该信号来更新其PHC。NIC1产生时间同步信号,以通过同轴RF电缆发送到NIC2,以向NIC2提供频率和相位信息。可以将其他相位信息带外发送到时间同步信号(例如,经由NIC的PCIe接口以及经由托管NIC的服务器的一个或多个CPU)。NIC2可选地结合带外相位信息,从接收到的时间同步信号中解码频率信息和相位信息。NIC2然后基于解码的频率和相位信息更新其PHC,并且还充当其网络的主时钟,例如PTP主机。
在一些实施方式中,一种计算机设备包括至少一个中央处理单元(CPU)、NIC1和NIC2。NIC1包括一个或多个网络接口端口,这些端口可使用第一分组数据网络(PDN)传输数据。第一PDN包括提供时钟同步信号S1的主时钟。NIC1还包括连接到同轴RF电缆的同轴RF连接器,以及PHC(例如,PHCl),其响应于所接收的时钟同步信号S1而维持时间值T1。在说明书和权利要求书中使用的术语“时间值”被定义为包括相位值和/或频率值。NIC1还包括时钟控制器,该时钟控制器响应于所接收的时钟同步信号S1产生时钟同步信号S2,并通过同轴RF连接器和同轴RF电缆发送时钟同步信号S2。NIC2包括连接到同轴RF电缆的同轴RF连接器以接收时钟同步信号S2,以及一个或多个网络接口端口,用于使用第二PDN传输数据。NIC2还包括PHC(例如,PHC2)和时钟控制器,该时钟控制器接收时钟同步信号S2,响应于所接收的时钟同步信号S2使用时间值T2更新PHC2,并响应于时间值T2将另一时钟同步信号发送到第二PDN中的网络节点,使得NIC2充当第二PDN中的主时钟。
在一些实施方式中,NIC 1的时钟控制器编码时钟同步信号S2中的频率信息以及使用至少一个标记脉冲,例如通过调制时钟同步信号S2的至少一个脉冲的宽度和/或幅度,或者通过使用适当的标记函数(例如但不限于Walsh函数)将标记脉冲的模式添加到时钟同步信号S2编码时钟同步信号S2的相位信息。在一些实施方式中,时钟同步信号S2具有响应于所接收的时钟同步信号S1设置的频率(即,时钟同步信号S2中的频率信息或根据时间值T1的频率)。
NIC2的时钟控制器从时钟同步信号S2解码频率信息,并且响应于标记脉冲,从时钟同步信号S2解码相位信息。作为解码的一部分,NIC2的时钟控制器可以测量时钟同步信号S2中的脉冲宽度和/或幅度,以识别标记脉冲。当标记脉冲被编码为模式时,NIC2的时钟控制器在预定的相关阈值内找到与标记脉冲的模式匹配的时钟同步信号S2的一部分。
在一些实施方式中,NIC1的时钟控制器产生指示时间值T1的相位值的相位值信号,并例如经由服务器设备的CPU将该相位值信号与时钟同步信号S2带外发送到NIC2的时钟控制器。通过NIC2的时钟控制器对时钟同步信号S2中的标记脉冲的检测,触发NIC2的时钟控制器以根据包括在相位值信号中的相位值来更新PHC2。换句话说,NIC2的时钟控制器根据在时钟同步信号S2中检测到标记脉冲的位置(例如,其中找到具有调制的宽度和/或幅度的脉冲,或者找到与标记脉冲模式匹配的一部分),基于相位值(来自相位值信号)对PHC2的更新进行计时。因此,可以将相位值信号视为长期相位信息,将标记脉冲视为短期相位信息。
在一些实施方式中,可以使用以上方法将两个以上的NIC链接在一起。例如,NIC2的PPS输出通过同轴RF电缆连接到另一NIC(例如,NIC3)的PPS输入,并且时间同步信号从NIC2发送到NIC3,以便NIC3充当其网络的主时钟(例如,PTP主机)等。
系统描述
通过引用并入本文的文件应被认为是本申请的组成部分,除了在这些并入文件中以与本说明书中明确或隐含的定义相抵触的方式定义任何术语的范围内,应该仅考虑本说明书中的定义。
现在参考图1,其是根据本发明的实施方式构造和操作的时间同步系统10的框图。时间同步系统10包括计算机服务器设备12,该计算机服务器设备12包括中央处理单元(CPU)14、网络接口控制器16-1和网络接口控制器16-2。计算机服务器设备12被示为单个服务器。在一些实施方式中,相应网络接口控制器16可以被布置在具有相应CPU的相应服务器中,例如,在同一机架(未示出)中。
网络接口控制器16-1包括一个或多个网络接口端口18-1,其被配置为在CPU 14和分组数据网络(PDN)20-1之间传输数据。PDN 20-1包括主时钟22,该主时钟22被配置为提供时钟同步信号S1,该时钟同步信号S1通常包括根据任何适当标准(例如PTP)的频率和相位信息。网络接口控制器16-1还包括配置为连接到同轴RF电缆26的同轴(射频)RF连接器24-1(在图1中示为CRF-0)和配置为响应于时钟同步信号S1维持时间值T1的物理硬件时钟(PHC)28-1。图1所示的同轴RF连接器24-1是同轴RF输出连接器。网络接口控制器16-1还可包括同轴RF输入连接器。可以根据任何适当的标准,例如但不限于SMA(子微型版本A)来提供同轴RF连接器24-1和同轴RF电缆26(例如,RG316电缆)。
网络接口控制器16-1还包括时钟控制器30-1。参考图3更详细地描述时钟控制器30-1。实际上,时钟控制器30-1的一些或全部功能可以组合在单个物理组件中,或者替代地,使用多个物理组件来实现。这些物理组件可以包括硬连线或可编程设备,或两者的组合。在一些实施方式中,时钟控制器30-1的至少一些功能可以在适当软件的控制下由可编程处理器执行。该软件可以例如通过网络以电子形式下载到装置。替代地或附加地,软件可以存储在有形的,非暂时性的计算机可读存储介质(例如光学、磁性或电子存储器)中。
网络接口控制器16-2包括配置为连接到同轴RF电缆26的同轴RF连接器24-2(在图1中示为CRF-1),以及一个或多个网络接口端口18-2,其被配置为在CPU 14和不同于PDN20-1的PDN 20-2之间的传输数据。图1所示的同轴RF连接器24-2是同轴RF输入连接器。网络接口控制器16-1还可包括同轴RF输出连接器。在与同轴RF电缆26连接并通过网络接口控制器16-1进行同步之前,PDN-2是非PTP同步网络。网络接口控制器16-2还包括PHC 28-2和时钟控制器30-2。参考图6更详细地描述时钟控制器30-2。实际上,时钟控制器30-2的一些或全部功能可以组合在单个物理组件中,或者替代地,使用多个物理组件来实现。这些物理组件可以包括硬连线或可编程装置,或两者的组合。在一些实施方式中,时钟控制器30-2的至少一些功能可以在适当软件的控制下由可编程处理器执行。该软件可以例如通过网络以电子形式下载到装置。替代地或附加地,软件可以存储在有形的,非暂时性的计算机可读存储介质(例如光学、磁性或电子存储器)中。
在一些实施方式中,同轴RF连接器24可以由任何合适的连接器和/或接口代替,并且同轴RF电缆26可以由任何合适的连接(例如,电缆和/或互连)代替。
现在参考图2,其是包括图1的系统10的设置方法中的步骤的流程图40。还是参考图1。作为设置方法的一部分,一个或多个网络接口端口18-1被连接到PDN 20-1(框42),并且网络接口端口18-2通过相应网络电缆被连接到PDN 20-2。在一些实施方式中,网络接口端口18-1和/或网络接口端口18-2可以经由一个或多个无线连接连接到相应的PDN 20。同轴RF连接器24-1、24-2使用同轴RF电缆26连接(框44)。
现在参考图3,其是包括由图1的系统10中的网络接口控制器16-1执行的方法中的步骤的流程图50。还是参考图1。时钟控制器30-1被配置为接收(框52)由主时钟22提供的时钟同步信号S1并根据任何适当标准(例如PTP)响应于时钟同步信号S1来使用时间值T1更新PHC 28-1。
时钟控制器30-1被配置为以单个信号(时钟同步信号S2)或经由两个(或更多个)信号(时钟同步信号S2和相位值信号)来传送频率和相位信息。在一些实施方式中,时钟同步信号S2传送短期相位信息,而相位值信号传送长期相位信息,这将在下面更详细地描述。
相位值信号包括T1的未来相位值的指示(长期相位信息)。时钟同步信号S2包括未来的相位值何时出现的指示(短期相位信息)。例如,如果检索到T1并且具有相位值P1,则可以产生相位值信号以指示等于P1加上给定相位差P'的P2的相位值,以允许时间在时钟同步信号S2中用信号发送相位值P2并将相位值信号发送到时钟控制器30-2。例如,可以将长期视为比经由计算机服务器设备12的CPU 14在时钟控制器30-1和时钟控制器30-2之间进行通信的延迟更长的时间段。
时钟控制器30-1可选地被配置为从PHC 28-1读取(框54)时间值T1。如果T1仍在存储器中,则可能不需要从PHC 28-1读取T1。时钟控制器30-1被配置为产生(框56)指示未来时间的时间值T1的相位值(例如,相位值P2)的相位值信号。时钟控制器30-1被配置为将相位值信号与时钟同步信号S2一起带外发送(框58)到时钟控制器30-2。在一些实施方式中,时钟控制器30-1被配置为经由CPU14和网络接口控制器16-1、16-2的相应通信总线接口(例如,PCIe)(未示出)将相位值信号发送至第二时钟控制器。
时钟控制器30-1被配置为响应于读取时间值T1或所接收的时钟同步信号S1(其提供T1)而产生(框60)时钟同步信号S2。时钟控制器30-1被配置为根据T1的频率(由PHC 28-1维持)编码(框62)时钟同步信号S2中的频率信息或在时钟同步信号S1中编码。在一些实施方式中,时钟同步信号S2具有响应于所接收的时钟同步信号S1设置的频率(即,时钟同步信号S2中的频率信息或根据T1的频率)。例如,产生时钟同步信号S2以包括具有频率等于T1的频率的脉冲。时钟控制器30-1被配置为使用至少一个标记脉冲编码时钟同步信号S2中的相位信息。标记脉冲可以指示相位值(例如,P2)或者将来的相位值(例如,P2)何时出现。参考图4和图5更详细地描述了编码时钟同步信号S2中的相位信息。
现在参考图4,其是在图1的系统10中使用的时钟同步信号100的示意图。还是参考图3。时钟同步信号100是时钟同步信号S2的示例。时钟控制器30-1(图1)被配置为通过调制(框64)时钟同步信号S2的至少一个脉冲的宽度(箭头104)(即调制占空比)和/或幅度,使用至少一个标记脉冲102编码时钟同步信号S2中的相位信息。图4示出了标记脉冲102,其比时钟同步信号100中的其他脉冲更宽,并且可以在接收时通过以适当接近的间隔对时钟同步信号100进行采样而由时钟控制器30-2(图1)识别以识别更宽的脉冲。可以根据脉冲的周期长度(箭头106)来设置时钟同步信号100的频率。
现在参考图5,其是在图1的系统10中使用的替代时钟同步信号108的示意图。时钟同步信号108是包括具有幅度(箭头112)大于其他脉冲的幅度的标记脉冲110的时钟同步信号S2的示例。
再次参考图1和图3。在一些实施方式中,为了最小化对噪声接口的灵敏度,该噪声接口可能由于错误检测出标记脉冲而导致同步问题,时钟控制器30-1被配置为响应于标记函数使用标记脉冲的模式(框66)编码时钟同步信号S2中的相位信息。然后,时钟控制器30-2在所接收的时钟同步信号S2中找到与模式的匹配(或接近匹配),以确定何时使用在相位值信号中所接收的相位值来更新PHC 28-2。参考图6更详细地描述识别模式。
在一些实施方式中,可以根据任何合适的标记函数,例如基于Walsh函数,对模式进行编码,其中以占空比的X%表示值“0”,以占空比的“(100-X)”%表示值“l”,从而受益于处理增益。X的一个示例是33。然而,X可以取任何合适的值,只要仍然可以通过可用的检测硬件和软件来检测脉冲。在一些实施方式中,至少32位用于编码模式。在给定的“周期”中,具有32位,将至少有64个时钟同步信号S2循环。提供标记脉冲模式的32位Walsh函数的示例是:0011、1100、1100、0011、1100、0011、0011、1100。
使用模式通过去除对特定周期中识别标记脉冲的依赖性,从而将对噪声的敏感性最小化。使用Walsh函数的好处是,其自相关函数在正确的采样相位下会最大化,并且其与其他函数的互相关为自定义零。处理增益通常取决于参与Walsh函数向量的位数。
时钟控制器30-1被配置为通过同轴RF连接器24-1并通过同轴RF电缆26将时钟同步信号S2经由同轴RF连接器24-2发送(框68)到时钟控制器30-2。在一些实施方式中,时钟控制器30-1被配置为经由网络接口控制器16之间的专用连接,例如,使用在计算机服务器设备12或服务器机架的外部或内部的屏蔽连接来发送时钟同步信号S2。
现在参考图6,其是包括由图1的系统10中的网络接口控制器16-2执行的方法中的步骤的流程图200。还是参考图1。
时钟控制器30-2被配置为例如经由CPU 14接收(框202)通常与时钟同步信号S2一起带外的相位值信号。
时钟控制器30-2被配置为从同轴RF连接器24-2接收(框204)时钟同步信号S2。时钟控制器30-2被配置为例如基于时钟同步信号S2中的脉冲的频率来解码(框206)来自时钟同步信号S2的频率信息。时钟控制器30-2被配置为响应于标记脉冲来解码(框208)来自时钟同步信号S2的相位信息。如前所述,相位信息可以包括相位值或相位值的标记。
作为框208的步骤的子步骤,时钟控制器30-2被配置为识别(框210)时钟同步信号S2中的标记脉冲。当通过调制标记脉冲的宽度和/或幅度对标记脉冲进行编码时,时钟控制器30-2被配置为测量(框212)时钟同步信号S2中的脉冲的宽度和/或幅度以识别标记脉冲。
现在参考图7,其是示出了图6的流程图200的步骤的相关图300的示意图。还是参考图6。时钟控制器30-2被配置为找到(框214)在预定的相关阈值内的与标记脉冲的模式匹配的时钟同步信号S2的部分。时钟控制器30-2通常比较时钟同步信号S2的不同部分(或窗口),直到发现具有与模式的相关性在预定阈值以上的部分为止。可以将预定义的相关阈值设置为任何合适的值。该阈值可以取决于模式中的位数和/或所使用的标记函数。当Walsh函数与32位模式一起使用时,例如“0011、1100、1100、0011、1100、0011、0011、1100”,即使几个位被错误地识别,阈值相关性也接近于1。因此,在这种情况下,阈值可以设置为0.9或0.95。可以使用任何合适的模式。相关图300示出了上述32位Walsh函数模式与信号中各时间的时钟同步信号之间的相关性。该信号包括与上述相同的32位Walsh函数模式,而没有任何更改,以及其他不代表Walsh函数模式的位,例如:0101、0101、1010、1010、1010、1010、0101、0101。可以看出,在时间0左右(其中32位模式嵌入信号中),相关性为1,而在其他时间,相关性小于0.4。可以将位的任何合适布置用于不代表Walsh函数的位,例如01重复。可以选择这些位以提供与Walsh函数的位的低互相关。
再次参考图1和图6。时钟控制器30-2被配置为响应于相位值,根据在时钟同步信号S2中检测到标记脉冲或匹配部分(当使用标记脉冲的模式时)的位置对PHC 28-2的时间值T2的更新进行计时(框216)。时钟控制器30-2被配置为响应于所接收的时钟同步信号S2和相位值信号而使用时间值T2来更新(框218)PHC 28-2。例如,如果相位值信号中的相位值等于P2并且时钟同步信号S2的频率等于F,则时钟控制器30-2被配置为当在时钟同步信号S2中识别出标记脉冲时,使用等于P2的相位以及使用频率F更新PHC 28-2的时间值T2。
时钟控制器30-2被配置为响应于时间值T2将另一时钟同步信号(例如,基于诸如PTP的合适标准)发送(框220)至PDN 20-2中的网络节点32使得网络接口控制器16-2被配置为充当PDN 20-2中的主时钟。时钟控制器30-2可以被配置为从PHC 28-2读取时间值T2,并且根据任何合适的标准(例如,PTP)将T2发送至时间同步信号中编码的网络节点32。
现在参考图8,其是根据本发明的替代实施方式构造和操作的时间同步系统400的框图。除了以下区别,时间同步系统400与图1至图7的时间同步系统10基本相同。时间同步系统400包括在网络接口控制器16之间使用同轴RF电缆26链接在一起的两个以上的网络接口控制器16,使得网络接口控制器16之一产生时间同步信号,以经由相应的同轴RF电缆26发送到另一网络接口控制器16,然后更新其PHC 28并成为其PDN 20的主时钟(例如PTP主机)。同步网络接口控制器16然后产生时间同步信号,以经由相应的同轴RF电缆26发送到另一网络接口控制器16,然后更新其PHC 28并成为其PDN 20的主时钟(例如PTP主机),以此类推。图8示出了三个网络接口控制器16,但是任何合适数目的网络接口控制器16可以这种方式链接。
在时间同步系统400中,网络接口控制器16-1使用同轴RF电缆26-1连接到网络接口控制器16-2。网络接口控制器16-2包括被配置为连接到同轴RF电缆26-2的另一同轴RF连接器24-3。时钟控制器30-2被配置为响应于时钟同步信号S2而提供时钟同步信号S3,并且通过同轴RF连接器24-3和同轴RF电缆26-2将时钟同步信号S3发送至网络接口控制器16-3。在一些实施方式中,时钟同步信号S3可以等于时钟同步信号S2。时钟控制器30-2可以产生相位值信号,以与时钟同步信号S3一起带外发送到网络接口控制器16-3。在一些实施方式中,网络接口控制器16-1可以将其产生的相位值信号发送到计算机服务器设备12中的所有网络接口控制器16。
网络接口控制器16-3包括配置为连接至同轴RF电缆26-2的同轴RF连接器24-4,以及配置为在CPU 14与PDN 20之间传输数据的一个或多个网络接口端口18-3。网络接口控制器16-3还包括PHC 28-3和时钟控制器30-3,其被配置为:接收来自同轴RF连接器24-4的时钟同步信号S3;响应于所接收的时钟同步信号S3,使用时间值T3更新PHC 28-3;响应于时间值T3(例如,基于从所接收的时钟同步信号S3中计算的时间值T3或基于PHC 28-3的时钟读数),将时钟同步信号(例如,根据任何适当的标准,例如PTP)发送到PDN 20-3中的网络节点36,使得网络接口控制器16-3被配置为充当PDN 20-3中的主时钟(例如PTP主机)。
在一些实施方式中,同轴RF连接器24可以由任何合适的连接器和/或接口代替,并且同轴RF电缆26可以由任何合适的连接(例如,电缆和/或互连)代替。
计算机服务器设备12被示为单个服务器。在一些实施方式中,相应网络接口控制器16可以被布置在相应服务器中,例如,在同一机架(未示出)中。
为了清楚起见,在单独的实施方式的上下文中描述的本发明的各种特征也可以在单个实施方式中组合提供。相反,为简洁起见,在单个实施方式的上下文中描述的本发明的各种特征也可以单独地或以任何合适的子组合来提供。
通过示例的方式引用了上述实施方式,并且本发明不受上文已经具体示出和描述的内容的限制。相反,本发明的范围包括上文描述的各种特征的组合和子组合,以及本领域技术人员在阅读前述说明书后将想到的并且在现有技术中未公开的其变型和修改。
Claims (22)
1.一种计算机设备,包括:
第一网络接口控制器,包括:
至少一个第一网络接口端口,其被配置为使用第一分组数据网络(PDN)传输数据,所述第一PDN包括主时钟,所述主时钟被配置为提供时钟同步信号S1;
第一连接器,其被配置为连接到连接;第一物理硬件时钟(PHC),其被配置为响应于所述时钟同步信号S1而维持时间值T1;和
第一时钟控制器,其被配置为:响应于接收到的时钟同步信号S1产生时钟同步信号S2,所述时钟同步信号S2具有响应于接收到的时钟同步信号S1而被设置的频率;并且通过所述第一连接器并通过所述连接将所述时钟同步信号S2发送至第二网络接口控制器;和
所述第二网络接口控制器,包括:
至少一个第二网络接口端口,其被配置为使用与所述第一PDN不同的第二PDN来传输数据;
第二连接器,其被配置为连接到所述连接;
第二PHC;和
第二时钟控制器,其被配置为:接收来自所述第二连接器的所述时钟同步信号S2;响应于接收到的时钟同步信号S2,使用时间值T2更新所述第二PHC;响应于所述时间值T2向所述第二PDN中的网络节点发送另一时钟同步信号,使得所述第二网络接口控制器被配置为充当所述第二PDN中的主时钟。
2.根据权利要求1所述的设备,其中:
所述连接包括同轴射频(RF)电缆;
所述第一连接器包括第一同轴RF连接器,其被配置为连接到所述同轴RF电缆;
所述第一时钟控制器被配置为通过所述第一同轴RF连接器和所述同轴RF电缆发送所述时钟同步信号S2;
所述第二连接器包括第二同轴RF连接器,所述第二同轴RF连接器被配置为连接到所述同轴RF电缆;以及
所述第二时钟控制器被配置为从所述第二同轴RF连接器接收所述时钟同步信号S2。
3.根据权利要求2所述的设备,还包括所述同轴RF电缆,其连接在所述第一同轴RF连接器与所述第二同轴RF连接器之间。
4.根据权利要求1所述的设备,其中所述第一时钟控制器被配置为:接收所述时钟同步信号S1;以及响应于所述时钟同步信号S1使用所述时间值T1更新所述第一PHC。
5.根据权利要求1所述的设备,其中所述第一时钟控制器被配置为:从所述第一PHC读取所述时间值T1;以及响应于所读取的时间值T1产生所述时钟同步信号S2。
6.根据权利要求1所述的设备,其中:
所述第一时钟控制器被配置为:编码所述时钟同步信号S2中的频率信息;以及使用至少一个标记脉冲编码所述时钟同步信号S2中的相位信息;和
所述第二时钟控制器被配置为:解码来自所述时钟同步信号S2的所述频率信息;以及响应于所述至少一个标记脉冲解码来自所述时钟同步信号S2的所述相位信息。
7.根据权利要求6所述的设备,其中:
所述第一时钟控制器被配置为:产生指示所述时间值T1的相位值的相位值信号;以及将所述相位值信号与所述时钟同步信号S2带外发送至所述第二时钟控制器;以及
所述第二时钟控制器被配置为:根据在所述时钟同步信号S2中检测到所述至少一个标记脉冲的位置,响应于所述相位值对所述时间值T2的更新进行计时。
8.根据权利要求7所述的设备,还包括中央处理单元,其中所述第一时钟控制器被配置为经由所述中央处理单元将所述相位值信号发送至所述第二时钟控制器。
9.根据权利要求7所述的设备,其中:
所述第一时钟控制器被配置为:通过调制所述时钟同步信号S2的至少一个脉冲的宽度和/或幅度,使用所述至少一个标记脉冲,编码所述时钟同步信号S2中的所述相位信息;以及
所述第二时钟控制器被配置为:测量所述时钟同步信号S2中的脉冲的宽度和/或幅度,以识别所述至少一个标记脉冲。
10.根据权利要求7所述的设备,其中:
所述第一时钟控制器被配置为:响应于标记函数,使用标记脉冲的模式编码所述时钟同步信号S2中的所述相位信息;以及
所述第二时钟控制器被配置为:找到在预定的相关阈值内与所述标记脉冲的模式匹配的所述时钟同步信号S2的一部分;以及根据所述时钟同步信号S2中检测到匹配部分的位置,响应于所述相位值对所述时间值T2的所述更新进行计时。
11.根据权利要求10所述的设备,其中,所述标记函数基于Walsh函数。
12.根据权利要求1所述的设备,其中:所述第二网络接口控制器包括被配置为连接到第二连接的另一连接器;以及所述第二时钟控制器被配置为:响应于所述时钟同步信号S2而提供时钟同步信号S3;并且在所述另一连接器和所述第二连接上发送所述时钟同步信号S3,所述设备还包括第三网络接口控制器,包括:
第三连接器,其被配置为连接到所述第二连接;
至少一个第三网络接口端口,其被配置为使用第三PDN传输数据;
第三PHC;和
第三时钟控制器,其被配置为:从所述第三连接器接收所述时钟同步信号S3;响应于接收到的时钟同步信号S3,使用时间值T3更新所述第三PHC;响应于所述时间值T3向所述第三PDN中的网络节点发送时钟同步信号,使得所述第三网络接口控制器被配置为充当所述第三PDN中的主时钟。
13.一种时间同步的方法,包括:
使用连接将第一网络接口控制器与第二网络接口控制器连接;
将所述第一网络接口控制器的至少一个第一网络接口端口连接至第一分组数据网络(PDN);将所述第二网络接口控制器的至少一个第二网络接口端口连接至第二PDN;
通过所述至少一个第一网络接口端口从所述第一PDN中的主时钟接收时钟同步信号S1;
通过所述第一网络接口控制器响应于接收到的时钟同步信号S1产生时钟同步信号S2,所述时钟同步信号S2具有响应于接收到的时钟同步信号S1而被设置的频率;
将所述时钟同步信号S2发送至所述第二网络接口控制器;
通过所述第二网络接口控制器接收所述时钟同步信号S2;
响应于接收到的时钟同步信号S2,使用时间值更新所述第二网络接口控制器中的物理硬件时钟(PHC);和
响应于所述时间值,将另一时钟同步信号发送到所述第二PDN中的网络节点,使得所述第二网络接口控制器充当所述第二PDN中的主时钟。
14.根据权利要求13所述的方法,还包括使用同轴射频(RF)电缆将所述第一网络接口控制器与所述第二网络接口控制器连接,并且其中所述发送包括通过所述同轴RF电缆发送所述时钟同步信号S2。
15.根据权利要求13所述的方法,还包括响应于所述时钟同步信号S1使用时间值更新所述第一网络接口的PHC。
16.根据权利要求15所述的方法,还包括:从所述第一网络接口控制器的所述PHC读取所述时间值;以及响应于所读取的时间值产生所述时钟同步信号S2。
17.根据权利要求13所述的方法,还包括:
由所述第一网络接口控制器编码所述时钟同步信号S2中的频率信息;以及使用至少一个标记脉冲编码所述时钟同步信号S2中的相位信息;以及
由所述第二网络接口控制器解码来自所述时钟同步信号S2的所述频率信息;以及响应于所述至少一个标记脉冲解码来自所述时钟同步信号S2的所述相位信息。
18.根据权利要求17所述的方法,还包括:
由所述第一网络接口控制器产生指示相位值的相位值信号;
将所述相位值信号与所述时钟同步信号S2带外发送至所述第二网络接口控制器;以及
根据在所述时钟同步信号S2中检测到所述至少一个标记脉冲的位置,响应于所述相位值对所述时间值的更新进行计时。
19.根据权利要求18所述的方法,其中所述编码包括:通过调制所述时钟同步信号S2的至少一个脉冲的宽度和/或幅度,使用所述至少一个标记脉冲,编码所述时钟同步信号S2中的所述相位信息,以及所述方法还包括由所述第二网络接口控制器测量所述时钟同步信号S2中的脉冲的宽度和/或幅度,以识别所述至少一个标记脉冲。
20.根据权利要求18所述的方法,其中所述编码包括:响应于标记函数,使用标记脉冲的模式编码所述时钟同步信号S2中的所述相位信息,所述方法还包括:由所述第二网络接口控制器找到在预定的相关阈值内与所述标记脉冲的模式匹配的所述时钟同步信号S2的一部分,并且其中所述计时包括根据所述时钟同步信号S2中检测到匹配部分的位置,响应于所述相位值对所述时间值的所述更新进行计时。
21.根据权利要求20所述的方法,其中所述标记函数基于Walsh函数。
22.根据权利要求13所述的方法,还包括:
将所述第二网络接口控制器与第三网络接口控制器连接;
将所述第三网络接口控制器的至少一个第三网络接口端口连接至第三PDN;
响应于所述时钟同步信号S2提供时钟同步信号S3;
将所述时钟同步信号S3发送至所述第三网络接口控制器;
通过所述第三网络接口控制器接收所述时钟同步信号S3;
响应于接收到的时钟同步信号S3,使用时间值T3更新所述第三网络接口控制器中的物理硬件时钟(PHC);以及
响应于所述时间值T3,将另一时钟同步信号发送至所述第三PDN中的网络节点,使得所述第三网络接口控制器充当所述第三PDN中的主时钟。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/799,873 | 2020-02-25 | ||
US16/799,873 US11070304B1 (en) | 2020-02-25 | 2020-02-25 | Physical hardware clock chaining |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113381829A CN113381829A (zh) | 2021-09-10 |
CN113381829B true CN113381829B (zh) | 2024-07-12 |
Family
ID=76861731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110177400.XA Active CN113381829B (zh) | 2020-02-25 | 2021-02-09 | 一种时间同步的方法及计算机设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11070304B1 (zh) |
CN (1) | CN113381829B (zh) |
DE (1) | DE102021201747A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11283454B2 (en) | 2018-11-26 | 2022-03-22 | Mellanox Technologies, Ltd. | Synthesized clock synchronization between network devices |
US11581972B1 (en) * | 2020-05-21 | 2023-02-14 | Meta Platforms, Inc. | Reporting clock value of network interface controller for timing error analysis |
US12028155B2 (en) | 2021-11-24 | 2024-07-02 | Mellanox Technologies, Ltd. | Controller which adjusts clock frequency based on received symbol rate |
US11907754B2 (en) | 2021-12-14 | 2024-02-20 | Mellanox Technologies, Ltd. | System to trigger time-dependent action |
US11835999B2 (en) | 2022-01-18 | 2023-12-05 | Mellanox Technologies, Ltd. | Controller which adjusts clock frequency based on received symbol rate |
US11706014B1 (en) | 2022-01-20 | 2023-07-18 | Mellanox Technologies, Ltd. | Clock synchronization loop |
US11917045B2 (en) | 2022-07-24 | 2024-02-27 | Mellanox Technologies, Ltd. | Scalable synchronization of network devices |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103339888A (zh) * | 2011-02-10 | 2013-10-02 | 阿尔卡特朗讯 | 用于分组交换网络的网元 |
CN105229623A (zh) * | 2013-05-24 | 2016-01-06 | Arm有限公司 | 用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 |
Family Cites Families (75)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE466123B (sv) | 1989-04-25 | 1991-12-16 | Kvaser Consultant Ab | Anordning foer att synkonisera data i ett datoriserat system, som innefattar en gemensam seriell datakommunikationskanal |
DE4140017C2 (de) | 1991-12-04 | 1995-01-05 | Nec Electronics Germany | Verfahren zum Betreiben von über einen Datenbus durch seriellen Datenaustausch miteinander kommunizierenden Rechnereinheiten |
CA2091962A1 (en) | 1992-03-31 | 1993-10-01 | Mark L. Witsaman | Clock synchronization system |
US5564285A (en) | 1994-09-22 | 1996-10-15 | Thermo King Corporation | Method of converting a time based data logger to a time and random event based data logger |
GB2298951B (en) | 1995-03-17 | 1999-10-27 | Olivetti Res Ltd | Addition of time information |
US5896524A (en) | 1997-02-06 | 1999-04-20 | Digital Equipment Corporation | Off-line clock synchronization for multiprocessor event traces |
US5960191A (en) * | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US6289023B1 (en) | 1997-09-25 | 2001-09-11 | Hewlett-Packard Company | Hardware checksum assist for network protocol stacks |
US6199169B1 (en) | 1998-03-31 | 2001-03-06 | Compaq Computer Corporation | System and method for synchronizing time across a computer cluster |
US6449291B1 (en) | 1998-11-24 | 2002-09-10 | 3Com Corporation | Method and apparatus for time synchronization in a communication system |
US6535926B1 (en) | 1999-09-30 | 2003-03-18 | Rockwell Automation Technologies, Inc. | Time synchronization system for industrial control network using global reference pulses |
US6643787B1 (en) | 1999-10-19 | 2003-11-04 | Rambus Inc. | Bus system optimization |
US6898204B2 (en) | 2000-04-07 | 2005-05-24 | Broadcom Corporation | Method of determining a collision between a plurality of transmitting stations in a frame-based communications network |
US7023816B2 (en) | 2000-12-13 | 2006-04-04 | Safenet, Inc. | Method and system for time synchronization |
US7191354B2 (en) | 2001-03-29 | 2007-03-13 | Nokia Corporation | Method for synchronizing a first clock to a second clock, processing unit and synchronization system |
US7415609B1 (en) | 2001-04-23 | 2008-08-19 | Diebold, Incorporated | Automated banking machine system and method |
US7139923B1 (en) * | 2001-06-27 | 2006-11-21 | Cisco Technology, Inc. | Technique for synchronizing network devices in an access data network |
US7289538B1 (en) * | 2001-08-14 | 2007-10-30 | Atrica Israel Ltd. | Clock reconstruction for time division multiplexed traffic transported over asynchronous ethernet networks |
US7251199B2 (en) * | 2001-12-24 | 2007-07-31 | Agilent Technologies, Inc. | Distributed system time synchronization including a timing signal path |
US6918049B2 (en) | 2002-03-26 | 2005-07-12 | Semtech Corporation | Method and apparatus for controlling the phase of the clock output of a digital clock |
US7245627B2 (en) | 2002-04-23 | 2007-07-17 | Mellanox Technologies Ltd. | Sharing a network interface card among multiple hosts |
US7334124B2 (en) | 2002-07-22 | 2008-02-19 | Vormetric, Inc. | Logical access block processing protocol for transparent secure file storage |
US7111184B2 (en) | 2002-09-06 | 2006-09-19 | Freescale Semiconductor, Inc. | System and method for deterministic communication across clock domains |
US7447975B2 (en) | 2002-09-12 | 2008-11-04 | Hewlett-Packard Development Company, L.P. | Supporting cyclic redundancy checking for PCI-X |
KR100965861B1 (ko) * | 2002-10-24 | 2010-06-24 | 삼성전자주식회사 | 이동통신 시스템에서 복합 재전송 제어 장치 |
US7209525B2 (en) | 2002-11-18 | 2007-04-24 | Agere Systems Inc. | Clock and data recovery with extended integration cycles |
US7076715B2 (en) | 2003-01-31 | 2006-07-11 | Rockwell Automation Technologies, Inc. | Safety network using phantom address information |
US7254646B2 (en) | 2003-06-23 | 2007-08-07 | Hewlett-Packard Development Company, L.P. | Analysis of causal relations between intercommunicating nodes |
US7483448B2 (en) | 2004-03-10 | 2009-01-27 | Alcatel-Lucent Usa Inc. | Method and system for the clock synchronization of network terminals |
US7412475B1 (en) | 2004-03-23 | 2008-08-12 | Sun Microsystems, Inc. | Error detecting arithmetic circuits using hexadecimal digital roots |
SE528607C2 (sv) | 2004-04-30 | 2006-12-27 | Kvaser Consultant Ab | System och anordning för att tidsmässigt relatera händelser i ett fordon |
US7623552B2 (en) | 2004-10-14 | 2009-11-24 | Temic Automotive Of North America, Inc. | System and method for time synchronizing nodes in an automotive network using input capture |
US7983769B2 (en) | 2004-11-23 | 2011-07-19 | Rockwell Automation Technologies, Inc. | Time stamped motion control network protocol that enables balanced single cycle timing and utilization of dynamic data structures |
US7496686B2 (en) | 2005-01-28 | 2009-02-24 | Gencsus | Localizing a remote event timestamp from a network device with an independent clock method and apparatus |
US7750685B1 (en) | 2005-03-17 | 2010-07-06 | Rf Micro Devices, Inc. | Frequency measurement based frequency locked loop synthesizer |
JP2007134928A (ja) | 2005-11-10 | 2007-05-31 | Renesas Technology Corp | Rfアナログ信号処理ユニットと、それを搭載したモバイル端末装置 |
US7636767B2 (en) | 2005-11-29 | 2009-12-22 | Cisco Technology, Inc. | Method and apparatus for reducing network traffic over low bandwidth links |
US7447931B1 (en) | 2005-12-09 | 2008-11-04 | Rockwell Automation Technologies, Inc. | Step time change compensation in an industrial automation network |
US20080069150A1 (en) | 2006-09-19 | 2008-03-20 | Sig Harold Badt | Precision Time Protocol Emulation for Network Supportive of Circuit Emulation Services |
US7941684B2 (en) | 2008-02-28 | 2011-05-10 | Advanced Micro Devices, Inc. | Synchronization of processor time stamp counters to master counter |
CN101242231B (zh) * | 2008-03-03 | 2011-06-01 | 电子科技大学 | 面向电力系统同步相量测量的时钟同步装置 |
JP5321923B2 (ja) * | 2008-03-27 | 2013-10-23 | 日本電気株式会社 | クロック同期システム、ノード、クロック同期方法及びプログラム |
CN101645869B (zh) * | 2008-08-07 | 2012-05-23 | 上海思弘瑞电力控制技术有限公司 | 具有亚微秒级时钟的交换机及其交换处理方法 |
US8370675B2 (en) | 2009-01-28 | 2013-02-05 | Mellanox Technologies Ltd. | Precise clock synchronization |
US8407478B2 (en) | 2009-07-07 | 2013-03-26 | Mellanox Technologies Ltd. | Control message signature for device control |
US20120020191A1 (en) * | 2010-06-17 | 2012-01-26 | Ilan Shemesh | Wireless Clock System |
EP2408128B1 (en) | 2010-07-15 | 2017-06-07 | Alcatel Lucent | Interworking agent adapted to interact between network and Precision Time Protocol entities |
JP5874815B2 (ja) * | 2011-05-06 | 2016-03-02 | エフティーエス コンピューターテクニク ジーエムビーエイチ | 高可用性グランド・マスタ・クロックを実装するためのネットワークおよび方法 |
US8904216B2 (en) | 2011-09-02 | 2014-12-02 | Iota Computing, Inc. | Massively multicore processor and operating system to manage strands in hardware |
US9397960B2 (en) | 2011-11-08 | 2016-07-19 | Mellanox Technologies Ltd. | Packet steering |
US8879552B2 (en) | 2012-02-22 | 2014-11-04 | Telefonaktiebolaget L M Ericsson (Publ) | Precision time protocol offloading in a PTP boundary clock |
WO2013137863A1 (en) | 2012-03-13 | 2013-09-19 | Rambus Inc. | Clock and data recovery having shared clock generator |
CN104662857A (zh) | 2012-03-30 | 2015-05-27 | 瑞典爱立信有限公司 | 用于鲁棒精确时间协议同步的方法和系统 |
EP2701318B1 (en) | 2012-08-22 | 2015-04-15 | Alcatel Lucent | A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network |
US9100167B2 (en) | 2012-11-30 | 2015-08-04 | Broadcom Corporation | Multilane SERDES clock and data skew alignment for multi-standard support |
CN105794130B (zh) * | 2013-12-09 | 2018-04-24 | 哈利法科学技术研究大学 | 使用线性规划用于同步的方法和设备 |
US9270395B2 (en) * | 2014-05-05 | 2016-02-23 | Telefonaktiebolaget L M Ericsson (Publ) | Method for robust PTP synchronization with default 1588V2 profile |
US9344265B2 (en) | 2014-10-15 | 2016-05-17 | Anue Systems, Inc. | Network packet timing synchronization for virtual machine host systems |
US9971619B2 (en) | 2014-10-15 | 2018-05-15 | Keysight Technologies Singapore (Holdings) Pte Ltd | Methods and systems for forwarding network packets within virtual machine host systems |
US10320646B2 (en) | 2014-12-31 | 2019-06-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Apparatus and method to use PTP timestamps for two-way delay and delay variation measurement in IP networks |
RO131471A2 (ro) | 2015-04-21 | 2016-10-28 | Ixia, A California Corporation | Metode, sisteme şi suport citibil pe calculator pentru testarea calităţii tactului recuperat |
US10027601B2 (en) | 2015-06-03 | 2018-07-17 | Mellanox Technologies, Ltd. | Flow-based packet modification |
US9843439B2 (en) | 2016-01-27 | 2017-12-12 | Ciena Corporation | System and method for managing holdover |
US10054977B2 (en) | 2016-04-28 | 2018-08-21 | International Business Machines Corporation | Controlling system clocks in virtual machines |
US10320952B2 (en) | 2016-05-16 | 2019-06-11 | Mellanox Technologies Tlv Ltd. | System-wide synchronized switch-over of multicast flows |
US10237008B2 (en) * | 2016-06-10 | 2019-03-19 | Apple Inc. | Synchronization with different clock transport protocols |
CN106817183B (zh) | 2016-12-27 | 2019-03-08 | 天津七六四通信导航技术有限公司 | 一种电力授时中的ptp精准时间协议授时模块及实现方法 |
CN106992830B (zh) * | 2017-04-05 | 2018-07-27 | 中国科学院空间应用工程与技术中心 | 一种fc-ae-1553网络中的时钟同步方法 |
US20190158909A1 (en) | 2017-11-17 | 2019-05-23 | Qualcomm Incorporated | Extending synchronous media playback to a bluetooth-only sink device in a connected media environment |
US10833840B2 (en) * | 2018-05-07 | 2020-11-10 | ZaiNar, Inc. | Methods for nanosecond-scale time synchronization over a network |
US11277455B2 (en) | 2018-06-07 | 2022-03-15 | Mellanox Technologies, Ltd. | Streaming system |
CN109495203A (zh) * | 2018-12-28 | 2019-03-19 | 浙江赛思电子科技有限公司 | 一种ptp从钟的恢复系统 |
US11283535B2 (en) | 2019-03-20 | 2022-03-22 | Arris Enterprises Llc | Method of remotely monitoring the timing performance of a PTP slave |
US11299168B2 (en) * | 2019-04-16 | 2022-04-12 | Baidu Usa Llc | Time synchronization scheme between different computation nodes in autonomous driving system |
US11652561B2 (en) | 2019-06-21 | 2023-05-16 | Intel Corporation | Techniques for determining timestamp inaccuracies in a transceiver |
-
2020
- 2020-02-25 US US16/799,873 patent/US11070304B1/en active Active
-
2021
- 2021-02-09 CN CN202110177400.XA patent/CN113381829B/zh active Active
- 2021-02-24 DE DE102021201747.9A patent/DE102021201747A1/de active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103339888A (zh) * | 2011-02-10 | 2013-10-02 | 阿尔卡特朗讯 | 用于分组交换网络的网元 |
CN105229623A (zh) * | 2013-05-24 | 2016-01-06 | Arm有限公司 | 用于主设备和异步从设备之间经由接口的通信的数据处理装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102021201747A1 (de) | 2021-08-26 |
CN113381829A (zh) | 2021-09-10 |
US11070304B1 (en) | 2021-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113381829B (zh) | 一种时间同步的方法及计算机设备 | |
US8355476B2 (en) | Timestamping method and apparatus for precise network synchronization | |
US8738792B2 (en) | Server time protocol messages and methods | |
US9602271B2 (en) | Sub-nanosecond distributed clock synchronization using alignment marker in ethernet IEEE 1588 protocol | |
US7251199B2 (en) | Distributed system time synchronization including a timing signal path | |
TW201826853A (zh) | 藉由使用高準確度時戳輔助裝置於乙太網路之精密時間協定下的奈秒準確度 | |
US20140056319A1 (en) | High Precision Timer in CPU Cluster | |
WO2018221238A1 (ja) | 無線機器および無線機器の処理方法 | |
CN112166565B (zh) | 电缆网络的定时同步 | |
TW201530155A (zh) | 用於分散式電力系統測量之通訊系統與方法 | |
JP2012527660A (ja) | SuperSpeedUSBデバイスおよび非SuperSpeedUSBデバイスの同期ネットワーク | |
CN103929293A (zh) | 非对称延迟的时间同步方法及系统 | |
CN113810145A (zh) | 接收端时间戳准确性 | |
CN103563287A (zh) | 同步设备和同步方法 | |
CN109687927B (zh) | 一种确定时间戳的方法、通信设备和通信系统 | |
US20220360350A1 (en) | Method and apparatus for acquiring timestamp of data stream, storage medium, and electronic apparatus | |
CN103546273B (zh) | 基于ptp帧的频率同步装置及方法 | |
US20060133426A1 (en) | System, method, and article of manufacture for synchronizing time of day clocks on first and second computers | |
WO2021129755A1 (zh) | 时钟时间同步方法、装置、设备和存储介质 | |
CN114586297B (zh) | 一种同步方法及设备 | |
CN107437971B (zh) | 同步状态信息的处理方法及装置 | |
KR20190072745A (ko) | 안정적인 네트워크 기반 시간동기화 방법 | |
US20150106647A1 (en) | Method and a Device for Maintaining a Synchronized Local Timer Using a Periodic Signal | |
EP3518456A1 (en) | Wireless device, processing method for wireless device and program | |
CN111357243A (zh) | 总线系统的用户设备、运行方法及总线系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |