虹科干货 | 适用于基于FPGA的网络设备的IEEE 1588透明时钟架构

导读:在基于FPGA的网络设备中,精确的时间同步至关重要。IEEE 1588标准定义的精确时间协议(PTP)为网络中的设备提供了纳秒级的时间同步。本文将介绍虹科提供的适用于基于FPGA的网络设备的IEEE 1588透明时钟(TC)架构,帮助您实现精确时间同步和高效通信。

在分布式系统中,传感器/执行器的事件和操作需要进行精确的时间协调,因为时钟差异可能导致操作失败。为了确保时间同步,每个组件都需要具备与其对等组件一致的实时时钟,这需要时间同步的常识。

随着电信网络从传统的时分复用 (TDM) 发展到基于分组的网络,额外的同步协议已成为必要。因此,近几十年来开发了多种同步技术,如 IRIG-B、LORAN-C、NTP、基于GPS的同步和SyncE。然而,它们不适合需要精确时间且成本较低的应用领域。

通过精确时间协议 (PTP),能够以最少的网络、计算和硬件资源需求达到亚微秒精度。鉴于此,IEEE 1588标准中定义的PTP正在成为许多需要精确时间同步的应用的最可行的解决方案。虹科推出用于可重新配置设备的IEEE 1588透明时钟 (TC) 可扩展架构,该逻辑解决了PTP实现的主要缺点之一,即级联拓扑中的错误累积

PTP操作过程

1、PTP操作类型

PTP操作可分为两个过程:时间同步和频率同步;

时间同步(或偏移调整):偏移量计算为主从时间之差;

频率同步(或频率调整):频率漂移为在两个N间隔的同步消息之间传递的从机时间差和主机时间差之间的比率。

图1. 延迟请求响应机制

2、延迟测量

PTP消息中发送的时间戳必须通过传播延迟进行纠正,传播延迟可以使用标准中定义的两种机制之一进行测量:延迟请求响应机制或对等延迟机制。

3、PTP时钟设备

PTP系统由PTP和非PTP设备的组合组成。PTP设备分为普通时钟(OC)、边界时钟(BC)、透明时钟(TC)和管理节点(MN)。

图2. PTP网络示意图

图2展示了一个简单PTP网络:OC是包含PTP时钟和单个物理网络连接的系统终端设备,而BC是具有多个物理端口的网络设备,它们不转发PTP接收到的消息,而是与主站同步并生成新的PTP消息以与其余从站共享其自己的定时参考。

TC有两种类型:端到端(E2E)TC和点对点(P2P)TC,它们也是网络设备。一方面,E2E TC像正常网络节点一样转发所有PTP和非PTP消息,此外,它们测量消息穿越TC所需的时间,称为驻留时间,并将其累积在PTP 中称为 CorrectionField的特殊字段。另一方面,P2P TC使用对等延迟机制来测量两个直接连接的端口(链路对等点)之间的链路延迟,并使用与Sync消息的入口传输路径相关的驻留时间和链路延迟来更新CorrectionField ,允许在网络拓扑更改后更快地重新配置。

此外,每个PTP设备可以作为一步或两步模式工作:一步时钟根据同步和延迟请求事件消息实时生成时间戳,而两步时钟则根据Follow Up和Delay Resp一般消息。

4、PTP执行

硬件与软件实现:PTP环境提供不同的可能时间戳点,如图3所示。结果的精度取决于时间戳的精度 。一方面,在网络接口卡 (NIC) 驱动程序或应用程序层中获取时间戳的纯软件解决方案具有平台独立性的优势,但会经历通过协议栈的消息传输延迟的巨大变化(也称为抖动)。驱动程序级别的时间戳是最佳软件解决方案,但需要修改网络驱动程序。

图3. 可能的时间戳点

另一方面,在硬件辅助方法中,时间戳是在介质独立接口(MII)处获取的。带有时间戳的消息越接近物理层,所达到的准确性就越好。由于硬件的帮助,使用IP内核和现场可编程门阵列 (FPGA) 已成为最精确和准确的时间戳方法。

其他实现方面:不同供应商的PTP IP核往往具有相似的架构。他们通常使用软CPU,例如Xilinx FPGA 中的Microblaze,包含用户应用程序和PTP堆栈软件,并在同一FPGA中构建完整的SoC解决方案。这些IP核通常由至少两个称为实时时钟 (RTC) 和时间戳单元 (TSU) 的硬件模块组成。RTC通常是一个64位计数器,表示秒和纳秒,并且可以通过更改内核的某些配置寄存器的值进行调整。TSU负责存储有关帧的信息,例如序列 ID、消息类型或时钟标识,以及时间戳信息。

基于FPGA的TC架构

1、实时时钟(RTC)

名为RTC的块代表可选的同步时钟源,例如,它可以是 IEEE 1588或GPS时钟。RTC 可以由一个计数器形成,该计数器在每个时钟周期按系统时钟周期递增。

2、循环冗余校验 (CRC) 检查器/发生器

