精密时钟同步协议研究与实现

精密时钟同步协议研究与实现

论文摘要

随着以太网技术的发展,人们开始将以太网应用在测试测量及工业自动化领域中,于是便出现了网络化测控系统。由于以太网的实时性不足,不能满足测控系统中对实时性的要求。而且,现有的网络时间同步协议如NTP协议,其同步精度是毫秒量级,无法满足测控系统中对时间同步更高精度要求,于是便出现了IEEE标准1588。IEEE 1588标准定义了一个能够在测量和控制系统中实现高精度时钟同步的协议——精密时钟同步协议PTP。本文深入研究了PTP协议,介绍了PTP协议中的普通时钟、边界时钟及时钟的状态,分析了PTP域及PTP通信机制,深入研究了最佳主时钟算法,同时给出了时钟方差计算公式。在对PTP协议深入研究的基础上,设计了两种PTP协议的实现方案,一种是软件实现方案,一种是基于FPGA的实现方案。本文设计的PTP软件实现方案中,软件代码运行在Linux操作系统上。本文根据最佳主时钟算法确定PTP时钟是主时钟还是从时钟。为了提高同步精度,本文在网卡驱动程序中读取消息收发时间作为时间印章,同时利用时钟同步算法来计算偏移量。为了同步时钟,本文设计了时钟修正系统来修正本地时钟同步到主时钟,并根据协议引擎状态机对时钟状态进行转换。本文使用FPGA来捕获时间印章,设计了基于FPGA的PTP实现方案。它与软件实现方案的区别在于,用FPGA来实现PTP消息的检测、时间印章的捕获和频率可调的实时时钟。时间印章是在物理层和MAC层之间捕获的,可以消除协议栈引起的延迟和抖动,提高了同步精度。另外,读取FPGA内部设计的实时时钟的时间作为时间印章,并利用该时间印章计算出主、从时钟之间的偏移量来修正FPGA内部的实时时钟。最后将本文设计的两种PTP实现方案分别应用在LXI仪器中,并对实现的同步精度进行了测试和误差分析,软件实现方案实现了微秒级的同步精度,基于FPGA的实现方案实现了亚微秒级的同步精度。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 课题研究的背景和意义
  • 1.2 网络时间同步协议
  • 1.3 国内外研究现状
  • 1.4 主要研究内容
  • 1.5 本文结构
  • 第2章 PTP协议研究及实现方案
  • 2.1 PTP时钟与时钟状态
  • 2.1.1 普通时钟
  • 2.1.2 边界时钟
  • 2.1.3 时钟状态
  • 2.2 PTP域和PTP通信机制
  • 2.2.1 PTP域
  • 2.2.2 PTP通信机制
  • 2.3 最佳主时钟算法
  • 2.3.1 数据集比较算法
  • 2.3.2 状态决定算法
  • 2.4 时钟方差计算
  • 2.5 时钟同步算法
  • 2.6 PTP协议实现方案
  • 2.7 本章小结
  • 第3章 PTP协议软件实现
  • 3.1 软件实现总体设计方案
  • 3.2 软件流程
  • 3.3 时间印章捕获
  • 3.4 时钟同步修正
  • 3.5 本章小结
  • 第4章 基于FPGA的PTP协议实现
  • 4.1 基于FPGA的PTP实现总体设计方案
  • 4.1.1 总体设计方案
  • 4.1.2 微处理器AT91RM9200
  • 4.1.3 软件开发平台的建立
  • 4.2 基于FPGA的PTP实现的软件设计
  • 4.3 FPGA芯片内部逻辑设计
  • 4.3.1 FPGA内部逻辑总体设计
  • 4.3.2 消息检测模块设计
  • 4.3.3 频率可调的实时时钟模块设计
  • 4.4 时间印章捕获
  • 4.5 时钟同步修正
  • 4.6 本章小结
  • 第5章 时钟同步精度测试结果与误差分析
  • 5.1 测试环境
  • 5.2 软件实现的测试结果与误差分析
  • 5.2.1 测试结果
  • 5.2.2 误差分析
  • 5.3 基于FPGA实现的测试结果与误差分析
  • 5.3.1 测试结果
  • 5.3.2 误差分析
  • 5.4 本章小结
  • 结论
  • 参考文献
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  

    精密时钟同步协议研究与实现
    下载Doc文档

    猜你喜欢