CN119254375A - 一种基于fpga的时钟同步系统、方法及车辆电子设备 - Google Patents
一种基于fpga的时钟同步系统、方法及车辆电子设备 Download PDFInfo
- Publication number
- CN119254375A CN119254375A CN202411774430.9A CN202411774430A CN119254375A CN 119254375 A CN119254375 A CN 119254375A CN 202411774430 A CN202411774430 A CN 202411774430A CN 119254375 A CN119254375 A CN 119254375A
- Authority
- CN
- China
- Prior art keywords
- phase difference
- local clock
- timestamp
- master node
- slave node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 26
- 230000001360 synchronised effect Effects 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 7
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000005259 measurement Methods 0.000 description 8
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 7
- 101150085102 Clk3 gene Proteins 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 239000013078 crystal Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 101100003180 Colletotrichum lindemuthianum ATG1 gene Proteins 0.000 description 1
- WYTGDNHDOZPMIW-RCBQFDQVSA-N alstonine Natural products C1=CC2=C3C=CC=CC3=NC2=C2N1C[C@H]1[C@H](C)OC=C(C(=O)OC)[C@H]1C2 WYTGDNHDOZPMIW-RCBQFDQVSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 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/0638—Clock or time synchronisation among nodes; Internode synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明提供一种基于FPGA的时钟同步系统,包括:模数转换器ADC及相位鉴别器;相位鉴别器用于确定第一本地时钟与从节点的第二本地时钟之间的第一相位差信号;ADC用于将第一相位差信号转换为第二相位差信号;从节点用于根据第二相位差信号、同步报文从主节点发出的第一时间戳、同步报文到达从节点的第二时间戳、从节点发出延时请求报文的第三时间戳以及延时请求报文到达主节点的第四时间戳确定时间偏差;如此,先利用相位鉴别器及ADC确定出主节点和从节点之间的相位差,在确定时间偏差时将相位差考虑进去,可提高时间偏差的确定精度,进而提高主从节点之间的同步精度;并且不需要特定的网络以及软件配置,降低成本及复杂度。
Description
技术领域
本发明涉及时钟同步网络技术领域,尤其涉及一种基于FPGA的时钟同步系统、方法及车辆电子设备。
背景技术
1588v2协议,即IEEE 1588-2008标准,提供了亚微秒级的时间同步精度。这种高精度的时间同步在电信、金融交易、电力系统和工业自动化等领域发挥着重要作用。
目前,IEEE 1588协议能够与北斗卫星导航系统相结合,形成了IEEE 1588北斗卫星时间服务器。IEEE 1588协议也可以在工业物联网的时钟同步方面做出重要贡献。它不仅可用于传统的有线网络,还扩展到了无线网络时钟同步。该协议在WLAN、光数据中心、智能电网等工业应用领域发挥着重要作用。
但是现有的时间同步方案存在以下几个典型的问题:
1、复杂性和成本:实现高精度精确时间协议(PTP,Precision Time Protocol)可能需要特定的网络硬件和软件配置,增加了系统的复杂性和成本。
2、现有方案的同步精度大多是在亚微秒和亚纳秒级,同步精度偏低。
基于此,目前亟需一种时钟同步方法及系统,来降低时间同步系统的复杂性及成本,提高同步精度。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种基于FPGA的时钟同步系统、方法及车辆电子设备,以解决或者部分解决现有技术中的时钟同步系统的同步精度低、成本高的技术问题。
本发明的第一方面,提供一种基于现场可编程门阵列(FPGA,Field ProgrammableGate Array)的时钟同步系统,所述系统包括:主节点和从节点;所述主节点包括:模数转换器ADC及相位鉴别器;其中,
所述相位鉴别器,用于确定所述主节点的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;
所述模数转换器ADC,用于将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;
所述从节点,用于接收由所述主节点发送的同步报文,并向所述主节点发送延时请求报文;根据所述第二相位差信号、所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
上述方案中,所述从节点具体用于:
根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差;
根据所述真实相位差、所述第四时间戳以及所述第二本地时钟的时钟周期确定所述延时请求报文到达所述主节点的真实时刻;
根据所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的真实时刻确定所述时间偏差。
上述方案中,所述从节点具体用于:
根据公式确定所述第一本地时钟和所述第二本地时钟之间的真实相位差phase;其中,
所述为所述第二相位差信号,所述为所述ADC可输出的最大值,所述为所述相位鉴别器可测量的最大相位差。
上述方案中,所述从节点具体用于:
根据公式确定所述延时请求报文到达所述主节点的真实时刻;其中,所述为所述第四时间戳,所述phase为所述真实相位差,所述T为所述第二本地时钟的时钟周期。
上述方案中,所述相位差计算模块具体用于:
根据公式确定所述时间偏差;其中,
所述为所述第一时间戳,所述为所述第二时间戳,所述为所述第三时间戳,所述为所述延时请求报文到达所述主节点的真实时刻。
上述方案中,所述从节点具体用于:
获取所述第一本地时钟的时间戳;
将所述第一本地时钟的时间戳和所述时间偏差的和值确定为所述第二本地时钟的时间戳。
本发明的第二方面,提供一种基于FPGA的时钟同步方法,应用在第一方面中任一项所述的基于FPGA的时钟同步系统中,所述方法包括:
利用相位鉴别器确定主节点的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;
利用模数转换器ADC将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;
利用所述从节点根据所述第二相位差信号、同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
上述方案中,所述利用所述从节点根据所述第二相位差信号、同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、延时请求报文从所述从节点发出的第三时间戳以及延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差,包括:
根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差;
根据所述真实相位差、所述第四时间戳以及所述第二本地时钟的时钟周期确定所述延时请求报文到达所述主节点的真实时刻;
根据所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述从节点发出响应报文的第三时间戳以及所述延时请求报文到达所述主节点的真实时刻确定所述时间偏差。
上述方案中,所述根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差,包括:
根据公式确定所述第一本地时钟和所述第二本地时钟之间的真实相位差phase;其中,
所述为所述第二相位差信号,所述为所述ADC可输出的最大值,所述为所述相位鉴别器可测量的最大相位差。
本发明的第三方面,提供一种车辆电子设备,包括第一方面中任一项所述的基于FPGA的时钟同步系统。
本发明提供了一种基于FPGA的时钟同步系统、方法及车辆电子设备,系统包括:主节点和从节点;所述主节点包括:模数转换器ADC及相位鉴别器;其中,所述相位鉴别器,用于确定所述主节点的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;所述模数转换器ADC,用于将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;所述从节点,用于接收由所述主节点发送的同步报文,并向所述主节点发送延时请求报文;根据所述第二相位差信号、所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步;如此,先利用相位鉴别器及ADC确定出主节点和从节点之间的相位差,在确定时间偏差时将相位差考虑了进去,因此可提高时间偏差的确定精度,并且这种硬件同步的方式可进一步提高同步精度,精度可达纳秒级,进而提高主从节点之间的同步精度;并且本发明在硬件实现上只需要在主节点中增设相位鉴别器和ADC,不需要特定的网络以及相关的软件配置,从而也降低了成本及复杂度。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的IEEE 1588协议中主从节点报文交换过程示意图;
图2示出了根据本发明一个实施例的基于FPGA的时钟同步系统结构示意图;
图3示出了根据本发明一个实施例的主节点的结构示意图;
图4示出了根据本发明一个实施例的从节点的结构示意图;
图5示出了根据本发明一个实施例的主节点和从节点之间的时钟传递示意图;
图6示出了根据本发明一个实施例的主节点和从节点之间的时钟关系示意图;
图7示出了根据本发明一个实施例的基于FPGA的时钟同步方法流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为了能够更好地理解本发明的技术方案,这里先介绍一下IEEE 1588协议标准。在1588协议标准中规定有主节点1和从节点2,主节点1和从节点2是基于IEEE 1588协议标准进行同步的。1588协议的全称是网络测量和控制系统的精密时钟同步协议标准,基本功能是分布式网络中所有时钟都与最精确的时钟保持同步,它定义了一种精确的时间协议PTP(precision Time Protocol)。IEEE 1588协议中定义了5种类型的PTP报文:同步报文(Sync)、跟随报文(Follow_up)、延时请求报文(Delay_req)、延时响应报文(Delay_resp)和管理报文(Management)。
其中,前4种报文主要用于时间戳交换,具体的时间戳交换的过程示意图如图1所示,报文收发流程如下:
1、主节点1(MASTER)周期性地发出同步Sync报文,并记录下Sync报文离开主节点1的第一时间戳;
2、主节点1将第一时间戳封装到Follow_up报文中,发送给从节点2(SLAVE);
3、从节点2记录Sync报文到达从节点2的第二时间戳;
4、从节点2发出延时请求报文Delay_req并且记录对应的第三时间戳;
5、主节点1记录下Delay_req报文到达主节点1时的第四时间戳;
6、主节点1发出携带有第四时间戳的延时请求响应报文Delay_resp给从节点2。
但是在报文交换过程中,由于存在传播路径,当主节点1和从节点2未同步时,从节点2的第二本地时钟的时间戳相对主节点1的第一本地时钟的时间戳有一个时间偏差offset。同步的过程是为了计算出这个时间偏差,从而根据时间偏差来调节从节点2的第二本地时钟的时间戳,从而达到主从节点同步目的。时间戳同步的目的是使从节点2的第二本地时钟的时间戳与主节点1的第一本地时钟的时间戳达到相对同步。
基于此,本发明提供一种基于FPGA的时钟同步系统,如图2所示,系统包括:主节点1和从节点2;主节点1包括:模数转换器ADC、相位鉴别器11以及第一FPGA芯片;从节点2包括:第二FPGA芯片;其中,
相位鉴别器11,用于确定主节点1的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;
模数转换器ADC,用于将第一相位差信号转换为第二相位差信号;第二相位差信号为电压数字信号;
从节点2,用于接收由所述主节点发送的同步报文,并向所述主节点发送延时请求报文;根据所述第二相位差信号、所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
具体来讲,参考图2,主节点1和从节点2可使用相同的PCB电路板,每一块PCB电路板上均搭载有FPGA芯片,主节点1和从节点2均为锁相环(PLL,Phase Locked Loop)电路。在进行电路设计时,可在硬件电路板上设置一个跳线器,来确定两块硬件电路板的主从关系,从而确定出主节点1和从节点2。为保证主节点1和从节点2链路之间的对称性,PCB电路板时钟收发路径以及PTP报文收发路径的长度都应该用蛇形线保证长度一致。
主节点1和从节点2均包括有调试接口Quick USB,上位机可通过Quick USB接口分别对第一FPGA芯片、第二FPGA芯片进行调试和程序固化。
另外,为了消除晶振的频率漂移以及频率偏差带来的影响,从节点2不使用本地晶振,而是直接使用主节点1传输来的时钟信号作为时间戳的时钟。也就是说,主节点1和从节点2使用了同源时钟。
其中,第一FPGA芯片可参考图3,第一FPGA芯片包括:主节点时钟同步协议模块31、第一发送缓冲模块32、第一接收缓冲模块33、第一本地时钟模块34、A/D控制模块35以及相位测量控制模块36;其中,
主节点时钟同步协议模块31用于控制报文的发送和接收;
第一发送缓冲模块32用于将主节点时钟同步协议模块31中的通信报文以曼彻斯特编码方式发送出去;
第一接收缓冲模块33用于从接收路径中解码出相应的通信报文;
第一本地时钟模块34用于维护主节点1的第一本地时钟;
A/D控制模块35用于向模数转换器ADC发送信号转换控制指令;
相位测量控制模块36用于向相位鉴别器11发送相位测量指令。
具体地,相位鉴别器11中设置有两组独立的输入端口,一组输入端口用于接收主节点1的第一本地时钟的时钟信号,另外一组输入端口用于接收从节点2的第二本地时钟的时钟信号。当主节点1的第一本地时钟被触发,相位测量控制模块36会向相位鉴别器11发送相位测量指令,相位鉴别器11会检测第一本地时钟的时钟信号和第二本地时钟的时钟信号的上升沿或下降沿,当第一本地时钟的边沿到来时,如果第二本地时钟的边沿紧跟在第一本地时钟之后,则认为相位偏差较小;如果第二本地时钟的边沿相对第一本地时钟的边沿提前或延后,则认为相位偏差较大,此时则输出第一相位差信号,此时第一相位差信号为电压模拟信号。
然后A/D控制模块35向模数转换器ADC发送信号转换控制指令,ADC基于信号转换控制指令将第一相位差信号转换为第二相位差信号,第二相位差信号为电压数字信号。也即,ADC用于将模拟信号转换为电压数字信号。
第二FPGA芯片的结构可参考图4,第二FPGA芯片包括:从节点时钟同步协议模块41、第二发送缓冲模块42、第二接收缓冲模块43、第二本地时钟模块44;其中,
从节点时钟同步协议模块41用于控制报文的发送和接收;
第二发送缓冲模块42用于将从节点时钟同步协议模块41中的通信报文以曼彻斯特编码方式发送出去;
第二接收缓冲模块43用于从接收路径中解码出相应的通信报文;
第二本地时钟模块44用于维护从节点2的第二本地时钟。
第二FPGA芯片还包括:相位差计算模块45和时间偏差计算模块46;其中,
相位差计算模块45,用于根据第二相位差信号、ADC可输出的最大值以及相位鉴别器11可测量的最大相位差确定第一本地时钟和第二本地时钟之间的真实相位差;
时间偏差计算模块46,用于根据真实相位差、第四时间戳以及第二本地时钟的时钟周期确定延时请求报文到达主节点1的真实时刻;
根据同步报文从主节点1发出的第一时间戳、同步报文到达从节点2的第二时间戳、从节点2发出延时请求报文的第三时间戳以及延时请求报文到达主节点1的真实时刻确定时间偏差。
进一步地,主节点1和从节点2的时钟传递可参考图5,在图5中,Clk1是主节点的晶振时钟,因此当报文从主节点1的发射端Tx1发送出去,到达从节点2的接收端Rx2后,此时从节点2的时钟应为Clk2时钟,由于主节点1和从节点2之间存在一段距离的传播路径,因此Clk2和Clk1之间会产生一个相位差。
从节点2在Clk2时钟下经发射端Tx2将报文反馈至主节点1的接收端Rx1后,此时又会产生一个Clk3时钟。Clk3和Clk2之间又会产生一个相位差。其中,Clk1、Clk2和Clk3的波形示意图可参考图6。结合图2,图2中的Master_Clk包含Clk1和Clk3,Slave_Clk包含Clk2。
在图6中,可以看出Clk1和Clk3之间存在一个相位差Phase。
映射到图1中,对于第一时间戳来说,是指同步报文从主节点1发出的时刻,触发时钟为Clk1,而时间戳时钟是主节点1的第一本地时钟Clk1,因此是精确的。对于第二时间戳来说,是同步报文到达从节点2的时刻,触发时钟为Clk2,而时间戳时钟是从节点2的第二本地时钟Clk2,因此是精确的。对于第三时间戳来说,是从节点2发出延时请求报文的时刻,触发时钟为Clk2,而时间戳时钟是从节点2的第二本地时钟Clk2,因此是精确的。对于第四时间戳来说,是延时请求报文到达主节点1的时刻,触发时钟是Clk3,而时间戳时钟为主节点1的第一本地时钟Clk1,因此是存在误差的。
从图6中可以看出,真实时刻应在之前到达。因此为了确保主节点1和从节点2实现精确同步,需要消除第一本地时钟和第二本地时钟之间的相位差对同步精度带来的影响。那么在一种实施方式中,相位差计算模块45具体用于:
根据公式确定第一本地时钟和第二本地时钟之间的真实相位差phase;其中,
为第二相位差信号,为ADC可输出的最大值,为相位鉴别器可测量的最大相位差。
其中,ADC可输出的最大值需要根据ADC的分辨率确定,比如若ADC的分辨率为12位,那么ADC可输出的最大值为4096。相位鉴别器11可测量的最大相位差一般为弧度或360度。
真实相位差phase确定出之后,相位差计算模块45还用于:
根据公式确定延时请求报文到达主节点1的真实时刻;其中,为第四时间戳,phase为真实相位差,T为第二本地时钟的时钟周期。
延时请求报文到达主节点1的真实时刻确定出之后,相位差计算模块45还用于:
根据公式确定时间偏差;其中,
为第一时间戳,为第二时间戳,为第三时间戳,为延时请求报文到达主节点1的真实时刻。
时间偏差确定出之后,从节点2可根据时间偏差更新第二本地时钟的时间戳,包括:
获取第一本地时钟的时间戳;
将第一本地时钟的时间戳和时间偏差的和值确定为第二本地时钟的时间戳。
本发明先利用相位鉴别器及ADC确定出主节点和从节点之间的相位差,在确定时间偏差时将相位差考虑了进去,因此可提高时间偏差的确定精度,精度可达纳秒级,进而提高主从节点之间的同步精度;并且本发明在硬件实现上只需要在主节点中增设相位鉴别器和ADC,不需要特定的网络以及相关的软件配置,从而也降低了成本及复杂度。
基于与前述实施例同样的发明构思,本发明还提供一种基于FPGA的时钟同步方法,应用在上述提及的基于FPGA的时钟同步系统中,如图7所示,方法包括以下步骤:
S710,利用相位鉴别器确定主节点的第一本地时钟与从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号。
相位鉴别器中设置有两组独立的输入端口,一组输入端口用于接收主节点的第一本地时钟的时钟信号,另外一组输入端口用于接收从节点的第二本地时钟的时钟信号。当主节点的第一本地时钟被触发,相位测量控制模块会向相位鉴别器发送相位测量指令,相位鉴别器会检测第一本地时钟的时钟信号和第二本地时钟的时钟信号的上升沿或下降沿,当第一本地时钟的边沿到来时,如果第二本地时钟的边沿紧跟在第一本地时钟之后,则认为相位偏差较小;如果第二本地时钟的边沿相对第一本地时钟的边沿提前或延后,则认为相位偏差较大,此时则输出第一相位差信号,此时第一相位差信号为电压模拟信号。
S711,利用ADC将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号。
然后A/D控制模块向模数转换器ADC发送信号转换控制指令,ADC基于信号转换控制指令将第一相位差信号转换为第二相位差信号,第二相位差信号为电压数字信号。也即,ADC用于将模拟信号转换为电压数字信号。
S712,利用所述从节点根据所述第二相位差信号、同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
主节点获取到ADC反馈的第二相位差信号后,将第二相位差信号发送至从节点,从节点可根据第二相位差信号、同步报文从主节点发出的第一时间戳、同步报文到达从节点的第二时间戳、从节点发出延时请求报文的第三时间戳以及延时请求报文到达主节点的第四时间戳确定第一本地时钟和第二本地时钟的时间偏差。
在一种实施方式中,利用从节点根据第二相位差信号、同步报文从主节点发出的第一时间戳、同步报文到达从节点的第二时间戳、从节点发出响应报文的第三时间戳以及延时请求报文到达主节点的第四时间戳确定第一本地时钟和第二本地时钟的时间偏差,包括:
根据第二相位差信号、ADC可输出的最大值以及相位鉴别器可测量的最大相位差确定第一本地时钟和第二本地时钟之间的真实相位差;
根据真实相位差、第四时间戳以及第二本地时钟的时钟周期确定延时请求报文到达主节点的真实时刻;
根据同步报文从主节点发出的第一时间戳、同步报文到达从节点的第二时间戳、从节点发出响应报文的第三时间戳以及延时请求报文到达主节点的真实时刻确定时间偏差。
在一种实施方式中,根据第二相位差信号、ADC可输出的最大值以及相位鉴别器可测量的最大相位差确定第一本地时钟和第二本地时钟之间的真实相位差,包括:
根据公式确定第一本地时钟和第二本地时钟之间的真实相位差phase;其中,
为第二相位差信号,为ADC可输出的最大值,为相位鉴别器可测量的最大相位差。
在一种实施方式中,根据真实相位差、第四时间戳以及第二本地时钟的时钟周期确定延时请求报文到达主节点的真实时刻,包括:
根据公式确定延时请求报文到达主节点的真实时刻;其中,为第四时间戳,phase为真实相位差,T为第二本地时钟的时钟周期。
在一种实施方式中,根据同步报文从主节点发出的第一时间戳、同步报文到达从节点的第二时间戳、从节点发出响应报文的第三时间戳以及延时请求报文到达主节点的真实时刻确定时间偏差,包括:
根据公式确定时间偏差;其中,
为第一时间戳,为第二时间戳,为第三时间戳,为延时请求报文到达主节点的真实时刻。
在一种实施方式中,时间偏差确定出之后,方法还包括:
获取第一本地时钟的时间戳;
将第一本地时钟的时间戳和时间偏差的和值确定为第二本地时钟的时间戳。
本发明还提供了一种车辆电子设备,包括上述提及的基于FPGA的时钟同步系统,该系统的具体结构和实现原理可参考上文对应描述,故在此就不再赘述。
通过本发明的一个或者多个实施例,本发明具有以下有益效果或者优点:
本发明提供了一种基于FPGA的时钟同步系统、方法及车辆电子设备,系统包括:主节点和从节点;所述主节点包括:模数转换器ADC及相位鉴别器;其中,所述相位鉴别器,用于确定所述主节点的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;所述模数转换器ADC,用于将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;所述从节点,用于接收由所述主节点发送的同步报文,并向所述主节点发送延时请求报文;根据所述第二相位差信号、所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。如此,先利用相位鉴别器及ADC确定出主节点和从节点之间的相位差,在确定时间偏差时将相位差考虑了进去,因此可提高时间偏差的确定精度,精度可达纳秒级,进而提高主从节点之间的同步精度;并且本发明在硬件实现上只需要在主节点中增设相位鉴别器和ADC,不需要特定的网络以及相关的软件配置,从而也降低了成本及复杂度。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于FPGA的时钟同步系统,其特征在于,所述系统包括:主节点和从节点;所述主节点包括:模数转换器ADC及相位鉴别器;其中,
所述相位鉴别器,用于确定所述主节点的第一本地时钟与所述从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;
所述模数转换器ADC,用于将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;
所述从节点,用于接收由所述主节点发送的同步报文,并向所述主节点发送延时请求报文;根据所述第二相位差信号、所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
2.如权利要求1所述的系统,其特征在于,所述从节点具体用于:
根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差;
根据所述真实相位差、所述第四时间戳以及所述第二本地时钟的时钟周期确定所述延时请求报文到达所述主节点的真实时刻;
根据所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的真实时刻确定所述时间偏差。
3.如权利要求2所述的系统,其特征在于,所述从节点具体用于:
根据公式确定所述第一本地时钟和所述第二本地时钟之间的真实相位差phase;其中,
所述为所述第二相位差信号,所述为所述ADC可输出的最大值,所述为所述相位鉴别器可测量的最大相位差。
4.如权利要求2所述的系统,其特征在于,所述从节点具体用于:
根据公式确定所述延时请求报文到达所述主节点的真实时刻;其中,所述为所述第四时间戳,所述phase为所述真实相位差,所述T为所述第二本地时钟的时钟周期。
5.如权利要求2所述的系统,其特征在于,所述相位差计算模块具体用于:
根据公式确定所述时间偏差;其中,
所述为所述第一时间戳,所述为所述第二时间戳,所述为所述第三时间戳,所述为所述延时请求报文到达所述主节点的真实时刻。
6.如权利要求1所述的系统,其特征在于,所述从节点具体用于:
获取所述第一本地时钟的时间戳;
将所述第一本地时钟的时间戳和所述时间偏差的和值确定为所述第二本地时钟的时间戳。
7.一种基于FPGA的时钟同步方法,其特征在于,应用在权利要求1-6任一权项所述的基于FPGA的时钟同步系统中,所述方法包括:
利用相位鉴别器确定主节点的第一本地时钟与从节点的第二本地时钟之间的第一相位差信号;所述第一相位差信号为电压模拟信号;
利用模数转换器ADC将所述第一相位差信号转换为第二相位差信号;所述第二相位差信号为电压数字信号;
利用所述从节点根据所述第二相位差信号、同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差;根据所述时间偏差调整所述第二本地时钟的时间戳,使得所述从节点与所述主节点保持同步。
8.如权利要求7所述的方法,其特征在于,所述利用所述从节点根据所述第二相位差信号、同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、延时请求报文从所述从节点发出的第三时间戳以及所述延时请求报文到达所述主节点的第四时间戳确定所述第一本地时钟和所述第二本地时钟的时间偏差,包括:
根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差;
根据所述真实相位差、所述第四时间戳以及所述第二本地时钟的时钟周期确定所述延时请求报文到达所述主节点的真实时刻;
根据所述同步报文从所述主节点发出的第一时间戳、所述同步报文到达所述从节点的第二时间戳、所述从节点发出响应报文的第三时间戳以及所述延时请求报文到达所述主节点的真实时刻确定所述时间偏差。
9.如权利要求8所述的方法,其特征在于,所述根据所述第二相位差信号、所述ADC可输出的最大值以及所述相位鉴别器可测量的最大相位差确定所述第一本地时钟和所述第二本地时钟之间的真实相位差,包括:
根据公式确定所述第一本地时钟和所述第二本地时钟之间的真实相位差phase;其中,
所述为所述第二相位差信号,所述为所述ADC可输出的最大值,所述为所述相位鉴别器可测量的最大相位差。
10.一种车辆电子设备,其特征在于,包括权利要求1-6任一权项所述的基于FPGA的时钟同步系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411774430.9A CN119254375A (zh) | 2024-12-05 | 2024-12-05 | 一种基于fpga的时钟同步系统、方法及车辆电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411774430.9A CN119254375A (zh) | 2024-12-05 | 2024-12-05 | 一种基于fpga的时钟同步系统、方法及车辆电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN119254375A true CN119254375A (zh) | 2025-01-03 |
Family
ID=94034266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202411774430.9A Pending CN119254375A (zh) | 2024-12-05 | 2024-12-05 | 一种基于fpga的时钟同步系统、方法及车辆电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN119254375A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122337A (en) * | 1998-01-06 | 2000-09-19 | Maker Communications, Inc. | Modular circuitry architecture for residual time stamp service clock regenerator phase locked loop |
US20030201927A1 (en) * | 2002-04-24 | 2003-10-30 | Takamoto Watanabe | Analog-to-digital conversion method and device |
CN108768396A (zh) * | 2018-06-08 | 2018-11-06 | 中国电子科技集团公司第五十八研究所 | 一种用于多通道adc的时钟相位失配校准电路 |
CN114448441A (zh) * | 2021-03-05 | 2022-05-06 | 中兴通讯股份有限公司 | 一种时钟校准方法、装置和设备 |
CN117784885A (zh) * | 2023-12-29 | 2024-03-29 | 中科南京智能技术研究院 | 一种同步fifo电路及其控制方法 |
-
2024
- 2024-12-05 CN CN202411774430.9A patent/CN119254375A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122337A (en) * | 1998-01-06 | 2000-09-19 | Maker Communications, Inc. | Modular circuitry architecture for residual time stamp service clock regenerator phase locked loop |
US20030201927A1 (en) * | 2002-04-24 | 2003-10-30 | Takamoto Watanabe | Analog-to-digital conversion method and device |
CN108768396A (zh) * | 2018-06-08 | 2018-11-06 | 中国电子科技集团公司第五十八研究所 | 一种用于多通道adc的时钟相位失配校准电路 |
CN114448441A (zh) * | 2021-03-05 | 2022-05-06 | 中兴通讯股份有限公司 | 一种时钟校准方法、装置和设备 |
CN117784885A (zh) * | 2023-12-29 | 2024-03-29 | 中科南京智能技术研究院 | 一种同步fifo电路及其控制方法 |
Non-Patent Citations (1)
Title |
---|
谌普江;龚光华;: "基于FPGA的高精度同步时钟系统设计", 单片机与嵌入式系统应用, no. 11, 1 November 2013 (2013-11-01) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105680975B (zh) | 一种主从结构多节点网络的时间同步方法 | |
CN101447861B (zh) | Ieee 1588时间同步系统及其实现方法 | |
US8793524B2 (en) | Method and apparatus for synchronising the local time of a plurality of instruments | |
CN104917582B (zh) | 高精度时钟分发和相位自动补偿系统及其相位调节方法 | |
JP5569299B2 (ja) | 通信システム及び通信インタフェース装置、並びに同期方法 | |
US20120005517A1 (en) | Synchronisation and timing method and apparatus | |
US9547332B1 (en) | Accurate time capture and transfer between clock domains | |
EP3531610B1 (en) | Frequency synchronization method and slave clock | |
WO2021077289A1 (zh) | 一种同步方法及设备 | |
CN110995388B (zh) | 一种分布式的共享时钟触发调延系统 | |
CN108599888A (zh) | 一种分布式网络时钟同步系统 | |
US20210385058A1 (en) | Method and apparatus for synchronizing different communication ports | |
CN115801175B (zh) | 时间频率同步方法、系统、存储介质及电子设备 | |
CN108738127B (zh) | 射频拉远单元、基带处理单元、分布式基站及其同步方法 | |
US20230367358A1 (en) | Scalable Boundary Clock | |
Schleusner et al. | Sub-microsecond time synchronization for network-connected microcontrollers | |
CN119232307A (zh) | 一种车载网络时间同步方法及系统 | |
CN107800500A (zh) | 一种确定时间同步报文时钟时间的方法、装置和设备 | |
CN114063505A (zh) | 一种同步控制方法、装置、设备、同步系统及存储介质 | |
CN119254375A (zh) | 一种基于fpga的时钟同步系统、方法及车辆电子设备 | |
CN117784580A (zh) | 提升ptp点对点授时精度的方法和授时装置 | |
CN102571253A (zh) | 实现精确时间同步的方法和设备 | |
US20230208543A1 (en) | Synchronizing update of time of day counters using time stamp exchange over a control plane | |
RU172628U1 (ru) | Сервер синхронизации времени | |
CN114520703B (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 |