CRC检查器模块检查接收到的以太网帧的帧校验序列(FCS)字段,以便检测传输过程中损坏的数据(由 于数据丢失或更改而导致的错误)。另一方面,CRC生成器模块重新生成新的FCS字段并将其附加在帧末尾,如IEEE 802.3标准中所定义。

3、On-The-Fly (OTF) 更正

OTF Correction的模块负责将相应的驻留时间动态添加到PTPv2事件数据包的CorrectionField字段中,如IEEE 1588-2008中针对单步TC的定义。也就是说,它不会等到接收到整个PTP消息才计算停留时间并将其添加到CorrectionField中。相反,一旦知道传入消息的CorrectionField,就会尽快将停留时间添加到其中。

4、驻留时间桥

该模块计算自PTP帧进入和离开TC以来经过的时间。每个消息的停留时间值被向下传递到OTF校正模块。由于入口时间戳临时存储在存储器中,并且计算的停留时间被传递到负责更新CorrectionField的模块。

图4. 驻留时间桥框图

5、实验结果

图5. 左侧为CorrectionField和测量延迟样本之间的比较;右侧为停留时间出现的频率

通过复制必要的模块,该设计可以轻松扩展到两个以上的端口:除了新的OTF校正器之外,每个新端口还应将两个额外的WB Master 0和WB Master 1子模块集成到驻留时间桥中,CRC检查器和CRC生成器连接到每个新的出口端口。在资源利用方面,每个额外端口的空间需求比较少数的Slices Registers和LUTs。不需要复制WB Slave 0,但必须调整CAM/RAM存储器的大小以应对PTP流量并在拥塞条件下正确执行。

虹科 IEEE 1588 IP 核方案

虹科IEEE1588v2兼容时钟同步IP内核,它能够准确地为IEEE 1588报文打上时间戳,并提供兼容的计时器,广泛应用于汽车、工业、广播和航空航天等行业。其能够提供许多应用所需的精确时间同步,而不需要任何新的基础设施。
TC应在级联拓扑中使用,其中网络设备拥塞状况导致的延迟可能会影响协议性能。所提出的TC架构是以简单的方式开发具有TC功能的以太网交换机的可行解决方案,具有完全的可扩展性和最小的资源利用率。由于块RAM是利用率最高的资源,并且它们直接取决于CAM和RAM大小,因此应在实现过程中优化这两个元素。如需进一步了解虹科IEEE 1588 PTP IP核解决方案,欢迎随时联系我们。

了解虹科工业通讯更多资讯,欢迎前往【虹科智能互联】官方网站:https://www.hoautom.com/precisetimebasic-ieee-1588-2008-v2-ptp-ip-core/?from=industrynews 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/207154.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android的启动模式

Android的四种启动模式:standard、singleTop、singleTask和singleInstance。 1.standard Android默认的启动模式是standard,每启动一个Activity,它都会在返回栈中入栈,并处于栈顶,不管这个返回栈是否存在这个activit…

如何查看电脑内存?Windows 和 Mac 方法不同

Windows 系统查看内存方法 在 Windows 操作系统中我们查看电脑内存在哪里查呢?下面总结的 3 种查看电脑内存的方法都可以使用:使用任务管理器:任务管理器是 Windows 中一个强大的工具,可用于监视和管理计算机的性能和资源使用。使…

SpringBoot参数校验@Validated和@Valid的使用

1、Validated和Valid区别 Validated:可以用在类、方法和方法参数上。但是不能用在成员属性(字段)上Valid:可以用在方法、构造函数、方法参数和成员属性(字段)上 2、引入依赖 Spring Boot 2.3 1 之前&…

2023年亚太杯数学建模A题水果采摘机器人的图像识别功能(免费思路)

中国是世界上最大的苹果生产国,年产量约为 3500 万吨。同时,中国也是世界上最大的苹果出口国,世界上每两个苹果中就有一个出口到国。世界上每两个苹果中就有一个来自中国,中国出口的苹果占全球出口量的六分之一以上。来自中国。中…

【机器学习】线性模型之逻辑回归

文章目录 逻辑回归Sigmoid 函数概率输出结果预测值与真实标签之间的并不匹配交叉熵逻辑回归模型 梯度下降逻辑回归模型求解编程求解sklearn 实现,并查看拟合指标 逻辑回归 逻辑回归是一种广义线性模型,形式上引入了 S i g m o i d Sigmoid Sigmoid 函数…

(2)(2.2) Lightware SF45/B(350度)

文章目录 前言 1 安装SF45/B 2 连接自动驾驶仪 3 通过地面站进行配置 4 参数说明 前言 Lightware SF45/B 激光雷达(Lightware SF45/B lidar)是一种小型扫描激光雷达(重约 50g),扫描度可达 350 度,扫描范围 50m。 1 安装SF45…

python 中文件相对路径 和绝对路径

