基于FPGA的处理器间高精度时钟同步通信机制
基于FPGA的OFDM时频同步系统的设计与仿真
基于FPGA的OFDM时频同步系统的设计与仿真
段鹏;何明一;薛敏彪
【期刊名称】《测控技术》
【年(卷),期】2009(028)011
【摘要】同步技术是OFDM中的一项关键技术.但由于无线信道的随机性,传统方法在门限设定上无法兼顾判断准确性和计算复杂度两方面性能.针对这一问题,提出了一种将相对门限和浮动门限相结合的同步判决方法,它能够在保持判断准确性的同时降低计算时的复杂度.此外,通过交叠计算训练序列相关值的方法来提高频偏估计精度.在此基础上,详细阐述了算法关键模块的电路结构和硬件实现.仿真结果表明该算法在多径信道环境下具有较高的时间同步和频偏估计精度,能够有效地降低硬件资源消耗,节省传输带宽.
【总页数】6页(P63-67,72)
【作者】段鹏;何明一;薛敏彪
【作者单位】西北工业大学电子信息学院,陕西,西安,710072;西北工业大学电子信息学院,陕西,西安,710072;西北工业大学电子信息学院,陕西,西安,710072
【正文语种】中文
【中图分类】TN914
【相关文献】
1.基于CAZAC序列的OFDM时频同步方案及FPGA实现 [J], 常凝;闫瑞军;胡涵飞
2.基于概率同步算法的计算机外时钟同步系统设计与仿真 [J], 李明国;宋海娜;庄钊文
3.基于时频联合的OFDM系统载波频偏估计方案及FPGA实现 [J], 刘晓明;吴德松;汪梦柔;王潇瀛
4.基于FPGA的OFDM时间同步系统串并结构设计 [J], 周毅;薛敏彪;胡永红
5.基于E1接口的时间同步系统关键模块设计与仿真 [J], 闫辉;胡永辉;侯雷
因版权原因,仅展示原文概要,查看原文内容请购买。
fpga提高时钟的方法
fpga提高时钟的方法
在FPGA设计中,提高时钟频率的方法有很多,以下是一些常见的方法:
1. 优化时钟网络:在FPGA设计中,时钟网络是影响时钟频率的主要因素之一。
优化时钟网络可以减小时钟源的抖动和时钟网络的延迟,从而提高时钟频率。
常用的优化方法包括使用低抖动的时钟源、减少时钟网络的分支和长度、使用时钟缓冲和时钟恢复等。
2. 流水线设计:流水线设计是一种将操作划分为多个阶段,每个阶段都以一定的时钟周期完成,从而使得整个操作可以在更高的时钟频率下完成。
通过合理地划分阶段和优化每个阶段的电路,可以减小每个阶段的延迟,从而提高整个流水线的效率。
3. 时序约束和时序分析:在FPGA设计中,时序约束和时序分析是保证设计在给定时钟频率下正确运行的关键。
通过合理的时序约束和时序分析,可以确定每个逻辑单元的时序参数,从而使得设计能够在更高的时钟频率下稳定运行。
4. 使用高速电路和高速连接器:在FPGA设计中,高速电路和高速连接器可以减小信号的传输延迟和抖动,从而提高时钟频率。
常用的高速电路包括差分信号和低阻抗信号等,高速连接器包括高速PCB连接器和高速电缆连接器等。
5. 动态电压和频率调节:动态电压和频率调节是一种根据工作负载的变化自动调整FPGA的电压和时钟频率的方法。
通过动态电压和频率调节,可以在保证FPGA稳定运行的同时减小功耗和提高时钟频率。
总之,提高FPGA的时钟频率需要综合考虑多种因素和方法,包括优化时钟网络、流水线设计、时序约束和时序分析、使用高速电路和连接器以及动态电压和频率调节等。
基于FPGA+CPU的信号处理系统的设计与实现
• 174•基于FPGA+CPU的信号处理系统的设计与实现上海广电通信技术有限公司 李红霞【摘要】文章简要介绍了雷达信号处理的发展现状,为了解决现有的雷达信号处理系统信号处理能力弱、数据传输速率低的问题,设计开发了基于FPGA+CPU 的船用导航雷达信号处理系统。
该系统充分利用FPGA 的流水性能以及通用 CPU 的并行处理能力,将算法合理分配至不同的处理器中,实现大数据量的实时传输和高性能的实时信号处理。
文章从系统设计入手介绍了船用导航雷达信号处理系统的工作原理,简要介绍了船用导航雷达信号处理系统的硬件设计,并从信号预处理、信号处理、目标跟踪三个方面阐述了船用导航雷达信号处理系统的信号处理流程和算法设计。
【关键词】雷达信号处理系统;信号预处理;信号处理;目标跟踪0 引言船舶驾驶员在驾驶船舶过程中,需要做到瞭望、定位、导航和避碰,这就要通过船用导航雷达来保证。
船用导航雷达是船舶正常航行所必备的电子设备之一,在过弯道、船舶靠港和离开以及海上作业等方面起到了重要的作用[1]。
雷达系统的不断升级相应的要求大幅提升信号处理系统的计算速度、数据带宽和传输速率[2]。
而现有的雷达信号处理系统的运算能力较低,传送数据的速率不高,无法满足现代信号处理的需求。
因此增强雷达系统的运算能力,提高传送数据的速度是如今雷达信号处理亟待解决的问题。
本文所采用的方案,可以很好地完成实时、可靠的雷达信号处理。
本文中的信号处理系统采用ADC+FPGA+CPU 的系统架构,集高密度计算与高速数据传输于一体,实现强大的信号处理及数据交换能力[1],同时提高了系统的集成度。
1 系统设计船用导航雷达信号处理的数据量大,对实时性和数据传输速率都要求较高,本文中针对以上特点,并结合 FPGA 的流水性能以及通用 CPU 的并行处理能力,将算法合理分配至不同的处理器中,提升了信号处理能力和数据传输能力,降低成本的同时提高了系统的集成度。
船用导航雷达信号处理系统通过ADC 对视频信号进行采样,将模拟视频信号转换为数字化的视频数据。
FPGA的万兆以太网精密时间同步协议实现
F PG A的万兆以太网精密时间同步协议实现郑恩,贺孟,徐强,吴晓嫣(中国电子科技集团公司第三十研究所,成都610041)摘要:介绍了I E E E1588精密时间同步协议的基本原理㊂介绍了一种万兆以太网中基于F P G A实现硬件标记时间戳的P T P协议的方案㊂方案中系统定时器模块㊁同步计算模块㊁时间戳模块等功能都在F P G A中实现㊂经过测试,结果满足需求㊂关键词:时间同步;万兆以太网;I E E E1588中图分类号:T N 文献标识码:AI m p l e m e n t a t i o n o f10G i g a b i t E t h e r n e t P r e c i s i o n T i m e P r o t o c o l B a s e d o n F P G AZ h e n g E n,H e M e n g,X u Q i a n g,W u X i a o y a n(N o.30I n s t i t u t e o f C E T C,C h e n g d u610041,C h i n a)A b s t r a c t:I n t h e p a p e r,t h e b a s i c p r i n c i p l e s o f p r e c i s i o n t i m e p r o t o c o l d e s c r i b e d i n I E E E1588a r e i n t r o d u c e d.A n i m p l e m e n t a t i o n m e t h o d o f P T P w i t h h a r d w a r e t i m e s t a m p i n g i n10G i g a b i t E t h e r n e t b a s e d o n F i e l d P r o g r a mm a b l e G a t e a r r a y(F P G A)i s p r o p o s e d.A l l t h e m o d-u l e s i n t h e d e s i g n,i n c l u d i n g s y s t e m t i m e r m o d u l e,c a l c u l a t i o n o f s y n c h r o n i z a t i o n m o d u l e,t i m e s t a m p m o d u l e a r e i m p l e m e n t e d i n F P G A. T h e e x p e r i m e n t r e s u l t s m e e t t h e d e m a n d.K e y w o r d s:t i m e s y n c h r o n i z a t i o n;10G i g a b i t E t h e r n e t;I E E E1588引言以太网技术由于具有低成本㊁易维护等优点,在局域网领域广受欢迎,且不断向工业控制等其他领域扩展㊂随着信息技术的快速发展,各种应用系统对网络带宽的需求不断增加,传统千兆以太网难以满足要求,更高性能的万兆以太网将快速普及㊂万兆以太网保留了对传统以太网技术关键特性的兼容(如帧格式㊁MA C协议等),但仅支持全双工模式,并且不再使用C S MA/C D协议㊂万兆以太网将速率提升到10G b p s,但在实时性方面没有保障㊂为此,研究了适合以太网的高精度时间同步协议I E E E1588,并基于F P G A进行了设计实现㊂1I E E E1588协议简介I E E E1588协议全称为网络测量和控制系统的精确时间同步协议,也称为P T P协议㊂I E E E1588通过在主时钟与从时钟之间交互带有时间戳信息的报文实现时间同步,同步精度可达亚微秒级㊂1.1I E E E1588协议同步原理I E E E1588同步是一种主从同步机制,通过实现所有从时钟与主时钟的同步达到系统同步,主时钟由最佳主时钟(B M C)算法选择确定㊂P T P协议定义了S y n c㊁D e l a y_R e q㊁F o l l o w_U p㊁D e l a y_ R e s p四种基本报文㊂首先主时钟向从时钟发送S y n c报文,并记录S y n c报文发送的时间t1,从时钟收到S y n c报文并记录报文接收时间t2㊂主时钟将t1时间传递给从时钟,一种方法是发送携带t1时间戳的F o l l o w_U p报文,另一种是直接将t1时间戳嵌入在S y n c报文中,前者为2 s t e p模式,后者为1s t e p模式,通常需要硬件协助㊂接着,从时钟发送D e l a y_R e q报文给主时钟,并记录发送时间t3,主时钟收到D e l a y_R e q报文,记录报文的接收时间t4,并发送包含t4时间戳的D e l a y_R e s p报文给从时钟,从时钟收到D e l a y_R e s p报文后,就掌握了t1㊁t2㊁t3㊁t4四个时间戳㊂同步报文交互过程如图1所示㊂假设从时钟与主时钟的时间偏差为t o f f s e t,主时钟到从时钟的线路延时为D e l a y m2s,从时钟到主时钟的线路延时为D e l a y s2m,则有如下关系:t1+D e l a y m2s+t o f f s e t=t2(1)t3+D e l a y s2m-t o f f s e t=t4(2)假设返往路径对称,则有D e l a y m2s=D e l a y s2m,由式(1)㊁式(2)得t o f f s e t=((t2-t1)-(t4-t3))/2(3)图1 基本同步报文交互d e l a y =((t 2-t 1)+(t 4-t 3))/2(4)因此,从时钟可以根据式(3)校准本地时间,从而与主时钟保持同步㊂1.2 I E E E 1588协议实现方式I E E E 1588协议可由多种方式实现,不同的实现方式同步精度不同㊂影响同步精度的主要因素包括网络协议栈延迟抖动㊁网络组件延迟抖动㊁时间戳精度和时钟振荡器稳定性等㊂常见的实现方式有纯软件实现和硬件协助实现两种,纯软件实现方式同步精度不高,采用硬件协助实现方式,通常在靠近物理层标记时间戳,可达到亚微秒级同步精度㊂2 万兆以太网I E E E 1588实现本文基于X i l i n x Z y n q 平台实现万兆以太网I E E E 1588协议㊂Z y n q 集成了A R M 处理器的软件可编程性和传统F P G A 的硬件可编程性,是当前广泛使用的图3 发送方向带内命令字时序图高性能嵌入式开发平台㊂设计中,Z y n q 的P L 逻辑部分主要完成万兆以太网㊁时间戳捕获㊁偏移计算㊁时间调整等功能,P S 处理器部分主要完成P T P 协议实现等功能㊂由于篇幅限制,下面重点介绍P L 部分的设计实现㊂图2是从节点的F P G A 功能框图,主节点架构与从节点相似㊂整个设计包括10G 以太网模块㊁I E E E -1588同步计算㊁定时器㊁数据合流㊁数据分流等主要模块㊂10G 以太网模块采用X i l i n x 的I P 进行实现,主要完成MA C 层㊁物理层功能和数据包收发时间戳捕获㊂定时器模块主要提供本地时间,并根据I E E E 1588同步计算结果进行时间校正㊂I E E E 1588同步计算模块主要解析收发I E E E 1588数据包,根据4种基本报文格式提取携带的时间戳数据,和本地时间数据按照I E E E 1588协议计算从时钟与主时钟的偏差,得出时间修正量实时更新本地时间㊂数据合流模块主要完成P T P 报文和业务数据的合流并交给10G 以太网系统发送㊂数据分流模块主要对万兆以太网子系统收到的数据包进行分类,将P T P 报文传递给P S 和I E E E 1588同步计算模块,将业务数据交给用户逻辑㊂图2 从节点功能框图10G 以太网模块提供高精度I E E E 1588时间戳标记支持㊂在发送方向,通过带内或带外命令字方式标识数据包所需的时间戳操作;在接收方向,所有数据包均标记了接收时间戳㊂通过设置发送配置寄存器和接收配置寄存器可配置命令字的提供方式和接收时间戳的提供方式㊂本方案中,发送和接收均选择带内方式,时序图如图3所示㊂由于选择了带内命令字方式,在发送方向,需要对送给10G 以太网模块的所有帧添加I E E E 1588命令字,这个工作由数据合流模块完成;同理,在接收方向,数据帧的第一个数据是时间戳,因此数据合流模块需要剥离这个时间戳后将以太帧送给用户逻辑㊂数据和信息服务,有利于电网数据的深入挖掘,为掌握电网运行信息和综合决策提供依据㊂在配电环节,基于物联网和无线传感器网络技术实现对输电线路和设备关键参数的在线监测和故障预警,通过传感器采集状态监测信息实现巡检数据自动化分析和决策,提高缺陷预警和处理能力㊂在用电环节,建立可靠的智能用电信息采集系统,实现电网营销㊁抄表㊁收费模式的信息化和标准化建设㊂为了快速响应市场变化,从用电信息源头提供数据支持,为智能电网配电㊁用电建设提供基础㊂结 语为了满足输变电设备在线检测的通用性和数据共享需求,提出在线检测设备功能分层化的信息通信体系架构,为变电站和输电线物联网分布式处理提供设计方法㊂通过接入网和汇聚网两级通信网络结构进行网络层的结构设计㊂针对通信网络采用汇聚网流量控制解决通信网络阻塞,为了提高通信网络容错率,提出一种异构双网双通道设计,实现设备在线监测和巡检,为了保证信号远距离传输的可靠度,基于M e s h +O P GW 光纤设计方案提高网络信号远距离传输能力㊂参考文献[1]王秋石,曾鹏,尚志军.第三十一讲:基于物联网的输电线路智能监测系统的研究[J ].仪器仪表标准化与计量,2012(1):1821.[2]曹一家,何杰,黄小庆,等.物联网技术在输变电设备状态监测中的应用[J ].电力科学与技术学报,2012,27(3):1627.[3]陈磊,黄在朝.基于物联网的输电线路状态监测技术在智能电网中的应用研究[J ].现代电子技术,2012,35(21):79,12.[4]王春新,杨洪,王焕娟,等.物联网技术在输变电设备管理中的应用[J ].电力系统通信,2011,32(5):116122.[5]刘通,陈波,杜朝波,等.输变电设备物联网关键技术研究思路探讨[J ].南方电网技术,2011,5(5):4750.[6]江秀臣,刘亚东,傅晓飞,等.输配电设备泛在电力物联网建设思路与发展趋势[J ].高电压技术,2019,45(5):13451351.[7]迟佳.物联网技术在智能电网输变电设备中的运用[J ].科技创新与应用,2019(20):178179,181.[8]段玉飞,王伟.基于物联网的输电线路智能监测系统研究与应用[J ].电力信息与通信技术,2019,17(7):2128.[9]王艳如,刘海峰,李琳,等.基于边缘智能分析的图像识别技术在输电线路在线监测中的应用[J ].电力信息与通信技术,2019,17(7):3540.[10]刘建明,赵子岩,季翔.物联网技术在电力输配电系统中的研究与应用[J ].物联网学报,2018,2(1):88102.[11]万黎升,李予辰,曹洋.泛在电力物联网下基于调控云的线路状态感知监测及数据共享研究[J ].电力信息与通信技术,2019,17(11):3237.[12]沈鑫,曹敏,薛武,等.基于物联网技术的输变电设备智能在线监测研究及应用[J ].南方电网技术,2016,10(1):3241.[13]胡致远,杨炳炉,朱咏梅,等.输变电设备物联网在线监测系统通信网络设计[J ].高电压技术,2015,41(7):22522258.[14]戴栋,张敏,赵东生,等.输电线路在线监测装置研制及其通信组网应用[J ].高电压技术,2015,41(12):39023908.[15]刘志永,王明霞,孙刚,等.输变电设备状态监测中的物联网技术应用研究[J ].自动化与仪器仪表,2017(3):171173.乔臻(硕士),主要研究方向为电网环保㊂(责任编辑:薛士然 收稿日期:2020-03-03) 命令字包含I E E E 1588操作模式㊁校验和更新㊁帧序号㊁时间戳偏移㊁检验和偏移等字段㊂本方案中选择1s t e p 模式,P T P 报文直接承载在以太帧内,因此只需设置I E E E 1588操作模式和时间戳偏移两个字段㊂结 语本文对I E E E 1588时间同步的原理进行了研究,简要分析不同实现方式的优缺点㊂提出基于F P G A 实现万兆以太网中I E E E 1588协议,设计中数据包内容解析㊁时间戳标记在物理层完成,数据包内容解析㊁同步计算和时间调整都在硬件中实现㊂优点是同步实时精度高㊁同步调整快,通过测试,系统完全满足要求㊂该研究成果对高速局域网中时间同步设计具有一定的参考价值㊂参考文献[1]I E E E S t d 15882008.1588I E E E S t a n d a r d f o r a P r e c i s i o nC l o c k S yn c h r o n i z a t i o n P r o t o c o l f o r N e t w o r k e d M e a s u r e m e n t a n d C o n t r o l S ys t e m s [S ].2008.[2]10G i g a b i t E t h e r n e t S u b s y s t e m v 3.1L o gi C O R E I P P r o d u c t G u i d e [E B /O L ].[202005].h t t p://w w w.x i l i n x .c o m.[3]I E E E S t d 802.32012s e c t i o n f o u r .I n t r o d u c t i o n t o 10G b /s b a s e b a n d n e t w o r k [E B /O L ].[202005].h t t p ://s t a n d a r d s .i e e e .o r g/d o w n l o a d s /802.3/.[4]刘大林.基于F P G A 的高精度I E E E 1588时间戳的设计与实现[J ].光通信技术,2015(6).[5]谭超.基于I E E E 1588的高精度时钟同步系统设计[J ].电子器件,2016,5(10).郑恩(工程师),主要研究方向为实时网络;贺孟(高级工程师),主要研究方向为F P G A 优化设计;徐强(工程师),主要研究方向为无线自组织网络;吴晓嫣(工程师),主要研究方向为无线通信网络㊂(责任编辑:薛士然 收稿日期:2020-05-21)。
基于FPGA的精确时钟同步方法
第41卷第10期2007年10月浙 江 大 学 学 报(工学版)Journal of Zhejiang University (Engineering Science )Vol.41No.10Oct.2007收稿日期:2007-02-06.浙江大学学报(工学版)网址:/eng基金项目:国家创新群体基金资助项目(60421002).作者简介:黄文君(1972-),男,浙江上虞人,高级工程师,从事自动控制技术、实时分布式控制系统、工业以太网技术的研究与开发.E 2mail :wjhuang @基于FPGA 的精确时钟同步方法黄文君1,遇 彬2(1.浙江大学工业控制技术国家重点实验室,浙江杭州310027;2.浙江大学先进控制研究所,浙江杭州310027)摘 要:为实现分布式系统高精度同步数据采集和控制的实时性要求,提出了一种基于工业以太网的分布式控制系统时钟硬件同步方法.基于高速数字逻辑硬件方法解析IEEE1588时间同步协议,采用硬件描述语言(V HDL )和现场可编程逻辑门阵列(FP GA )设计时间戳截获、晶振频率补偿、时钟同步算法等模块,为嵌入式实时控制系统构架高精度的硬件时钟同步方案,该方法解决了传统的基于嵌入式软件的时钟同步方案中时间戳不稳定、同步精度低等问题.对基于工业以太网的分布式控制系统进行了动态测试验证,实际测试数据表明系统各节点达到了亚微秒级的时钟同步精度,长期运行结果验证了系统同步精度的稳定性.关键词:精确时钟同步;工业以太网;现场可编程逻辑门阵列;实时控制系统中图分类号:TP393 文献标识码:A 文章编号:1008-973X (2007)10-1697-04Method for precise time synchronization based on FPG AHUAN G Wen 2jun 1,YU Bin 2(1.S tate Key L aboratory of I ndust rial Cont rol Technolog y ,Zhej iang Universit y ,H angz hou 310027,China;2.I nstitute of A dvanced Process Cont rol ,Zhej iang Universit y ,H angz hou 310027,China )Abstract :A hardware 2based precise time synchronization met hod for t he dist ributed cont rol system (DCS )based on indust rial Et hernet was propo sed to realize synchronous measurement and real 2time cont rol.U 2sing high 2speed digital circuit s ,e.g.field 2programmable gate array (FP GA ),hardware 2based st rategy was designed for implementing t he time synchronization p rotocol defined in IEEE1588.Timestamp capt ure module ,o scillator f requency co mpensation module ,time synchronization algorit hm and etc ,were all codedwit h high 2speed integrated circuit hardware description language (V HDL ).Problems wit h t he traditional time synchronization met hod based on embedded software were solved ,such as uncertain time delay of tim 2estamp and low time accuracy.A p recise time synchronization solution for t he embedded controller was p rovided successf ully.Test and experiment s in DCS showed high time accuracy and high stability ,and time accuracy reached t he sub 2microsecond range.K ey w ords :p recise time synchronization ;indust rial Et hernet ;field 2programmable gate array (FP GA );re 2al 2time control system 时钟同步是基于网络的分布式实时控制系统数据调度和任务的核心技术之一,它提供一种确定事件发生时间的先后顺序的机制,以保证节点发送和接收消息、控制、事故记录等在时间逻辑上是完全正确、可信的.传统的基于嵌入式软件的集成分布式系统的时间同步方案(如N TP )很难达到亚微秒级的同步精度,很难满足高实时性的同步数据采集、控制和分析的要求.IEEE1588标准定义了一个能够在测量和控制系统中实现精确的时钟同步的协议,它利用网络的通讯链路实现时钟同步,无需其他的同步线缆和额外投入,能达到较高的同步精度[1].IEEE1588能够在所有支持多播的网络上实现,特别适合于以太网.在工业以太网架构分布式控制系统中,基于嵌入式软件的方案由于受到数据帧多级缓冲时延不稳定、晶振频率漂移、中断服务程序响应时间等因素限制很难达到微秒级的同步精度.针对这一情况,本文结合工业以太网在实时控制系统中的应用,采用IEEE1588同步算法设计了一种基于FP GA的硬件时钟同步方案,采用硬件描述语言(V HDL)实现了亚微秒级的精确同步,满足高实时性、高精度的同步数据采集、记录和分析的需求.1 基于FP GA的时钟硬件同步方案1.1 硬件电路实现时钟同步方法分布式控制系统时钟是用计数器来实现的,判定2个时钟是否同步有2条标准:一是两者计数器的数值是否相等,二是两者计数器数值的增加速度是否相等.根据IEEE1588,要使从时钟同步于主时钟,首先要确定从时钟与主时钟的偏差.这个偏差值是根据数据包发送时间戳和接收时间戳的偏差来计算的,它的精度受到2个因素的影响:一是网络通讯链路传输延迟时间的不确定性,二是时间戳本身的精度.在基于嵌入式软件的时钟同步方案中,时钟计数器由CPU自身的计数器来实现,时间戳的获取点位于整个软件系统的最底层,即中断层[2].CPU 发送数据包时,先将待发送数据写入网卡芯片的发送缓冲区中,然后向网卡发出发送命令,同时读取计数器值作为该数据包的发送时间戳,由以太网的介质访问特性可知,这个时间戳并不是该数据包发出的真正时间,而且这个时间戳与该数据包发出的真正时间的差值也是不确定的.CPU通过响应网卡中断接收数据包,在中断处理程序中,读取计数器值作为该数据包的接收时间戳,但这个时间戳并不是接收到该数据包的第一个比特时的时间戳,所以还要减去数据包的长度(单位:比特)与传输每一个比特所需的时间之积,得到实际的接收时间戳,由于CPU的中断响应时间是不确定的,这个时间戳还不是接收该数据包的真正时间,其不确定性依CPU 的速度和操作系统的不同而不同.若网卡在接收到与时钟同步相关的数据包时,网卡芯片的缓存中还有其他未被CPU处理的数据包,则上述接收时间戳的精度又要大打折扣.随着网络传输速率的提升,在由直通型交换设备组建的以太网中,通讯链路的传输延迟时间的不确定性越来越小,这导致时间戳本身的精度对同步精度的影响明显加大.时间戳本身的精度是由时间戳的获取方式决定的,在上述的基于嵌入式软件的方案中,时间戳的获取点位于网络层和数据链路层之间,若能将时间戳的获取点下移至数据链路层和物理层之间,则时间戳的精度将大幅提高,但这种方法只有硬件电路才能实现.仅仅是周期性的校正从时钟无法实现精确的时钟同步,即使从时钟和主时钟的偏差可以计算得非常精确,每次校正后二者偏差为零,由于驱动时钟计数器的晶振的频率并不完全一致,2个标称频率相同的晶振的实际频率之间的微小差别会导致从时钟和主时钟的偏差随时间的变化逐渐增加,这种漂移在高精度同步的情况下是不能容许的.若要调节从时钟的晶振频率使得它与主时钟晶振频率相同,或者采用模拟电路,采用具有频率调节功能的时钟振荡源来驱动时钟计数器;或者采用数字电路,用硬件电路实现一个算法,其效果相当于采用频率不可调整的晶振和少量数字电路搭建一个等效的频率可调的时钟计数器.采用数字电路更为廉价和方便.从上述分析可以看出,采用数字电路硬件有助于大幅提升时钟同步精度,而且硬件电路的优势是基于嵌入式软件的方案无法达到的.本文设计了一种基于FP GA和硬件描述语言(V HDL)的时钟同步系统,发挥了硬件电路在获取时间戳和晶振频率纠偏方面的优势,实现了比基于嵌入式软件的方案更为精确的时钟同步.图1 时钟同步系统示意图Fig.1 System architecture of synchronization system 1.2 基于FPG A的时钟同步方案设计现场可编程逻辑门阵列(FP GA)采用硬件逻辑门阵列和语言编程方式(V HDL)实现信号的输入、输出及信息处理,具有ns级别的数据处理和运算能力.本文设计的基于FP GA的时钟同步系统的结构如图1所示,它包含一个主时钟节点,若干从时钟节点,其中主时钟节点上带有GPS(global posi28961浙 江 大 学 学 报(工学版) 第41卷 tion system )接收机.GPS 接收机发出的秒脉冲信号将主时钟同步于U TC (universal time coordina 2ted ),从时钟通过以太网的通讯链路同步于主时钟.网络拓扑为星型,以直通型交换机或集线器(HUB )作为交换设备.系统中节点的内部结构如图2所示.每个节点包含CPU 、以太网媒体访问控制(media access con 2t rol ,MAC )器、以太网物理层收发器、FP GA 等4种主要芯片.物理层收发器和MAC 控制器通过标准的M II (media independent interface )接口相连,CPU 通过总线与MAC 控制器和FP GA 相连.物理层收发器、MAC 控制器和CPU 构成通讯协议栈,完成数据包的发送和接收.图2 节点电路结构图Fig.2 Hardware architecture of clock nodeFP GA 内部结构如图3所示,它是整个同步系统的核心器件,完成时间戳的获取和晶振的纠偏功能.FP GA 通过监听和分析M II 接口上的信号来确定数据包的发送时间戳和接收时间戳.根据IEEE802.3标准,MII 接口位于介质访问子层和物理层之间,是一种简单、廉价、易于实现的电气接口,它支持10和100Mbps 2种传输速率,它的存在使得同一种介质访问控制器能够对非屏蔽双绞线、屏蔽双绞线、光纤等多种物理传输介质进行访问和控制[3].图3 FPG A 模块结构图Fig.3 Module architecture in FP GA基于FP GA 的时间同步方案内部采用结构化的硬件描述语言设计了M II 兼容的以太网发送/接收时间戳捕获器、晶振频率补偿器、时钟同步控制器、通用CPU 接口、测试接口等模块,其中时钟同步控制器实现了各个模块之间的数据高速交换、网络传输延迟滤波和基于IEEE1588的同步运算,并将运算结果作用于其他模块以实现晶振频率补偿、时钟同步等功能.通用CPU 接口为嵌入式实时控制系统提供高精度的硬件时钟访问接口.MII 接口共有18个信号,它们分别是用于发送数据的TXCL K 、TXD [3:0]、TXEN 、TXER ,用于接收数据的RXCL K 、RXD [3:0]、RXDV 、RXER ,此外还有CRS 和COL ,以及用于管理的MDIO 和MDC.TXCL K 是本地晶振产生的时钟信号,发送数据TXD [3:0]、发送使能TXEN 和发送差错TXER 都同步于TXCL K;RXCL K 是从接收到的信号中恢复出来的时钟信号,接收数据RXD [3:0]、接收有效RXDV 和接收差错RXER 都同步于RXCL K;载波监听CRS 和碰撞检测COL 既不同步于时钟TX 2CL K ,也不同步于时钟RXCL K.图4(a )、(b )和(c )分别是正常发送数据、正常接收数据和数据包发生碰撞时相关的M II 接口信号的波形.M II 接口发送数据宽度是4位(称为Nibble ),以小端方式组装,即每个字节的低4位为第一个Nibble ,高4位为第二图4 MII 波形图Fig.4 MII waveform个Nibble ,物理层电路发送数据时,首先发送每个Nibble 的最低位,最后发送每个Nibble 的最高位,接收数据时也按这个规则来组装.在发送端,每次发送数据包时,在向物理介质上发送数据位之前,必须先发送64位的前导码,用于接收端电路恢复时钟信号,使得接收端的时钟信号频率与发送端相等.前导码的比特序列为1010101010101010,共62位,紧跟以2位11作为数据帧的起始定界符.用FP GA 监听M II 接口中与发送相关的信号,捕捉位于紧跟前9961第10期黄文君,等:基于FP GA 的精确时钟同步方法导码之后的2个连续的高电平,即可准确地确定正在发送的数据包的发送时间戳.如果发生碰撞,该数据包需要重发.重发时还是要先发送前导码,于是可以获取一个新的准确的发送时间戳.由此可见,这种使用FP GA 获取发送时间戳的方法消除了网络中随机发生的碰撞造成的影响,能大幅提高发送时间戳的获取精度.以100Mbp s 以太网为例,TXCL K 为25M Hz ,发送时间戳的精度小于40ns.当一个时槽的长度是512位,即5.12μs 时,若网络上发生碰撞,则发送时间戳的精度必然不会好于5.12μs.在接收端,数据包的接收时间戳也按此方法获取,可以消除CPU 的中断响应时间的不确定性造成的影响,同时也消除了数据包在网卡芯片的缓存中的延迟造成的影响.同样以100Mbp s 以太网为例,RX 2CL K 为25M Hz ,接收时间戳的获取精度小于40ns.在基于嵌入式软件的方案中,假设CPU 为ARM7TDM I 内核,运行于50M Hz ,在没有操作系统的情况下,其中断响应时间为20~400ns ;如果嵌入式软件采用基于操作系统的消息处理,即使排除数据包在MAC 控制器缓存中的延迟的影响,接收时间戳的响应时间精度也不会优于1μs.FP GA 中包含频率补偿时钟模块,它利用数字电路硬件代替了模拟电路,实现了晶振纠偏功能,克服了晶振漂移,使得普通的廉价晶振也能用于精确的时钟同步.频率补偿时钟的原理如图5所示,它由图5 频率补偿时钟结构图Fig.5 Architecture of f requency compensation clock一个p 位时钟计数器、一个q 位累加器和一个r 位加数寄存器构成.每个晶振周期,累加器将自身的值与存储在加数寄存器中的值相加,结果存储在累加器中,同时产生一个进位标志位表示这次的加法操作是否溢出,如果发生溢出,则在下一个晶振周期,时钟计数器增加一个增量,这个增量就是整个频率补偿时钟的分辨率;如果没有溢出,则在下一个晶振周期,时钟计数器保持原值.单位时间内时钟计数器数值增加的次数是由加数寄存器的值和晶振频率共同决定的,改变存储在加数寄存器中的加数,就改变了累加器进行加法操作时发生溢出的频率,从而改变了时钟计数器数值增加的频率,实现了对晶振频率的补偿[4].q 和r 越大,加数的改变对累加器发生溢出的频率的影响越小,对晶振频率的补偿越精细.在本文设计的系统中,取p =64,前32位表示秒,后32位表示微秒,q =r =32,对晶振频率补偿的步进值小于3×10-8.利用硬件描述语言,FP GA 完成了2个用一般CPU 无法完成的工作.一是在M II 接口处获取时间戳,二是用数字电路的方法实现对晶振频率的补偿,正是这2点对同步精度的提升起了决定性的影响.FP GA 中的控制器模块实现了时钟调节算法,根据从时钟处得出的自身与主时钟的偏差计算出相应的频率补偿值,即存储在频率补偿时钟中的加数寄存器中的值,从而达到了对时钟计数器的数值进行控制的目的.由于对网络传输延迟的滤波也在FP GA 中完成,CPU 无法对时钟计数器的运行进行干预,只负责驱动MAC 控制器完成相关的通讯功能.CPU 和FP GA 之间有接口电路,CPU 对FP GA 的访问等效于对片外内存的读写操作,CPU 可以通过这个接口完成本地时钟属性设定、时钟初值设定、时钟运行状态读取、某一事件的预定发生时间写入、已发生事件的时间戳读取等操作.2 测试方法与应用验证模拟基于工业以太网的分布式控制系统,搭建应用工业以太网的时钟同步测试系统,动态测试方式如图6所示.采用基于FP GA 的时钟同步方案与嵌入式CPU 接口模拟应用系统,另有第三方的测试电路模块与之配合.测试电路模块定期向FP GA 发出一个测试脉冲,包括主时钟的FP GA 和待测的若干从时钟的FP GA ,每个FP GA 都有一个端口被连接到一根公共的铜导线上.这个同时传播到所有FP GA 的测试脉冲被每个FP GA 同步于自身的逻辑电路,然后用边沿触发器记录下当前的时钟计数器的数值.测试电路模块将这些数值读回,用串口发回测试计算机进行记录和分析.图6 测试系统示意图Fig.6 Test embedded system(下转第1742页)炉温的因素众多,可建立的模型方法也很多,但是要实现基于模型的预测控制,数学模型必需包含3类变量,即:初始变量、状态变量和控制变量,才能够达到炉温w (Si )的闭环控制.更进一步的模型控制研究表明,成功的炉温预测控制方程必须建立机理模型、推理模型和数理模型递阶式智能化集成的基础上才能够实现,这些模型的互动将另文阐述.参考文献(R eferences):[1]刘祥官,刘芳.高炉炼铁过程优化与智能控制系统[M ].北京:冶金工业出版社,2003.[2]罗世华,刘祥官.高炉铁水含硅量的分形结构分析[J ].物理学报,2006,55(7):3343-3347.L UO Shi 2Hua ,L IU Xiang 2Guan.The f ractal structure of silicon content in molten iron in blast f urnace [J ].Ac 2ta Physica Sinica ,2006,55(7):3343-3347.[3]吴怀宇.时间序列分析与综合[M ].武汉:武汉大学出版社,2004.[4]郜传厚,周志敏,邵之江.高炉冶炼过程的混沌性解析[J ].物理学报,2005,54(04):1490-1494.GAO Chuan 2hou ,ZHOU Zhi 2min ,SHAO Zhi -Jiang.Chaotic analysis for blast f urnace iron 2making process [J ].Acta Physica Sinica ,2005,54(04):1490-1494.[5]王玉涛,严其艳,杨钢,等.高炉铁水含硅量的动态神经网络多步预报[J ].仪器仪表学报,2006,1:1448-1451.WAN G Yu 2tao ,YAN Qiy 2an ,YAN G G ang ,et al.Multi 2step prediction of molten iron silicon content in blast f urnace using dynamic neural network [J ].Chinese Journal of Scientif ic Instrument ,2006,11:1448-1451.[6]王振龙.时间序列分析[M ],北京:中国统计出版社,2000.[7]石扬,张燕平,赵姝,等.基于商空间的气象时间序列数据挖掘研究[J ].计算机工程与应用,2007,42(1):201-203.SHI Yang ,ZHAN G Yan 2ping ,ZHAO Shu ,et al.Re 2search on meteorological time series data mining based on quotient space [J ].Computer E ngineering and Appli 2cations ,2007,42(1):201-203.[8]J IA Li ,M EN EN TI M.Response of vegetation photo 2synthetic activity to net radiation and rainfall :a case study on the tibetan piateau by means of fourier analysis of MODIS FA PAR Time Series [J ].Advances in E arth Science ,2006,12:1254-1260.[9]徐东,刘志阳,徐奉臻.我国证券投资基金羊群行为的实证分析(199922004)[J ].哈尔滨工业大学学报,2006,38:2132-2134.XU Dong ,L IU Zhi 2yang ,XU Feng 2zhen.Empirical re 2search on herd behavior of security investment f und in China based on L SV and TSP (199922004)[J ].Journal of H arbin I nstitute of T echnology ,2006,38:2132-2134.[10]梅长林,周家良.实用统计方法[M ].北京:科学出版社,2002.(上接第1700页) 本文设计的时钟同步系统运行在10Mbp s 以太网上,采用无数据帧缓冲的HUB 互连各个设备,共有1个主节点和10个从节点.在连续20d 的长期测试中积累的测试数据显示,从时钟相对主时钟的偏差的平均值小于±35ns ,标准差小于100ns ,峰值小于±500ns ,这说明同步精度已经达到亚微秒级.同步时间误差测试曲线见图7.图中:e 为同步误差,n 为测试次数.图7 时间同步测试曲线图Fig.7 Test curve of time synchronization3 结 语本文采用FP GA 硬件逻辑方法实现工业以太网的高精度时间同步.通过实际应用验证,该方法具有稳定性好、精度高等特点,采用硬件模块化结构可以方便地与嵌入式实时控制系统集成应用.由于设备所限,本文只完成了在10Mbp s 以太网上的测试,同步精度已达到亚微秒级.如果网络传输速率上升到100Mbp s ,预期可达到更高的同步精度.参考文献(R eferences):[1]IEEE std 158822002,IEEE standard for a precisionclock synchronization protocol for networked measure 2ment and control systems [S].New Y ork :Institute of Electrical and Electronic Engineers ,2002.[2]EPA criterion for industrial control system ,Digital com 2munication for measurement and control [S].Beijing :National Standard Committee ,2004.[3]IEEE std 802.322002,Carrier sense multiple access withcollision detection (CSMA/CD )access method and physical layer specification [S].New Y ork :Institute of Electrical and Electronic Engineers ,2002.[4]HARRIS K R ,BAL ASUBRAMAN IAN S ,MOLDA 2VANSKY A.A f requency compensated clock for preci 2sion synchronization using IEEE 1588and its application to Ethernet [EB/OL ].2003211212[2007201220].ht 2tp ://。
电脑和fpga之间同步通信
电脑和fpga之间同步通信电脑和FPGA之间的同步通信是现代计算机技术中的重要组成部分。
随着计算机性能的不断提升,对于高速、可编程的硬件加速器的需求也越来越大,而FPGA(Field-Programmable Gate Array)正是一种常用的硬件加速器。
本文将介绍电脑和FPGA之间同步通信的基本原理和实现方法。
我们来了解一下什么是FPGA。
FPGA是一种可编程逻辑器件,它由大量的可编程逻辑单元和存储单元组成。
与传统的ASIC (Application-Specific Integrated Circuit)相比,FPGA具有可编程性强、灵活性高的特点。
FPGA可以通过编程将逻辑电路实现在硬件上,从而加速特定的计算任务。
在电脑和FPGA之间进行同步通信时,需要解决两个关键问题:时序同步和数据传输。
时序同步是指电脑和FPGA之间的时钟信号同步。
在计算机系统中,时钟信号被用来同步电路的操作。
在FPGA中,也有时钟信号用于同步逻辑电路的工作。
为了实现电脑和FPGA之间的同步通信,需要保证两者的时钟信号同步。
一种常用的方法是使用专门的时钟模块,将电脑和FPGA的时钟信号进行同步。
这样可以确保数据在电脑和FPGA之间的传输是同步的。
数据传输是电脑和FPGA之间同步通信的另一个重要问题。
为了实现数据的传输,需要设计合适的接口和协议。
一种常用的接口是使用通用并行接口(GPI)或高速串行接口(GSI)。
这些接口可以在电脑和FPGA之间传输数据,并确保数据的同步性和可靠性。
在设计接口和协议时,需要考虑数据的传输速率、数据的格式、错误检测和纠正等因素。
为了提高数据传输的效率,可以使用流水线技术和并行传输技术。
流水线技术将数据分为多个阶段进行传输,从而提高数据的传输速率。
并行传输技术则是同时传输多个数据,进一步提高传输效率。
为了确保数据的正确传输,还需要进行错误检测和纠正。
常用的方法包括奇偶校验、循环冗余检测(CRC)等。
FPGA时钟设计
FPGA时钟设计在FPGA设计中,时钟设计需要考虑以下几个方面:1.时钟源:时钟源可以是外部信号源,也可以是FPGA内部的时钟发生器。
外部时钟源一般来自外部设备或者振荡器。
FPGA内部的时钟发生器可以根据需要生成所需的时钟频率。
2.时钟分频:时钟分频是指将输入的时钟频率分频为所需的输出频率。
在一些应用中,需要将时钟频率降低到一个更低的频率,以降低功耗或满足特定的应用需求。
3.时钟分配:在FPGA设计中,可能会有多个模块需要使用时钟信号。
时钟分配是指将时钟信号分配给各个模块,以确保它们能够按照同步的方式工作。
4.时钟域划分:在FPGA设计中,可能会存在多个时钟域,即不同的时钟频率和时钟相位。
时钟域划分是指将设计中的电路划分为不同的时钟域,并确保时钟跨域的数据传输正确。
5.时钟驱动和延迟:时钟驱动和延迟是指时钟信号的传输延时。
由于FPGA中的逻辑电路通常具有不同的传输延时,所以时钟信号需要正确地驱动各个子模块,以确保数据的正常传输。
在进行FPGA时钟设计时,需要考虑以下几个关键问题:1.时钟频率选择:时钟频率选择需要综合考虑系统的需求和FPGA的性能。
较高的时钟频率可以提高系统的工作速度,但也会增加功耗和电磁干扰。
较低的时钟频率可以降低功耗和电磁干扰,但会降低系统的工作速度。
2.时钟相位对齐:时钟相位对齐是指在不同时钟域之间进行数据传输时,需要确保时钟相位的对齐。
时钟相位对齐可以通过插入寄存器或者使用FPGA的时钟管理资源来实现。
3.时钟缓冲和驱动:时钟缓冲和驱动是指对时钟信号进行放大和驱动,以确保时钟信号能够正常传输和驱动其他模块。
时钟缓冲和驱动可以使用FPGA内部的时钟管理资源,如PLL和BUFIO等。
4.时钟分频策略:时钟分频策略是指根据需要将时钟频率分频为所需的频率。
时钟分频可以使用FPGA内部的分频器来实现,也可以使用逻辑电路来实现。
在FPGA时钟设计过程中,需要进行时钟约束设置,即设置时钟频率、时钟相位和时钟域等约束条件。
基于FPGA的GPS的时钟同步毕业设计
摘要本文在综合分析基于GPS的标准定时系统应具备的主要功能和FPGA特点的基础上,提出了一种基于GPS的标准定时系统设计方案,实现了高精度时间信号和时、分、秒同步脉冲的输出,时间信息的显示等功能。
FPGA作为系统核心提高了数据的处理速度和同步精度。
本设计采用FPGA作为GPS同步时钟装置的控制和数据处理核心,取代目前应用较多的以单片机为核心的控制和数据处理单元,在减小系统体积、降低开发和维护成本以及提高系统稳定性的同时,通过对设计的优化,加快了数据的处理速度,提高了同步精度,并实现了秒脉冲在GPS失步时的平滑切换,有着重要的应用价值。
同时,基于FPGA的设计也使系统实现了小型化的目标,提高了系统稳定性,并使维护和升级更加方便。
通过时序仿真和分析验证,基于FPGA的设计方案完全能够满足GPS同步时钟对于较高的同步精度的要求。
FPGA芯片总的逻辑单元占用情况为系统升级预留了较多的资源。
以此设计作为平台,根据不同的应用要求,可以方便地扩展出不同的功能单元,比如网络授时接口、IRIG-B编码输出等更多形式的输出模块。
关键词:可编程逻辑门阵列、全球定位系统、时钟AbstractThe comprehensive analysis of the standard GPS-based timing system should have the main functions and features based on the FPGA, this paper, a standard GPS-based timing system design to achieve high-precision time signal and the hours, minutes, seconds synchronization pulse output, the time information display. FPGA as the core of the system improves the data processing speed and synchronization accuracy.This design uses FPGA devices as GPS synchronized clock control and data processing core, more to replace the current application as the core MCU control and data processing unit, and reduce system size, reduce development and maintenance costs and increase system stability Meanwhile, the optimization design to speed up data processing speed, improve the synchronization accuracy, and achieve a second pulse in the GPS when the smooth-step switch, has an important value. At the same time, FPGA-based design also makes the system to achieve the goal of miniaturization, improved system stability, and to maintain and upgrade more convenient.Verified by timing simulation and analysis, the design of FPGA-based fully able to meet the GPS synchronized clock synchronization for high accuracy requirements. FPGA chip, the logical unit of total occupancy for the system set aside more resources to upgrade. This design as a platform, according to different application requirements, you can easily expand the functions of different units, such as network time service interfaces, IRIG-B code output, more forms of output module.Keywords: FPGA, GPS,clock目录摘要.................................................................................................................. I Abstract ............................................................................................................... II 1绪论.. (1)1.1课题研究背景 (1)1.2课题研究的目的和意义 (3)1.3 论文章节安排 (3)2 系统技术平台简介 (5)2.1 FPGA概述 (5)2.2 GPS概况 (9)2.3 RS-232标准串行接口总线 (12)3 统硬件设计 (15)3.1 系统硬件设备 (15)3.2 系统设计总体框图 (15)3.3分块设计说明 (16)4 标准定时系统的软件设计 (22)4.1软件设计原理 (22)4.2 程序分析 (25)总结 (29)致谢 (30)参考文献 (31)附录 (32)1绪论1.1课题研究背景基于GPS的标准定时系统是在综合分析GPS同步时钟应具备的主要功能和FPGA 特点的基础上提出的,能够实现UTC时间与北京时间的转换、显示等功能。
基于FPGA高精度TDC设计与应用研究
基于FPGA高精度TDC设计与应用研究时间测量技术在核物理实验、大科学装置以及数字通信、航空航天、导航定位等领域都得到广泛的研究与应用。
经过多年的发展,时间测量技术从最初由分立元件搭建的模拟电路时间测量方式,到使用专用时间间隔测量芯片,以及近些年蓬勃发展的基于FPGA设计的时间数字转换电路,时间测量的精度越来越高,测量方式更加灵活,能够满足各类物理实验以及工程应用的要求。
为实现对次级带电宇宙射线的测量研究,中国科学院近代物理研究所设计了一款小型宇宙线探测仪。
该装置需要精确测量簇射粒子的到达时间,从而获得较好的宇宙线入射角分辨。
同时对粒子脉冲的前沿/后沿时间进行准确鉴别,以获取粒子在灵敏探测体中的能损以及粒子衰变时间。
宇宙线测量实验要求时间测量精度达到500ps以下,并且在一次脉冲事件中同时完成对粒子事件的精确符合以及脉冲过阈时间测量。
使用传统分立元件能够实现较高的时间分辨,但是不能满足事件符合测量的要求,而使用专用时间测量ASIC芯片会导致成本过高,不利于将该探测装置进行大范围推广。
在工程应用方面,兰州重离子加速器国家实验室研究人员在环形加速器间的踢轨控制系统设计中提出Barrier Bucket束流快引出与注入方式。
这种束流注入与引出方式需要严格结合束流引出环BRing的引出相位和束流接收环SRing的注入相位来对束流进行传输,要求双环高频在任意两相位点实现精确符合,且相位符合抖动小于1o。
对踢轨系统Kicker磁铁电源进行时序控制的时间延时精度要求好于1ns。
基于以上物理实验与工程应用的需求,本文研究了基于FPGA的高精度时间数字转换电路(TDC)原理与实现方式,在低成本的Cyclone IV系列FPGA上完成了多通道TDC设计,时间测量精度达到45ps,在FPGA 内部构建了粒子脉冲事件的实时符合与脉冲时间测量系统。
同时使用FPGA-TDC 技术完成对双环高频相位点时间精确测量与亚纳秒精度符合,并完成了步进时间为90ps的高精度延时时序控制。
一种高精度时钟同步电路设计
一种高精度时钟同步电路设计姜丽峰*摘要随着现代导航、电子、通信、电力等科学技术的进步,越来越多的工程和科学领域需要时间同步。
对时钟系统的精度要求也越来也高,而现有高精度时钟同步设备价格较高,限制了时钟同步设备的推广和发展。
本文设计实现了一种高精度授时输出时钟同步设备,以较低成本实现了高精度时间同步输出,精度可达纳秒级,有极好应用前景。
关键词:时间同步高精度低成本Design of a High Precision Clock Synchronization CircuitJiang LifengAbstractWith the progress of science and technology such as modern navigation,electronics,com-munication andelectric power,time synchronization is needed in more and moreengineering and scientific fields.The precision requirement of clock system is also higherand higher,but the high price of the existing equipment limits the promotion of clock syn-chronization equipment.This paper gives the design and implementation of a high-precision clock synchronization device,which achieves high-precision timesynchronization output at a low cost.With the precision of nanosecond level,this devicehas a good application prospect.Key words:time synchronization high-precision low cost引言时钟同步设备可以为分布式系统或设备提供稳定可靠的时间同步信号和频率同步信号,使各系统或设备实现统一的时间频率标准。
设计实现了基于FPGA的高精度时间测量电路TDC
1150
1200
1250
Time Distribution(ps)
1300
1350
Cabel Delay Test: Mean=1206.6ps.DatNum:8000
350 tmp
300
gaussain fit
250
RMS =7.4ps
TDC
200
FW HM=23.9ps
150
100
50
0 1160 1180 1200 1220 1240 1260 Time Distribution(ps)
后沿测量:每个CARRY4构成一个延迟链单元。
图1、单通道TDC实现脉宽测量的功能框图
a
b
c
中国科学技术大学 Un图iv2e、rs(itya)of前Sc沿i.时& 间Te测ch量. o结f 果Ch;i(nab)后沿时间测量结果;(c)TOT测量结果
✓ 前后沿数据交 替存入FIFO ;
✓ 离线数据处理 ,快 University of Sci.& Tech. of China
快电子学实验室 Fast Electronics Lab
利用FPGA的进位链实现时间内插
基于FPGA的时间-数字变换(Time-Digital Conversion,简称:TDC)电路设 计是核探测与核电子学国家实验室目前处于国际一流水平的一个研究领域。
Lagging Signal
A
MUX2
B
S
Clock
DQ
Read En
AND3
CP Q
D
A MUX2
BS
CP Q
D
AND3
A
MUX2
B
fpga的系统时钟和伴随时钟的关系
fpga的系统时钟和伴随时钟的关系FPGA是一种可编程逻辑器件,可以用于实现各种数字电路。
FPGA中的系统时钟和伴随时钟之间存在一定的关系,本文将从以下几个方面来介绍这种关系。
一、系统时钟和伴随时钟的定义和功能系统时钟是FPGA系统中的主时钟,它是FPGA中所有逻辑电路的控制时钟,用于同步各个时序电路,是实现FPGA功能的基础。
系统时钟的频率在设计时是确定的,它决定了FPGA的整体性能。
系统时钟的频率越高,FPGA的工作速度越快。
伴随时钟是指在FPGA系统中,除了系统时钟以外的其他时钟信号。
它们与系统时钟相对独立,可以有不同的频率,用于实现特定的功能。
例如,控制外设接口、驱动显示屏幕或音频设备等。
伴随时钟的频率可以是系统时钟的整数倍,也可以是系统时钟的分频。
二、系统时钟和伴随时钟的关系1.时钟域划分在FPGA设计中,通常会将各个时钟信号划分为不同的时钟域。
时钟域是指在一个时钟周期内保持同步的逻辑电路集合。
每个时钟域都有一个相应的时钟信号,该时钟信号的频率决定了该时钟域的工作速度。
系统时钟是全局时钟,它驱动着整个FPGA系统的运行。
伴随时钟属于局部时钟,它仅仅影响特定的逻辑电路。
2.时钟互联在FPGA设计中,涉及到多个时钟域时,需要进行时钟互联来保持时钟同步。
时钟互联可以通过专用的时钟信号处理电路来实现。
常用的时钟信号处理电路有时钟互联器、时钟握手电路等。
时钟互联的主要目的是解决不同时钟域之间的时序问题。
当两个时钟域的时钟频率不同或存在相位差时,需要进行时钟互联,以确保逻辑电路的正确工作。
三、系统时钟和伴随时钟的设计考虑因素在设计FPGA时,系统时钟和伴随时钟的选择和设计是非常重要的。
以下是一些常见的考虑因素:1.频率和时延系统时钟的频率和伴随时钟的频率需要根据具体的应用需求来确定。
频率过高可能会导致功耗过大,频率过低可能会影响系统的性能。
同时,时钟的延迟也需要考虑,因为较长的时钟延迟会影响电路的响应速度。
fpga同步逻辑和异步逻辑
fpga同步逻辑和异步逻辑FPGA(Field Programmable Gate Array)是一种可编程逻辑器件,可以根据需要重新编程,以实现特定的功能。
在设计FPGA电路时,逻辑设计师通常会遇到两种逻辑类型:同步逻辑和异步逻辑。
本文将详细介绍FPGA中的同步逻辑和异步逻辑的概念、特点和设计方法。
一、同步逻辑同步逻辑是指在FPGA电路中使用时钟信号作为同步元件的驱动信号,用于控制电路中的数据流动。
同步逻辑设计可以更容易地实现电路的稳定性和可靠性。
1.1 同步逻辑的概念同步逻辑是指在电路中使用全局时钟信号进行同步操作的逻辑设计。
时钟信号在整个电路中起着重要的作用,它提供了一个统一的时间参考来控制各个逻辑元件之间的数据传输。
1.2 同步逻辑的特点同步逻辑具有以下特点:(1)稳定性:同步逻辑的设计可以确保数据在时钟边沿到来时稳定的传输,从而避免因信号变化导致的不一致性。
(2)可靠性:同步逻辑的设计可以减小由于不同部件之间的时钟延迟而引起的时序问题,提高电路的可靠性和稳定性。
(3)容易验证:同步逻辑的设计便于验证,因为时钟信号提供了一个时间基准,可以轻松地进行仿真和验证。
1.3 同步逻辑的设计方法同步逻辑的设计方法包括以下几个步骤:(1)确定时钟信号:首先需要确定电路中的时钟信号,可以选择一个已有的时钟信号,或者设计一个新的时钟信号。
(2)设计时序逻辑:使用时钟信号作为驱动信号,设计时序逻辑,如触发器、寄存器等,用于存储和处理数据。
(3)设计组合逻辑:根据需求设计组合逻辑电路,包括门电路、多路选择器等,用于实现特定的功能。
(4)时序约束:在设计过程中需要明确时序约束,包括最大时钟频率、时钟间隔等,以确保电路能够正常工作。
二、异步逻辑异步逻辑是指在FPGA电路中使用时钟信号之外的非时钟信号进行控制的逻辑设计。
异步逻辑设计更灵活,但也更容易导致时序问题。
2.1 异步逻辑的概念异步逻辑是指在电路中使用除时钟信号外的其他驱动信号进行控制的逻辑设计。
基于FPGA的高精度IEEE1588时间戳的设计与实现
基于FPGA的高精度IEEE1588时间戳的设计与实现刘大林;王琦;黄华明【摘要】简单介绍了IEEE1588协议的时间同步机制,提出了一种在物理层内部标记时间戳的方案,并采用FPGA设计实现了支持时间戳标记电路的10G Base-R PHY,仿真和测试结果表明这种PHY具有最多一个时钟周期的延迟抖动,极大地降低了网络延时抖动对时间同步精度的影响,满足高精度时间同步的要求.【期刊名称】《光通信技术》【年(卷),期】2015(039)006【总页数】3页(P27-29)【关键词】IEEE1588;时间戳;PHY;10G Base-R;现场可编程门阵列【作者】刘大林;王琦;黄华明【作者单位】上海贝尔股份有限公司,上海201206;上海贝尔股份有限公司,上海201206;上海贝尔股份有限公司,上海201206【正文语种】中文【中图分类】TN929.110 引言IEEE1588是一种具有亚微秒级的时间同步性能的分布式网络时间同步协议,已被广泛应用到PTN网络中。
时间戳标记精度直接影响时钟同步精度[1],传统的方法有两种:一种是使用纯软件方式获取时间戳[2],其受操作系统和协议栈的延迟不确定性以及网络传输延迟的不确定性影响,导致时钟同步精度较低;另一种采用硬件方式在交换芯片或MAC和PHY之间的接口上获取时间戳[3],相对于前一种方法,该方法同步性能有了较大的提升,但是,由于PHY层芯片内部通常需要FIFO 做系统时钟域到线路时钟域的转换,因此,仍然存在一定的传输延迟的不确定性。
本文通过对IEEEl588时间同步协议和10G以太网标准的分析研究,提出了采用FPGA设计10G Base-R以太网PHY,并在PHY内部标记时间戳的方法。
1 IEEE 1588协议机制IEEE1588同步机制是一种主从同步机制。
在同步过程中,主设备按一定的周期发布PTP报文,从设备接收来自主设备的时间戳信息,据此计算出主从线路间的时延和时间偏差,并利用这种时间偏差来调整从设备的本地时间,使其与主设备的时间保持一致,以达到时间同步的目的。
fpga 设计中对时钟的使用
fpga 设计中对时钟的使用FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,可以随意定制电路,称为“现场可编程门阵列”。
FPGA极大地促进了数字设计的发展,主要原因是它们具有高度灵活性和可编程性,在快速原型开发和快速市场推出方面具有重要作用。
时钟在FPGA设计中扮演重要的角色。
本文将介绍FPGA设计中时钟的使用。
一、时钟的概念和应用时钟通常被定义为一个周期性的信号,在数字电路中用于同步各个电路元素的运行。
FPGA设计中,时钟是同步时序逻辑电路的核心,因为它是控制数字逻辑电路元素的节拍。
当时钟沿上升或下降到达某一特定的时刻时,整个系统将同步更新到该时刻。
在FPGA设计中时钟决定了操作的速度,这个速度主要取决于FPGA芯片本身的异步延迟,不受时钟频率控制。
可以通过增加时钟频率来提高FPGA系统的速度,但也会造成增加功耗和热量。
时钟频率是由同步电路的最慢电路决定的。
如果时钟频率超过了最慢的同步电路,就会出现数据丢失或不稳定的情况,因此时钟频率需要在同步电路的最慢电路范围内进行选择。
时钟的应用包括以下几个方面:1.同步器:时钟作为同步器,在FPGA的硬件代码中用于实现逻辑延迟。
2.复位电路:时钟也可以用于生成复位信号,当时钟初次上升到达时,复位电路可以将系统重置为已知的状态。
3.频率分频:时钟信号可以通过分频器降低频率。
可以将一个高速时钟信号分裂成几个低速时钟信号,用于驱动各自的模块。
4. 数据采样模块:数据采样模块要求适当的时钟方式和时钟控制。
二、时钟对FPGA设计中的影响FPGA设计中时钟的正确使用对整个设计非常重要。
时钟频率的选择直接影响到FPGA芯片工作的稳定性和可靠性。
时钟信号的漏掉、翻转或者缺失将会导致逻辑分支的错误,从而影响到整个系统的正常运行。
为了保证时钟的稳定和可靠,一般采用以下方法:1.时钟源选择:FPGA芯片的时钟源需要选择稳定、精确的时钟源。
基于FPGADDS的位同步时钟恢复设计与实现
基于FPGADDS的位同步时钟恢复设计与实现来源:网路素材摘要:针对目前常用位同步时钟恢复电路即超前-滞后型锁相环和1位同步器两种方法的不足之处,提出了一种使用DDS原理实现的快速时钟恢复方案。
该方案采用DDS技术作为高精度任意分频单元,并在此基础上结合两种方法的优点,完成了位同步时钟恢复的改进设计。
该方法适用频率范围宽,同步速度快,同步精度高,能够有效地降低频差的影响。
给出了方案设计原理及实现方法,使用FPGA完成设计并对其性能做了分析及仿真、测试。
在数字通信中,位同步是要在接收端确定每一个码元的起止时刻,从而在数据流中区分出独立的码元,它起着为接收信号提供基准的作用[1]。
主要体现在产生与接收的数字信号时钟同频同相的恢复时钟,从而准确地解出数据流中携带的数字信息。
常用的位同步时钟恢复电路主要有数字锁相环和1比特位同步器,作为当前的主流技术而广泛使用,但它们的优缺点也是显而易见的。
本文在分析了两种位同步时钟恢复方法的原理及其优缺点的基础上,提出了利用DDS高精度分频原理实现快速时钟恢复的设计方案,能够快速稳定地从数据流中恢复出时钟,并且适用于各种频率要求,通用性强。
1 位同步性能分析数字锁相环是一种闭环结构的位同步电路,1比特位同步器则基于开环结构。
下面对这两种电路原理进行介绍,并分析其优缺点。
1.1 数字锁相环法通常数字锁相环主要由鉴相器、数字环路滤波器、数控振荡器三部分组成,其原理图如图1所示。
首先将输入信号与反馈时钟进行鉴相,得出时钟相位的超前滞后信息;然后在环路滤波器中对超前滞后信息进行计数,当达到模值K时产生加扣指令,数控振荡器根据加扣指令插入或扣除一个时钟脉冲,从而实现时钟相位的调整[2]。
数字锁相环是一个闭环反馈结构,这种结构能够使同步时钟在码元相位出现抖动或者码元消失时不会出现较大变化,仍然可以稳定地输出同步脉冲[3]。
也正是因为这种反馈结构,使得数字锁相环法的同步建立时间变得很长,往往需要十几甚至几十个信号周期。
fpga中的时间同步
fpga中的时间同步
FPGA中的时间同步是指在FPGA系统中实现各个模块之间的时
间一致性。
时间同步在很多应用中都是非常重要的,特别是在通信
系统、数据采集系统和控制系统中。
下面我将从几个方面来讨论FPGA中的时间同步。
首先,FPGA中的时间同步可以通过外部时钟源来实现。
FPGA通
常会接收外部的时钟信号作为参考时钟,各个模块可以根据这个参
考时钟来进行同步操作。
这种方式可以确保各个模块的操作都基于
同一个时钟信号,从而实现时间同步。
其次,FPGA中的时间同步也可以通过内部时钟管理模块来实现。
FPGA通常会包含一些时钟管理模块,可以用来生成各种时钟信号,
包括同步时钟和异步时钟。
通过合理配置这些时钟管理模块,可以
实现各个模块之间的时间同步。
另外,FPGA中的时间同步还可以通过专门的同步电路来实现。
例如,可以使用FIFO(First In First Out)缓冲器来进行数据的
同步传输,从而确保各个模块之间的数据传输是同步的。
此外,还
可以使用专门的同步信号线来进行同步控制,确保各个模块的操作
是同步的。
除了上述方法,还可以通过协议来实现FPGA中的时间同步。
例如,在通信系统中,可以使用协议来约定各个节点的时间同步方式,从而实现整个系统的时间同步。
总的来说,FPGA中的时间同步是一个复杂而重要的问题,需要
在设计和实现阶段充分考虑各个模块之间的时间一致性。
通过合理
的时钟管理、同步电路设计和协议约定,可以有效地实现FPGA系统
中的时间同步。
基于FPGA的高性能数字信号处理系统设计
基于FPGA的高性能数字信号处理系统设计随着数字信号处理技术的发展,数字信号处理系统在通信、雷达、生物医学、图像处理等领域中得到了广泛应用。
而FPGA技术则因其高性能、可编程性和可重构性成为数字信号处理系统中的重要组成部分。
本文将从以下几个方面阐述基于FPGA的高性能数字信号处理系统设计,包括FPGA架构、数字信号处理算法、系统级设计方法和应用案例。
FPGA架构FPGA(Field Programmable Gate Array)是一种基于现场可编程的硬件逻辑芯片。
FPGA内部由可编程逻辑单元(PL)、内存单元(BRAM)和数字信号处理单元(DSP)等模块组成,可以实现数字信号处理和数据通路等复杂的逻辑功能。
FPGA架构的选择对数字信号处理系统的性能和功耗有很大的影响。
通常选择的FPGA架构有两种:面向计算型的FPGA和面向通信型的FPGA。
其中,面向计算型的FPGA适用于高性能计算应用,提供高速的时钟频率和大量的计算资源;而面向通信型的FPGA适用于高速数据通信应用,能够提供高速的数据传输和处理效率。
数字信号处理算法数字信号处理算法是数字信号处理系统的核心部分,其主要任务是实现输入信号的特定操作,例如通信领域的调制、解调、信道编码和解码,图像处理领域的滤波、变换和分割等。
不同的数字信号处理算法对FPGA内部资源的需求也不同。
为了实现高性能的数字信号处理,使用一些常见的优化方法也是必不可少的。
如采用低复杂度算法、算法设计的并行化等方法,可以降低算法的时间和空间复杂度,从而提升系统的性能。
系统级设计方法在数字信号处理系统设计中,系统级设计方法是至关重要的。
系统级设计旨在将不同模块的功能组合起来,并通过优化系统架构、分配资源,以实现数字信号处理任务。
常用的系统级设计方法包括时序分析、时序优化、布局和布线等。
时序分析可帮助设计人员识别电路中的时序约束,从而避免电路时序问题。
时序优化则是通过合理的资源分配和时钟树设计来优化时序关系。
基于FPGA的双向同步技术及守时方法
㊀收稿日期:2020⁃06⁃29;修回日期:2020⁃09⁃21㊀作者简介:倪磊,男,1991年生,工程师,硕士,研究方向:雷达与通信系统总体技术;黄镠,男,1986年生,高级工程师,硕士,研究方向:雷达与通信系统总体技术;顾苏,男,1983年生,高级工程师,硕士,研究方向:雷达与通信系统总体技术;陈文攀,男,1989年生,工程师,硕士,研究方向:雷达与通信系统总体技术㊂基于FPGA的双向同步技术及守时方法倪㊀磊,黄㊀镠,顾㊀苏,陈文攀(中国船舶集团有限公司第八研究院,南京211153)摘㊀要:在编队协同作战时确保各节点保持高精度的时间同步是十分重要的㊂在已有的双向时间同步技术的基础上进一步提出守时的概念,通过守时可以在较少的时隙资源的前提下实现更高的时间精度,具有很好的实现价值㊂关键词:编队协同作战;双向时间同步;守时中图分类号:TN95㊀㊀文献标志码:A㊀㊀文章编号:1009⁃0401(2021)01⁃0012⁃03BidirectionalsynchronizationtechnologyandpunctualitymethodbasedonFPGANILei,HUANGLiu,GUSu,CHENWen⁃pan(No.8ResearchAcademyofCSSC,Nanjing211153)Abstract:Itiscrucialtoensurethateachnodekeepshigh⁃precisiontimesynchronizationduringco⁃operativeengagementinformation.Basedontheexistingbidirectionaltimesynchronizationtechnolo⁃gy,theconceptofpunctualityisfurtherproposed.Highertimeaccuracycanbeachievedunderthepremiseoffewertimeslotresourcesthroughpunctuality,whichhasgoodimplementationvalue.Keywords:cooperativeengagementinformation;bidirectionaltimesynchronization;punctuality0㊀引㊀言随着现代战争舰载作战平台的机动性能大大增强和远程制导武器的广泛应用,雷达传感器作为战场的千里眼迫切要求其能够及早发现并跟踪目标㊂现有武器装备受到单平台雷达传感器的类型㊁精度及其视距的限制,很难满足对抗现代精确制导武器的需要㊂采用舰⁃岸㊁舰⁃舰双/多基地的多平台联合作战,实现海上编队多平台协同探测,将整个作战兵力组成一个网络,共享作战资源和情报资源,形成统一集成的战场态势图,确保战场优势,是现代战争的必然趋势㊂而如何确保编队中各节点实现高精度的时间同步在现代网络作战中就显得尤为重要㊂现有的技术往往是基于卫星共视方法进行授时与同步㊂这样对于卫星设备的依赖性很大,实际作战时就显得很不可靠㊂文献[1]中提出了无线RTT时钟同步的相关算法㊂该算法往往需要占用较多的时隙资源来进行对时而导致通信效率降低㊂同时,编队各节点设备的晶振不可避免地存在一定的频差,这将导致一定的同步误差㊂这个误差跟实际的频差以及对时的周期有关,存在一定的局限性㊂本文在此基础上提出守时的方法,使得能够在较少的通信时隙资源占用的情况下获得更高的时间同步精度㊂1㊀双向同步技术时间双向比对系统[2]主要由1个中心站和1个外站组成,两边各自产生本地的时间基准,然后外站依靠时间同步技术保持与中心站点的高精度时间同步关系㊂双向同步技术主要就是通过微波通信链路交换时间同步信号,然后通过必要的运算得到两边时间差的过程㊂[3]21 第41卷㊀第1期2021年3月雷达与对抗RADAR&ECMVol.41㊀No.1Mar.2021具体原理如图1所示㊂图中,节点A为需要对时的节点,节点B为参考节点㊂首先由节点A发起对时业务,然后在t1时将对时包发出,然后转为接收模式,节点B默认接收,在t2时收到A发出的对时包,然后在t3时发出,发出的包内打入t2㊁t3两个时间点㊂节点A在t4时收到B发出的反馈包,此时节点A就可以获取到t1㊁t2㊁t3及t4这4个时间点㊂[4]图1㊀双向时间同步原理图假设A到B传输的时延为Δ,A与B的时间偏差为ε,则有t2-t1=Δ+εt4-t3=Δ-ε经过简单的转化可以得到Δ=(t4-t1)-(t3-t2)2ε=(t3-t4)+(t2-t1)2这样,只需通过ε调整A本地的时间即可实现A与B的时间同步㊂如果是理想情况下,对完一次时之后再重复上述过程,得到的时间偏差应该为0㊂但是,实际测试会发现还有一定的时间偏差㊂这个偏差就是由两边的时钟的频偏引起的,同时还与选取的对时周期有关㊂如果仅通过这种方式对时,则需要进行频繁的对时操作才能保证相应的时间同步精度,就会占用较多的时隙资源,而且一旦停止对时时间精度会很快恶化㊂2㊀守时方法针对上面提到的问题,本文在双向时间同步技术的基础上提出了守时方法㊂利用这种方法,不仅对两边的时间进行对准,还对两边的时钟偏差进行对准㊂一旦两边的时差㊁钟差都消除之后,就可以保持长时间的时间同步㊂具体的实现流程如图2所示㊂图2㊀添加了守时方法的流程图首先,当节点A发起对时业务时,记下发包时刻t1㊂节点B收到对时申请包后,记下收包时刻t2,然后做出回复,记下回复时刻t3㊂同时,将t2㊁t3填入回复包给节点A㊂节点A在t4时刻收到回复包后利用t1㊁t2㊁t3及t4算出两边的时差,然后利用时差调整本地时间,即完成第一次时间同步,即上述的双向时间同步的过程㊂然后,经过对时周期T后,节点A再次发起对时业务㊂按照上述流程进行包交换后,得到这次的时差ε1㊂这时,除了进行双向时间同步的操作外还需要进行守时操作,即利用ε1与T的比值来调整本地时钟的控制字M,用到的具体公式如下:f=f0∗M2N,㊀M=M∗1+ε1Tæèçöø÷通过控制字M的调整,就可以完成节点A与节点B的时钟对准㊂最理想的效果就是A与B的时钟完全对准,但实际由于对时周期T的选取以及有效位数的限制,并不能达到理想的效果㊂所以,进行完一次这样操作后,隔一段时间后还需要再次进行上述操作,不过这个时间间隔比只采取传统的双向对时技术的系统要长得多㊂这样的话,对时操作所占用的时隙资源会减少很多,这对于作战任务的编排大有裨益㊂3㊀测试结果分析按照上述流程进行FPGA设计后,搭建如下测试㊀㊀㊀㊀㊀31 倪㊀磊㊀等㊀㊀基于FPGA的双向同步技术及守时方法平台,如图3所示㊂两个节点分别由PowerPC板㊁FPGA板以及射频前端组成,另外采用第3方测试平台与之配合,观测实际两节点的时间同步情况㊂测试平台的测试结果如图4所示㊂图中,横坐标为时间,1格表示1s;纵坐标为两个平台的时间差值,1格表示12.5ns,这里选取对时周期T为1s㊂可以看出,完成一次双向时间同步与守时操作之后,两边时间偏差随着时间成线性变化㊂当时差超过一定值前,再进行一次双向时间同步与守时,由可以将时差基本调整为0,完成一次之后时间偏差会随着时间再逐步变大㊂实际的实现效果如图4所示㊂图3㊀测试平台搭建图4㊀单次双向时间同步与守时的结果㊀㊀实际对于对时间隔的选取主要取决于对时周期T的选取㊂由于篇幅所限,这里将测试的结果汇总如表1所示㊂这里选取完成一次双向时间同步与对时之后450s时为参考㊂可以发现,时间周期T选取的越大,对于控制字M调整得越精确,最后的时间精度保持得时间越长㊂表1㊀测试结果汇总对时周期T450s时的时差(计数差值)10ms40000100ms40001s4005s8010s40㊀㊀如果将精度要求设置为1μs㊁时间周期T为5s时,在经过450s再进行一次双向时间同步与对时操作就可以满足精度要求㊂但是,对于100ms而言,同样的精度要求就需要在9s后进行一次双向时间同步与对时才能满足精度要求㊂选取合适的对时周期T可以实现长时间的时间同步,减少时隙资源占用,具有很好的实践价值㊂4㊀结束语本文在双向时间校时的基础上进一步提出了守时的方法㊂这样可以有效地减少时隙资源占用,并通过实际实现验证了可行性,对于相似的系统设计具有一定的借鉴意义㊂参考文献:[1]㊀赵大胜,张永红,黄馨.基于FPGA计数的无线RTT时钟同步算法[C]//全国时间频率会议论文集,2009.[2]㊀邹峰,张殿友.舰艇编队间相对测距和双向比对时间同步算法[J].舰船电子对抗,2012(6):14⁃17.[3]㊀王喜文,朱旭东.精确的时间同步技术[J].现代雷达,2008(8):91⁃93.[4]㊀舒炳江.高精度双向时间比对同步技术原理与应用[J].电讯技术,2009(1):63⁃66.41 雷达与对抗㊀㊀㊀㊀㊀㊀㊀2021年㊀㊀第1期。
高速信号传输系统设计中的时钟同步技术
高速信号传输系统设计中的时钟同步技术在高速信号传输系统设计中,时钟同步技术是至关重要的一项技术。
时钟同步技术能够确保数据在不同部件之间同步传输,从而避免数据丢失和传输错误。
在设计高速信号传输系统时,时钟同步技术需要考虑以下几个关键因素:首先,时钟源的选择。
在高速信号传输系统中,时钟源的选择尤为重要。
时钟源的稳定性和精确度直接影响到整个系统的工作效果。
一般来说,常用的时钟源包括晶振、振荡器以及时钟发生器等。
设计者需要根据系统的具体要求来选择合适的时钟源,以确保系统的正常运行。
其次,时钟分配和传输。
在高速信号传输系统设计中,时钟同步技术要求时钟信号能够准确快速地传输到各个部件,以确保数据传输的正确性和稳定性。
为了实现时钟信号的准确传输,设计者需要采用合适的时钟分配和传输方案,如采用差分传输线、时钟信号缓冲器等技术手段,来降低时钟信号的传输延迟和抖动,提高时钟信号的稳定性和可靠性。
此外,时钟同步算法的设计。
在高速信号传输系统中,时钟同步算法的设计直接影响到系统的性能和稳定性。
常用的时钟同步算法包括PLL锁相环技术、FIFO缓冲器技术、时钟数据恢复技术等。
设计者需要根据系统的实际需求和技术约束,选择合适的时钟同步算法,并进行优化和调整,以确保系统的正常运行和性能优化。
综上所述,时钟同步技术在高速信号传输系统设计中扮演着至关重要的角色。
设计者需要充分考虑时钟源的选择、时钟分配和传输、以及时钟同步算法的设计,从而确保系统的稳定性、可靠性和性能优化。
只有在正确应用时钟同步技术的情况下,高速信号传输系统才能够实现数据准确传输,并满足实际应用的需求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的处理器间高精度时钟同步通信机制摘要:为了保证嵌入式设备运行的稳定性和可靠性,都会应用双余度的CPU来共同管理硬件资源,协调任务调度和处理CPU的高速外设接口数据,因此,该文介绍一种在具有高效数字时钟管理器的FPGA上产生高精度、高稳定度时钟同步信号,用来保证CPU间的精确同步通信,达到高效的公共资源管理、合理的任务调度以及相互比对的数据计算。
关键词:FPGA;同步通信;处理器;时钟信号中图分类号:TN710?34 文献标识码: A 文章编号:1004?373X(2016)10?0092?04FPGA?based communication mechanism withhigh?precision clock synchronization between processors JIANG Xin 1,TANG Chao2,BAI Chen1(1. Xi’an Aeronautic Computing Technique Research Institue,AVIC,Xi’an 710068,China;2. Military Representative Office at Xi’an Aeronautic Computing Technique Research Institue,Xi’an 710068,China)Abstract:In order to ensure the stability of embedded devices running and high reliability,are applied dual redundant CPU to co?management of hardware resources,task scheduling and coordination process CPU speed peripheral interface data,therefore,in this paper,a highly efficient digital generating clock management FPGA?precision,high?stability clock synchronization signal is used to ensure accurate synchronous communication between the CPU,in order to achieve efficient management of public resources,reasonable task scheduling and the mutual alignment of data calculation.Keywords:FPGA;synchronous communication;CPU;clock signal随着现代半导体技术的不断发展,具有高性能、低功耗和接口资源丰富处理器的数据处理模块越来越多地应用到了嵌入式领域内。
本文着重介绍了一种高精度、高稳定的脉冲同步通信机制,其应用到高性能数据处理模块的双处理器之间,保证双处理器的任务调度平衡和处理数据保证一致性,进而提高系统工作频率和稳定性。
1 同步通信机制的应用条件1.1 数据处理模块工作原理双处理器数据处理模块应用于嵌入式数据信息交换平台的高速数据总线(FC总线、1394B总线和千兆以太网)和低速数据总线(1553B,1394B,LVDS,RS 485)的数据解析、处理和组包,同时完成各种指令的传输控制和任务调度,双处理器数据处理模块的体系结构如图1所示。
双处理器数据处理模块主要功能包括:具备两个PowerPC系列处理器P2010作为数据处理模块的主备核心控制单元;通过FC总线和1553B总线完成与嵌入式数据信息交换平台的外部设备通信;通过1394B总线完成与嵌入式数据信息交换平台其他模块的通信;完成嵌入式数据信息交换平台的控制命令等数据的处理及下发;完成嵌入式数据信息交换平台的参数和状态等信息的处理及上传;主控单元和备控单元能够实现对自身工作状态的监测,异常情况下能切断与外部接口的连接;备控单元实现对主控单元的状态监测,在主控单元故障情况下,备控单元接管主控单元实现系统控制管理功能。
双处理器数据处理模块主要由主控单元、备控单元和共用单元组成。
主控单元包括电源、高性能嵌入式处理系统、1394B总线接口和FC总线接口等电路,备控单元硬件与主控单元硬件设计基本相同,共用单元包括1553B总线接口电路组成,共用单元与主控单元、备控单元分别通过独立接口进行通信。
1.2 应用背景为了保证双处理器数据处理模块的主、备处理器间任务调度、切换和主、备单元各总线交换数据的一致性,需要在主、备处理器之间建立一种相互监听的同步通信机制。
根据双处理器数据处理模块在嵌入式数据信息交换平台作为的核心控制角色,需要在高速的数据处理和ms级任务调度的情况下,完成主备处理器间的同步通信,需要一个ns级的同步通信通道。
需要论证一套同步脉冲(周期1 ms,占空比10%)收发系统,实现发射与接收端脉冲信号时间抖动均方根值小于200 ns,并且保证发射端和接收端的脉冲上升沿相位差固定[1],其抖动也小于200 ns。
2 同步通信机制设计2.1 硬件电路设计2.1.1 FPGA选择由于PowerPC处理器对时钟信号的上升和下降沿,以及时钟上升沿的爬升速度要求极高,减少整个双处理器数据处理模块的时钟源数量(减少电磁干扰);因此需要精确的时序控制和可定制的系统配合能力才能满足处理器间的同步通信;因此具有数字时钟管理器(Digital Clock Manager,DCM)的FPGA具备精准的倍频、分频、相位移动和时钟去偏斜等功能满足处理器间同步通信的功能需要[2]。
利用高稳定度和高精度的外部时钟源为FPGA提供参考时钟和为处理器提供系统时钟,FPGA内部的DCM模块去除时钟偏移时,能消除时钟分配的延迟,完成时钟的闭环控制,提供同步通信脉冲的基准时间。
因此,设计选用国微公司的新一代军品级全温度工作范围(-55~125 ℃)VirtexⅡ系列SMQ2V1000FG456芯片[3],FPGA是基于8层金属的0.12 μm CMOS 逻辑工艺加工制造。
其中密度为100万等效系统门,300 MHz内部时钟速度(Advance Data,系统频率最高可达300 MHz,指的是以FPGA 芯片内部逻辑单元间的最小延迟时间为依据计算出来的逻辑电路可达到的理论最高速度,并不代表外部端口特性或用户系统能达到此频率值),622 Mb/s 的I/O(Advance Data),具有10 240个内部带时钟使能的寄存器/锁存器,8个DCM模块(精确的时钟去偏斜,可变的频率综合,高分辨率的相移),16个全局时钟多路缓冲器时钟控制块,适合用于复杂逻辑以及有存储、缓冲功能的数据采集系统中。
2.1.2 同步通信电路实现双处理器数据处理模块的主备处理器都配对了一个FPGA,它主要负责对主备处理器的相关资源进行分配和实时接口资源控制,可以利用这个资源管理的FPGA和处理器匹配电路的时钟源[4],在每个与CPU配对的FPGA中实现一个脉冲发生器和脉冲接收器,通过一个处理器的配对FPGA中的脉冲接收器去监听另一个处理器配对FPGA中的脉冲发生器是否有脉冲心跳变换,判断对方处理器的运行是否正常,同步通信电路图,如图2所示。
主处理器和备处理器分别通过主备电源同时上电,主处理器和备处理器之间通过数据通信接口达成同步握手协议。
主处理和备处理器分别使能各自配对FPGA中的脉冲发生器和脉冲接收器后,进行以下两步:(1)主备处理器通过eLBC总线对脉冲发生器的状态进行初始化,并进行周期输入使能命令字,触发脉冲发生器发出心跳周期脉冲信号;(2)FPGA内部实现监听寄存器对脉冲接收器的状态进行观察,当脉冲接收器接收到周期性的脉冲心跳信号后,产生周期性的中断触发信号给各自对应的处理器,处理器通过中断感应对方处理器的同步状态。
2.2 同步控制逻辑设计2.2.1 同步控制逻辑原理设计同步通信信号(心跳脉冲)的占空比较小,信号能量较弱,因此在传输之前需对该信号进行编码,以提高信号占空比和能量[5]。
利用FPGA内部锁相环(PLL)先将外部时钟源输入的100 MHz的时钟信号进行倍频得到200 MHz时钟信号,作为信号编码的驱动时钟。
为了减小最终输出端的脉冲信号的上升沿抖动,确保200 MHz时钟信号的第200 000个脉冲的上升沿与1 kHz的上升沿对齐,并且保证编码后信号的在该时刻的上升沿也跟两路信号的上升沿对齐。
同时,对第200 000个脉冲的前几个脉冲进行一定的编码,即在第199 997个脉冲的位置输出连续“0”,在第199 998个脉冲的位置输出连续的“1”,以此来作为脉冲信号上升沿的帧头识别。
因此,只要在接收端识别到帧头,就可以在之后的第一个上升沿作为1 kHz脉冲的上升沿输出,并且使其输出100 μs的宽度,便可以正确的解调出1 kHz的脉冲信号。
在接收端,接收到编码后的信号,可以通过高速时钟采样接收信号,等识别到该帧头后把接收信号的第一个上升沿作为1 kHz脉冲的上升沿,并且连续输出200 000个CLK的高电平来实现100 μs的脉冲,这样就产生了同步信号[1]。
2.2.2 同步控制逻辑原理实现主CPU上电之后,首先通过eLBC总线向主FPGA内部的同步脉冲使能寄存器(EN_Plus_Register)写入“1”,使能脉冲发生器,通过eLBC向脉冲命令寄存器(Cmd_Plus_Register)写入16 b的启动命令,第1 ms写入0x”5A5A”,第2 ms写入0x”A5A5”,第3 ms写入0x”5A5A”,第4 ms写入0x”A5A5”,依次类推[6]。
主FPGA中的脉冲发送状态机,每隔1 ms读取脉冲命令寄存器的值,若数据值为0x”5A5A”和0x”A5A5”交替出现,则认为主处理器工作正常,发送心跳脉冲信号(周期1 ms,占空比10%)到备FPGA的监测接口寄存器。
备FPGA中的内部监测心跳信号状态机,监测心跳脉冲信号(周期1 ms,占空比10%)的上升沿数量,当上升沿的数量≥5(每隔5 ms)时,触发一次备处理器的同步正常中断(IRQ2中断,中断信号持续时间为2 ms),备CPU进入中断服务程序后,首先关闭备处理器的IRQ2中断,同时上报主处理器同步通信状态正常。
若主FPGA的脉冲发生状态机读取脉冲命令寄存器(Cmd_Plus_Register)的值,不是X”5A5A”和X”A5A5”交替出现,或者同一命令字重复出现两次时,则认为主处理器工作异常,主FPGA中的脉冲发生状态机停止发送脉冲同步信号,同时备FPGA中的脉冲接收器如果持续20 ms,未接收到主FPGA发送的周期性脉冲信号,则备FPGA中的脉冲接收状态机触发备处理器的同步异常中断信号(IRQ1中断),备FPGA触发备FPGA中断信号(一旦使能,就一直保持),备处理器进入中断服务程序,关闭备处理器的IRQ1中断,报主处理器的同步信号异常。