什么是绝对路径 绝对路径:就是从盘符(c盘、d盘)开始一直到文件所在的具体位置。 例如:xxx.txt 文件的绝对路径为: “C:\Users\xiaoyuzhou\Desktop\file\xxx.txt”相对路径 “相对路径”就是针对“当前文件夹”这一参考对象,来描述…

强化学习-DQN

网上看了很多,但是还是觉得这篇文章讲得最好: 可视化强化学习解释 - Deep Q Networks,循序渐进 |Ketan Doshi 博客 (ketanhdoshi.github.io)

深度学习(三):pytorch搭建卷积神经网络

1.常用函数介绍 0 设备准备 device torch.device("cuda:0" if torch.cuda.is_available() else "cpu")这行代码是用来选择设备的,根据是否有可用的 CUDA 设备来选择使用 GPU 还是 CPU 进行计算。 更详细的解释如下: torch.cuda.…

C语言-指针讲解(4)

在上一篇博客中: C语言-指针讲解(3) 我们给大家介绍了指针进阶的用法 让下面我们来回顾一下讲了什么吧: 1.字符指针变量类型以及用法 2.数组指针本质上是一个指针,里面存放数组的地址。而指针数组本质上是个数组,里面存放的是指针…

IDEA maven无法下载源代码处理

1、使用idea内置maven 在idea中新增一个mvn运行项,截图如下: 输入命令: dependency:resolve -Dclassifiersources 2、如果外部maven,不使用idea内部maven 在工程目录下命令行执行命令: mvn dependency:resolve -Dclassifiersources

智慧城市政务一网统管解决方案:PPT全文34页,附下载

关键词:智慧政务解决方案,智慧城市解决方案,智慧政务一网统管解决方案,一网统管治理理念,一网统管治理体系,一网统管治理手段,智慧政务综合服务平台建设 一、智慧城市政务一网统管建设背景 一…

Python快速实现BMI(身体质量指数)计算器(窗口界面形式)

BMI是身体质量指数(Body Mass Index)的缩写,是一种衡量人体肥胖程度的指标。它是根据人的身高和体重计算得出的,公式为: BMI 体重(kg)/ 身高^2(m) 其中,体…

说说你对slot的理解?slot使用场景有哪些?

面试官&#xff1a;说说你对slot的理解&#xff1f;slot使用场景有哪些&#xff1f; 一、slot是什么 在HTML中 slot 元素 &#xff0c;作为 Web Components 技术套件的一部分&#xff0c;是Web组件内的一个占位符 该占位符可以在后期使用自己的标记语言填充 举个栗子 <t…

centos服务器安装docker和Rabbitmq

centos服务器 一 centos安装docker1 安装docker所需要的依赖包2配置yum源3查看仓库中所有的docker版本4安装docker5 设置docker为开机自启6验证docker是否安装成功 二 使用docker安装RabbitMQ拉取RabbitMQ镜像创建并运行容器 一 centos安装docker 1 安装docker所需要的依赖包 …

借助ETL快速查询金蝶云星空表单信息

随着数字化转型的加速&#xff0c;企业信息化程度越来越高&#xff0c;大量的数据产生并存储在云端&#xff0c;需要进行有效的数据管理和查询。金蝶云星空是金蝶云旗下的一款云ERP产品&#xff0c;为企业提供了完整的业务流程和数据管理功能&#xff0c;因此需要进行有效的数据…

【Linux】I/O多路转接技术

I/O多路转接技术 一、I/O多路转接之select1、select函数2、fd_set的相关内容3、如何在代码中高效的使用select函数4、select服务器5、select的优缺点6、select的适用场景 二、I/O多路转接之poll1、poll函数2、struct pollfd结构2、poll服务器3、poll的优缺点 三、I/O多路转接之…

Nacos 2.X核心架构源码剖析

概述 注册中心并发处理&#xff0c;1.4.x 写时复制&#xff0c;2.1.0 读写分离&#xff1b;nacos 一般使用 AP 架构&#xff0c;即临时实例&#xff0c;1.4.x 为 http 请求&#xff0c;2.1.0 优化为 gRPC 协议&#xff1b;源码中使用了大量的事件通知机制和异步定时线程池&…

【产品经理】AI在SaaS产品中的应用及挑战

随着ChatGPT大模型在全球的爆火&#xff0c;AI迅速在各个行业内&#xff0c;助力于各行业的效率提升。而SaaS领域&#xff0c;AI同样也大有可为。 AI&#xff08;人工智能&#xff0c;Artificial Intelligence的缩写&#xff09;近一年来一直处于舆论风口&#xff0c;随着ChatG…

颠覆性语音识别:单词级时间戳和说话人分离

vbenjs/vue-vben-admin[1] Stars: 19.7k License: MIT Vue Vben Admin 是一个免费开源的中后台模板&#xff0c;使用最新的 vue3、vite4 和 TypeScript 等主流技术进行开发。该项目提供了现成的中后台前端解决方案&#xff0c;并可用于学习参考。 使用先进的前端技术如 Vue3/…