CN110971329A - 用于管理内部时间同步的技术 - Google Patents

用于管理内部时间同步的技术 Download PDF

Info

Publication number
CN110971329A
CN110971329A CN201910767978.3A CN201910767978A CN110971329A CN 110971329 A CN110971329 A CN 110971329A CN 201910767978 A CN201910767978 A CN 201910767978A CN 110971329 A CN110971329 A CN 110971329A
Authority
CN
China
Prior art keywords
time
message
synchronization
iot
response
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
Application number
CN201910767978.3A
Other languages
English (en)
Inventor
K·卡希猜努拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN110971329A publication Critical patent/CN110971329A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/0055Synchronisation arrangements determining timing error of reception due to propagation delay
    • H04W56/0065Synchronisation arrangements determining timing error of reception due to propagation delay using measurement of signal travel time
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • H04W56/0015Synchronization between nodes one node acting as a reference for the others
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/003Arrangements to increase tolerance to errors in transmission or reception timing

Abstract

用于管理内部时间同步的技术包括物联网(IoT)设备,其被配置为确定根据发送路径延迟和接收路径延迟的传输延迟值,所述发送路径延迟与从IoT设备的I/O设备发送到IoT设备的中央计时器的第一消息相对应,所述接收路径延迟与从中央计时器发送到I/O设备的第二消息相对应。IoT设备还被配置为:响应于在已经确定传输延迟值之后已经从中央计时器接收到广播消息,更新根据传输延迟值的所接收的广播消息的时间戳值。本文描述了其他实施例。

Description

用于管理内部时间同步的技术
背景技术
许多类型的设备(例如,传感器、车辆、电器、工业装备和其他事物) 正在获得计算资源和网络能力。有时被描述为物联网(IoT),现代计算系 统可以包括基于云的服务器、网络基础设施以及连接的边缘设备,它们一 起工作以执行网络应用功能。通常,现代计算系统执行时间敏感的操作。 作为响应,电气和电子工程师协会(IEEE)已经开发了用于确定性网络的 各种标准,其被统称为时间敏感网络(TSN),其旨在提供跨网络的极其精 确的时钟同步。作为结果,时间敏感应用(例如,工业和汽车空间)中的 嵌入式设计越来越多地集成TSN控制器。
然而,应用利用由TSN提供的高精度时钟同步的能力通常受到软件时 钟(例如,经由读取的时间戳计数器指令的处理器时间戳计数器)与网络 时钟(例如,IEEE 802.1AS-2011、IEEE 1588-2008等)之间的精度的限制, 或者更具体而言是受到缺乏所述精度的限制。因此,软件通常限于在其网 络接口控制器(NIC)上重复采样其内部时间和网络时间,并且同步的精度 通常限于处理器和网络时间之间可实现的最小读取延时,这可能具有对网络性能的负面影响。
附图说明
本文描述的构思在附图中通过示例而非限制的方式进行了说明。为了 说明的简单和清楚,附图所示的元素不一定按比例绘制。在被认为适当的 情况下,已经在附图之间重复附图标记,以指示对应或相似的元素。
图1是用于通过链路耦合到相应网关的相应物联网(IoT)网络的至少 一个实施例的简化域拓扑;
图2是与在云计算网络的边缘处充当雾设备(fog device)的IoT设备 的网状网络通信的简化云计算网络;
图3是IoT处理系统架构的至少一个实施例的简化框图,在所述IoT 处理系统架构上可以执行本文所讨论的技术(例如,操作、过程、方法和 原则)中的任何一种或多种技术;
图4是IoT设备的环境的至少一个实施例的简化框图;
图5是用于确定用于计算可用于管理内部时间同步的传输延迟值的输 入的方法的至少一个实施例的简化流程图,所述方法可以由图4的IoT设 备执行;
图6是用于计算可用于管理内部时间同步的传输延迟的方法的至少一 个实施例的简化流程图,所述方法可以由图4的IoT设备执行;
图7是用于管理内部时间同步的图4的IoT设备的说明性硬件集的至 少一个实施例的简化框图;
图8是用于管理内部时间同步的图4的IoT设备的另一说明性硬件集 的至少一个实施例的简化框图;并且
图9是示出多个IoT设备之间的通信的网络的至少一个实施例的简化 框图。
具体实施方式
虽然本公开内容的构思易于进行各种修改和替代形式,但是其具体实 施例已经在附图中通过示例的方式示出,并且将在本文中进行详细描述。 然而,应当理解,不旨在将本公开内容的构思限制为所公开的特定形式, 而是相反,意图是覆盖与本公开内容和所附权利要求一致的所有修改、等 同物和替代方案。
说明书中对“一个实施例”、“实施例”、“示例性实施例”等的引用指 示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可 以或可以不一定包括该特定的特征、结构或特性。此外,这样的短语不一 定指代相同实施例。此外,当结合实施例描述特定特征、结构或特性时, 所主张的是结合其他实施例来实现这样的特征、结构或特性(无论其是否 被明确描述)在本领域技术人员的知识内。此外,应当领会,被包括在采 用“A、B和C中的至少一个”的形式的列表中中的项目可以意指(A);(B); (C);(A和B);(A和C);(B和C);或(A、B和C)。类似地,以“A、 B或C中的至少一个”的形式列出的项目可以意指(A);(B);(C):(A 和B);(A和C);(B和C);或(A、B和C)。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组 合来实现。所公开的实施例还可以被实现为由一个或多个暂时性或非暂时 性机器可读(例如,计算机可读)存储介质携带或存储于其上的指令,所 述指令可以由一个或多个处理器读取和执行。机器可读存储介质可以体现 为用于以机器可读的形式存储或发送信息的任何存储设备、机构或其他物 理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。
在附图中,可以以具体的布置和/或顺序示出一些结构或方法特征。然 而,应当领会,这样的具体布置和/或顺序可以不是必需的。相反,在一些 实施例中,这样的特征可以以与说明性附图中所示的不同的方式和/或顺序 布置。另外,在特定附图中包括结构或方法特征并不意味着这样的特征在 所有实施例中都是必需的,并且在一些实施例中,这样的特征可以不被包 括或者可以与其它特征组合。
图1示出了通过链路耦合到相应网关的相应物联网(IoT)网络的示例 性域拓扑。物联网(IoT)是这样一种概念:其中,大量计算设备彼此互连 并与互联网互连以提供非常低级别的功能和数据获取。因此,如本文所使 用的,IoT设备可以包括执行诸如感测或控制等的功能的半自主设备,所述 半自主设备与其他IoT设备和更宽的网络(例如,互联网)通信。通常,IoT 设备在存储器、大小或功能方面受到限制,以允许以与较小数量的较大设 备类似的成本部署较大数量的设备。然而,IoT设备可以是智能手机、笔记 本电脑、平板电脑或PC、或其他较大的设备。此外,IoT设备可以是虚拟 设备,例如智能手机或其他计算设备上的应用。IoT设备可以包括IoT网关, 其用于将IoT设备耦合到其他IoT设备和云应用,以用于数据存储、过程控 制等。
在使用中,IoT设备自动确定并且针对传输延迟应用校正,而不对IoT 设备的任何对应I/O设备的布局、物理放置(physical placement)和/或定时 施加限制。为此,IoT设备包括在IoT设备的中央计时器与一个或多个I/O 设备之间的附加串行信号线(例如,参见图8),以执行传输延迟确定和校 正。如前所述,IoT设备通常部署在时间敏感的环境中,例如在工业IoT部 署中。为此,电气和电子工程师协会(IEEE)已经开发了用于确定性网络 的各种标准(统称为时间敏感网络(TSN)),其旨在提供跨网络的极其精确 的时钟同步。作为结果,时间敏感应用(例如,工业和汽车空间)中的嵌 入式设计越来越多地集成TSN控制器。
然而,应用利用由TSN提供的高精度时钟同步的能力通常受到软件时 钟(例如,经由读取的时间戳计数器指令的处理器时间戳计数器)与网络 时钟(例如,IEEE 802.1AS-2011、IEEE 1588-2008等)之间的精度限制, 或者更具体而言是受到缺乏所述精度的限制。因此,在没有硬件同步支持 的情况下,软件通常限于在其网络接口控制器(NIC)(例如,参见图3的 NIC 368)上重复对其内部时间和网络时间进行采样,并且同步精度通常限 于处理器和网络时间之间可实现的最小读取延时。应当理解,硬件同步的 限制因素之一是由于传输延迟(例如,用于在IoT设备的组件之间发送消 息所经过的时间量)导致的延时。
取决于实施例,传输延迟可以超过几百纳秒。在TSN应用中,本地中 央计时器(ART)与具有低抖动的I/O系统计时器之间的内部时间同步通常 被认为是操作关键的。例如,TSN软件/驱动程序基于这些计时器来调度所 有实时事件。因此,计时器之间的定时相关性中的任何抖动通常将引起对 事件的调度中的抖动。因此,应该领会,可预测的和低抖动操作通常被认 为对于某些应用是至关重要的,例如工业控制应用。此外,TSN应用越来越多地部署于汽车和对事件的严格控制被认识是要求的其他领域。
IoT设备的网络可以包括商业和家庭自动化设备,例如配水系统、电力 分配系统、管道控制系统、工厂控制系统、灯开关、恒温器、锁、相机、 警报器、运动传感器等等。IoT设备可以是可通过远程计算机、服务器和其 他系统访问的,例如以控制系统或访问数据。
互联网和类似网络的未来增长可能涉及非常大量的IoT设备。因此, 在本文讨论的技术的上下文中,这种未来网络的许多创新将解决所有这些 层不受阻碍地增长、发现可连接资源并使可连接资源可访问、以及支持隐 藏和划分连接的资源的能力的需要。可以使用任何数量的网络协议和通信 标准,其中,每个协议和标准被设计为解决特定目标。此外,协议是支持 人类可访问服务(human accessible service)的结构的部分,所述服务无论位置、时间或空间如何都可以操作。这些创新包括服务递送和相关联的基 础设施,例如硬件和软件;安全增强;以及基于服务级别和服务递送协议 中规定的服务质量(QoS)条款供应服务。将理解,IoT设备和网络的使用 (例如,图1和图2中介绍的那些)呈现了包括有线和无线技术的组合的 异构连接网络中的多个新挑战。
图1具体提供了域拓扑的简化图,所述域拓扑可以用于包括IoT设备 104的多个物联网(IoT)网络,其中,IoT网络156、158、160、162通过 骨干链路102耦合到相应的网关154。例如,多个IoT设备104可以与网关 154通信,并且通过网关154彼此通信。为了简化附图,不是每个IoT设备 104或通信链路(例如,链路116、122、128或132)都被标记。骨干链路 102可以包括任何数量的有线或无线技术,包括光网络,并且可以是局域网 (LAN)、广域网(WAN)或互联网的部分。另外,这种通信链路促进IoT 设备104和网关154二者之间的光信号路径,包括使用促进各种设备的互 连的复用(MUXing)/解复用(deMUXing)组件。
网络拓扑可以包括任何数量的IoT网络类型,例如提供有使用蓝牙低 功耗(BLE)链路122的网络156的网状网络。可以存在的其他类型的IoT 网络包括:无线局域网(WLAN)网络158,其用于通过IEEE 802.11
Figure BDA0002172599750000051
链路128与IoT设备104通信;蜂窝网络160,其用于通过LTE/LTE-A(4G) 或5G蜂窝网络与IoT设备104通信;以及低功率广域(LPWA)网络162, 例如,与LoRa联盟发布的LoRaWan规范兼容的LPWA网络、或由与互联 网工程任务组(IETF)发布的规范兼容的IPv6低功率广域网(LPWAN) 网络。此外,相应的IoT网络可以使用任何数量的通信链路来与外部网络 提供商(例如,第2层或第3层提供商)通信,例如LTE蜂窝链路、LPWA 链路或基于IEEE 802.15.4标准的链路,例如
Figure BDA0002172599750000052
相应的IoT网络还可以使用各种网络和例如约束应用协议(CoAP)之类的互联网应用协议来 操作。相应的IoT网络还可以与协调器设备集成,所述协调器设备提供形 成链接的设备和网络的集群树的链接链(a chain of links)。
这些IoT网络中的每个IoT网络都可以为新技术特征提供机会,例如 本文所述的那些技术特征。改进的技术和网络可以实现设备和网络的指数 增长,包括将IoT网络用于雾设备或系统中。随着这样的改进技术的使用 的增长,可以开发IoT网络以用于自我管理、功能演进和协作,而无需直 接的人为干预。改进的技术甚至可以使得IoT网络能够在没有集中控制系 统的情况下运行。因此,本文描述的改进技术可以用于自动化和增强远远 超出当前实施方式的网络管理和操作功能。
在示例中,例如骨干链路102上的、IoT设备104之间的通信可以由用 于认证、授权和计费(AAA)的分散式系统保护。在分散式AAA系统中, 可以跨互连的异构网络基础设施实现分布式支付、信用、审计、授权和认 证系统。这允许系统和网络朝向自主操作发展。在这些类型的自主操作中, 机器甚至可以签订人力资源合同并与其他机器网络协商合作伙伴关系。这 可以允许实现共同目标和平衡的服务递送而不是概述的、计划的服务水平 协议,以及实现提供计量、测量、可追溯性和可跟踪性的解决方案。创建 新的供应链结构和方法可以使得大量服务能够被创建、针对价值进行挖掘、 并且在没有任何人为参与的情况下崩溃(collapse)。
通过将诸如声音、光、电子交通、面部和模式识别、气味、振动之类 的感测技术集成到IoT设备之间的自主组织中,可以进一步增强这种IoT 网络。感知系统的集成可以允许针对合同服务目标的服务递送的系统和自 主的通信、协调以及基于服务质量(QoS)的资源的集群和融合。基于网络 的资源处理的个体示例中的一些示例包括以下内容。
例如,网状网络156可以由执行内联数据到信息变换的系统来增强。 例如,包括多链路网络的处理资源的自形成链可以分配高效的方式的原始 数据到信息的变换,以及区分资产与资源以及对每一个的相关联的管理的 能力。此外,可以插入基础设施和基于资源的信任和服务索引的适当组件, 以改善数据完整性、质量、保证并递送数据置信度量。
例如,WLAN网络158可以使用执行标准转换的系统来提供多标准连 接,以使得使用不同协议的IoT设备104能够进行通信。进一步的系统可 以跨包括可见互联网资源和隐藏互联网资源的多标准基础设施提供无缝互 连。
例如,蜂窝网络160中的通信可以由卸载数据、将通信扩展到更远程 的设备或二者的系统来增强。LPWA网络162可以包括执行到IP互连的非 互联网协议(IP)、寻址和路由的系统。此外,IoT设备104中的每个IoT 设备都可以包括适当的收发器,以用于与该设备进行广域通信。此外,每 个IoT设备104都可以包括用于使用附加协议和频率来通信的其他收发器。 关于图3中描绘的IoT处理设备的通信环境和硬件进一步讨论了这一点。
最后,可以配备IoT设备的集群以与其他IoT设备以及云网络通信。 这可以允许IoT设备在设备之间形成自组织网络,以允许它们充当单个设 备,其可以被称为雾设备。下面关于图2进一步讨论了该配置。
图2示出了与充当云计算网络边缘处的雾设备的IoT设备(设备202) 的网状网络通信的云计算网络。IoT设备的网状网络可以被称为雾220,其 在云200的边缘处操作。为了简化该图,不是每个IoT设备202都被标记。
雾220可以被认为是大规模互连的网络,其中,多个IoT设备202彼 此通信,例如通过无线电链路222。作为示例,可以使用由开放连接基金会 TM(OCF)发布的互连规范来促进该互连网络。该标准允许设备发现彼此 并且建立通信以用于互连。也可以使用其他互连协议,包括例如优化的链 路状态路由(OLSR)协议、移动自组织网络路由协议(B.A.T.M.A.N.)的 更好方法或OMA轻量级M2M(LWM2M)协议等等。
在该示例中示出了三种类型的IoT设备202、网关204、数据聚合器226 和传感器228,但是可以使用IoT设备202和功能的任何组合。网关204可 以是提供云200与雾220之间的通信的边缘设备,并且还可以为从传感器 228获得的数据(例如,运动数据、流数据、温度数据等)提供后端处理功 能。数据聚合器226可以从任何数量的传感器228收集数据,并且执行后 端处理功能以进行分析。结果、原始数据或二者可以通过网关204被传递 到云200。传感器228可以是完整的IoT设备202,例如既能够收集数据又 能够处理数据。在一些情况下,传感器228可以在功能上更受限,例如收 集数据并且允许数据聚合器226或网关204处理数据。
来自任何IoT设备202的通信可以沿着IoT设备202中的任何IoT设备 之间的方便路径(例如,最方便的路径)被传递以到达网关204。在这些网 络中,互连的数量提供大量冗余,以允许通信即使在丢失了多个IoT设备 202的情况下也被维持。此外,网状网络的使用可以允许使用功率非常低或 位于距基础设施一定距离处的IoT设备202,这是因为连接到另一IoT设备 202的距离可能远小于连接到网关204的距离。
从这些IoT设备202提供的雾220可以被呈现给云200中的设备(例 如服务器206)以作为位于云200的边缘处的单个设备,例如雾设备。在该 示例中,来自雾设备的警报可以被发送而不被识别为来自雾220内的特定 IoT设备202。以这种方式,雾220可以被认为是提供计算和存储资源以执 行处理或数据密集型任务(例如,数据分析、数据聚合和机器学习等)的 分布式平台。
在一些示例中,可以使用命令式编程风格来配置IoT设备202,例如其 中,每个IoT设备202具有特定功能和通信伙伴。然而,形成雾设备的IoT 设备202可以以声明式编程风格来配置,以允许IoT设备202重新配置它 们的操作和通信,例如以响应于条件、查询和设备故障而确定所需的资源。 作为示例,来自位于服务器206处的用户关于由IoT设备202监测的装备 的子集的操作的查询可以引起雾220设备选择对查询进行应答所需的IoT 设备202,例如特定传感器228。然后,在由雾220设备发送到服务器206 以对查询进行应答之前,可以通过传感器228、数据聚合器226或网关204 的任何组合来聚合和分析来自这些传感器228的数据。在该示例中,雾220 中的IoT设备202可以基于查询来选择所使用的传感器228,例如添加来自 流量传感器或温度传感器的数据。此外,如果IoT设备202中的一些IoT 设备不在操作,则雾220设备中的其他IoT设备202可以提供类似数据(如 果可用的话)。
在其他示例中,上述操作和功能可以由采用根据示例性实施例的电子 处理系统的示例性形式的IoT设备机器体现,在所述IoT设备机器中可以执 行指令集或序列以使电子处理系统执行在本文讨论的方法中的任何一种方 法。该机器可以是IoT设备或IoT网关,包括由以下各项的各方面体现的机 器:个人计算机(PC)、平板PC、个人数字助理(PDA)、移动电话或智能 手机、或能够执行指定要由该机器采取的动作的(顺序或其他的)指令的 任何机器。此外,虽然在上面的示例中可以仅描绘和引用单个机器,但是 这样的机器还应当视为包括任何机器的集合,其个别地或共同地执行一个 (或多个)指令集以执行这里讨论的方法中的任何一种或多种方法。此外, 基于处理器的系统的这些和类似的示例应被视为包括任何一个或多个机器 的集,其由处理器(例如,计算机)控制或操作以个别地或共同地执行指 令以执行本文讨论的方法中的任何一种或多种方法。
现在参考图3,示出了可以存在于IoT设备350中以用于实现本文描述 的技术的组件的说明性框图。IoT设备350可以包括示例中示出的或在以上 公开内容中引用的组件的任何组合。组件可以被实现为IC、其部分、分立 电子设备,或者在IoT设备350中适配的其他模块、逻辑、硬件、软件、 固件或其组合,或者被实现为以其他方式被包含在较大系统的机箱内的组 件。另外,图3的框图旨在描绘IoT设备350的组件的高级视图。然而, 可以省略所示的组件中的一些组件,可以存在附加的组件,并且在其他实 施方式中可以出现所示组件的不同布置。
IoT设备350可以包括处理器352,其可以是微处理器、多核处理器、 多线程处理器、超低电压处理器、嵌入式处理器或其他已知的处理元件。 处理器352可以是片上系统(SoC)的一部分,在所述SoC中处理器352 和其他组件形成为单个集成电路或单个封装,例如来自英特尔的EdisonTM或GalileoTMSoC板。作为示例,处理器352可以包括基于
Figure BDA0002172599750000095
Figure BDA0002172599750000094
Architecture CoreTM的处理器,例如QuarkTM、AtomTM、i3、i5、i7或MCU 级处理器,或者可以从加利福尼亚州圣克拉拉市的
Figure BDA0002172599750000091
公司获得的另一 这样的处理器。然而,可以使用任何数量的其他处理器,例如可从加利福 尼亚州森尼韦尔市的超微半导体(AdvancedMicro Devices)公司(AMD) 获得的处理器、可从加利福尼亚州森尼韦尔市的美普思科技(MIPS Technologies)公司获得的基于MIPS的设计、经ARM控股(ARM Holdings) 公司或其客户或其被许可人或采用者许可的基于ARM的设计。处理器可以 包括诸如来自
Figure BDA0002172599750000092
公司的A5-A10处理器、来自高通科技(
Figure BDA0002172599750000093
Technologies)公司的骁龙TM处理器、或来自德州仪器(Texas Instruments) 公司的OMAPTM处理器之类的单元。
处理器352可以在互连356(例如,总线)上与系统存储器354通信。 可以使用任何数量的存储器设备来提供给定量的系统存储器。作为示例, 存储器可以是根据联合电子设备工程委员会(JEDEC)设计的随机存取存 储器(RAM),例如DDR或移动DDR标准(例如,LPDDR、LPDDR2、 LPDDR3或LPDDR4)。在各种实施方式中,个体存储器设备可以是任何数 量的不同封装类型,例如单管芯封装(SDP)、双管芯封装(DDP)或四管 芯封装(QDP)。在一些示例中,这些设备可以直接焊接到母板上以提供较 低轮廓的解决方案(lower profilesolution),而在其他示例中,这些设备被 配置为一个或多个存储器模块,其转而通过给定的连接器耦合到母板。可 以使用任何数量的其他存储器实施方式,例如其他类型的存储器模块,例 如不同种类的双列直插式存储器模块(DIMM),包括但不限于microDIMM 或MiniDIMM。
为了提供对诸如数据、应用、操作系统等的信息的持久性存储,存储 装置358还可以经由互连356耦合到处理器352。在示例中,存储装置358 可以经由固态磁盘驱动器(SSDD)实现。可以用于存储装置358的其他设 备包括闪速存储器卡(例如,SD卡、microSD卡、xD图片卡等)以及USB 闪存驱动器。在低功率实施方式中,存储装置358可以是管芯上存储器或 与处理器352相关联的寄存器。然而,在一些示例中,存储装置358可以 使用微硬盘驱动器(HDD)来实现。此外,附加于或代替所描述的技术, 可以将任何数量的新技术用于存储装置358,例如电阻变化存储器、相变存 储器、全息存储器、或化学存储器等等。
组件可以在互连356上进行通信。互连356可以包括任何数量的技术, 包括工业标准架构(ISA)、扩展ISA(EISA)、外围组件互连(PCI)、外围 组件互连扩展(PCIx)、PCI快速(PCIe)或任何数量的其他技术。互连356 可以是例如用于基于SoC的系统中的私有总线。可以包括其他总线系统, 例如I2C接口、SPI接口、点对点接口和电源总线等等。
互连356可以将处理器352耦合到网状收发器362,以用于与其他网状 设备364通信。网状收发器362可以使用任何数量的频率和协议,例如IEEE 802.15.4标准下的2.4千兆赫(GHz)传输,使用由
Figure BDA0002172599750000101
特别兴趣小组定 义的
Figure BDA0002172599750000103
低能耗(BLE)标准、或
Figure BDA0002172599750000102
标准等。针对特定无线通信协 议配置的任何数量的无线电都可以用于到网状设备364的连接。例如, WLAN单元可以用于根据电气和电子工程师学会(IEEE)802.11标准实现 Wi-FiTM通信。另外,例如根据蜂窝或其他无线广域协议的无线广域通信可 以经由WWAN单元发生。
网状收发器362可以使用用于不同范围的通信的多个标准或无线电来 通信。例如,IoT设备350可以使用基于BLE的本地收发器或另一低功率 无线电来与近距离设备(例如,在大约10米内)通信以节省功率。可以通 过ZigBee或其他中间功率无线电到达更远的网状设备364,例如在约50米 内。两种通信技术都可以在不同功率水平的单个无线电上发生,或者可以 在单独的收发器上发生,所述单独的收发器例如使用BLE的本地收发器和 使用ZigBee的单独的网状收发器。
可以包括无线网络收发器366以经由局域网或广域网协议与云300中 的设备或服务进行通信。无线网络收发器366可以是遵循IEEE 802.15.4或 IEEE 802.15.4g标准等的LPWA收发器。IoT设备350可以使用由Semtech 和LoRa联盟开发的LoRaWANTM(长距离广域网)在广域上通信。本文描 述的技术不限于这些技术,而是可以与实现长距离、低带宽通信的任何数 量的其他云收发器一起使用,例如Sigfox和其他技术。此外,可以使用IEEE802.15.4e规范中描述的其他通信技术,例如时隙信道跳变。
除了针对网状收发器362和无线网络收发器366所提到的系统之外, 还可以使用任何数量的其他无线电通信和协议,如本文所述。例如,无线 电收发器362和366可以包括LTE或其他蜂窝收发器,其使用扩频(SPA/ SAS)通信来实现高速通信。此外,可以使用任何数量的其他协议,例如用 于中速通信和对网络通信的供应的
Figure BDA0002172599750000111
网络。
无线电收发器362和366可以包括与任何数量的3GPP(第三代合作伙 伴计划)规范兼容的无线电,特别是长期演进(LTE)、先进长期演进(LTE-A) 和先进长期演进Pro(LTE-APro)。可以注意到,可以选择与任何数量的其 他固定、移动或卫星通信技术和标准兼容的无线电。这些可以包括例如任 何蜂窝广域无线电通信技术,其可以包括例如第五代(5G)通信系统、全 球移动通信系统(GSM)无线电通信技术、通用分组无线电服务(GPRS) 无线电通信技术、或GSM演进增强数据速率(EDGE)无线电通信技术、 UMTS(通用移动电信系统)通信技术。除了上面列出的标准之外,任何数 量的卫星上行链路技术也可以用于无线网络收发器366,包括例如符合ITU (国际电信联盟)或ETSI(欧洲电信标准协会)等发布的标准的无线电。 因此,本文提供的示例被理解为适用于现有的和尚未规划的各种其他通信 技术二者。
NIC 368可以体现为促进到云300或诸如网状设备364之类的其他设备 的通信的任何类型的固件、硬件、软件或其任何组合。例如,NIC 368可以 体现为一个或多个附加板、子卡(daughtercard)、网络接口卡、控制器芯片、 芯片组、或可以由IoT设备350用于与另一设备连接的其他设备。虽然未 示出,但应当领会,NIC 368通常包括一个或多个物理端口(例如,用于促 进网络流量的入和出)以及用于执行/卸载某些网络功能和/或处理功能的一 个或多个设备(例如,DMA引擎)。
在一些实施例中,NIC 368可以体现为包括一个或多个处理器的SoC 的部分,或者被包括在也包含一个或多个处理器的多芯片封装上。附加地 或替代地,在一些实施例中,NIC 368可以包括NIC 368本地的一个或多个 处理核心(未示出)。在这样的实施例中,处理核心可以是能够执行本文所 描述的功能中的一个或多个功能的。在一些实施例中,NIC368可以另外包 括本地存储器(未示出)。在这样的实施例中,NIC 368的本地存储器可以以板级、插口(socket)级、芯片级和/或其他级别集成到IoT设备350的一 个或多个组件中。
在一些实施例中,NIC 368可以促进有线通信实现连接,例如以太网连 接,而在其他实施例中,有线通信可以基于其他类型的数据传输实现网络, 例如控制器区域网络(CAN)、本地互连网络(LIN)、DeviceNet、ControlNet、 数据高速公路+、PROFIBUS或PROFINET等等。在其他实施例中,IoT设 备350可以包括一个或多个附加NIC 368,其可以被包括以允许连接到附加 和/或替代的网络。在说明性示例中,IoT设备350可以包括:一个NIC 368 以在以太网上提供到云的通信,以及另一个NIC 368以在另一类型的网络 上提供到其他设备的通信。
互连356可以将处理器352耦合到外部接口370,所述外部接口370 用于连接外部设备或子系统。外部设备可以包括传感器372,例如加速计、 水平传感器、流量传感器、光学光传感器、相机传感器、温度传感器、全 球定位系统(GPS)传感器、压力传感器、气压传感器等。外部接口370 还可以用于将IoT设备350连接到致动器(actuator)374,例如电源开关、阀门致动器、可听声音发生器、视觉警告设备等。
在一些可选示例中,各种输入/输出(I/O)设备可以存在于IoT设备350 内或连接到IoT设备350。例如,显示器或其他输出设备384可以被包括以 显示信息,例如传感器读数或致动器位置。可以包括输入设备386以接受 输入,所述输入设备例如触摸屏或小键盘(keypad)。输出设备384可以包 括任何数量的音频或视觉显示形式,包括简单的视觉输出,例如二进制状 态指示器(例如,LED)和多字符视觉输出,或者更复杂的输出,例如显 示屏(例如,LCD屏幕),其中,根据IoT设备350的操作来生成或产生字 符、图形、多媒体对象等的输出。
电池376可以为IoT设备350供电,但是在IoT设备350安装在固定 位置的示例中,它可以具有耦合到电网的电源。电池376可以是锂离子电 池、或金属-空气电池,例如锌-空气电池、铝-空气电池、锂-空气电池等。
电池监视器/充电器378可以被包括在IoT设备350中以跟踪电池376 的充电状态(SoCh)。电池监视器/充电器378可以用于监视电池376的其 他参数以提供故障预测,例如电池376的健康状态(SoH)和功能状态(SoF)。 电池监视器/充电器378可以包括电池监视集成电路,例如来自凌力尔特司 (Linear Technologies)的LTC4020或LTC2990、来自亚利桑那州凤凰城的 安森美半导体(ON Semiconductor)的ADT7488A、或来自德克萨斯州达拉 斯市的德州仪器的UCD90xxx系列的IC。电池监视器/充电器378可以在互 连356上将关于电池376的信息传送到处理器352。电池监视器/充电器378 还可以包括允许处理器352直接监视电池376的电压或来自电池376的电 流的模数(ADC)转换器。电池参数可以用于确定IoT设备350可以执行 的动作,例如传输频率、网状网络操作、感测频率等。
电源块380或耦合到电网的其他电源可以与电池监视器/充电器378耦 合以对电池376进行充电。在一些示例中,电源块380可以用无线电力接 收器替换,以例如通过IoT设备350中的环形天线无线地获得电力。无线 电池充电电路(例如,来自加利福尼亚州米尔皮塔斯市的凌力尔特公司的 LTC4020芯片等)可以被包括在电池监视器/充电器378中。所选择的特定 充电电路取决于电池376的尺寸,因此取决于所要求的电流。可以使用由Airfuel Alliance颁布的Airfuel标准、由无线充电联盟(Wireless Power Consortium)颁布的Qi无线充电标准或由无线电力联盟(Alliance for Wireless Power)颁布的Rezence充电标准来执行充电。
存储装置358可以包括采用软件、固件或硬件命令形式的指令382,以 实现本文描述的技术。虽然这些指令382被示出为被包括在存储器354和 存储装置358中的代码块,但是可以理解,代码块中的任何代码块可以用 (例如,内置在专用集成电路(ASIC)中的)硬连线电路代替。
在示例中,经由存储器354、存储装置358或处理器352提供的指令 382可以体现为非暂时性机器可读介质360,其包括用于引导处理器352在 IoT设备350中执行电子操作的代码。处理器352可以通过互连356访问非 暂时性机器可读介质360。说明性处理器352包括安全飞地支持392。安全 飞地支持392允许处理器352建立被称为安全飞地(参见例如安全飞地394) 的可信执行环境(TEE),其中,可以测量、验证和/或以其他方式确定执行 代码是可信的。另外,被包括在安全飞地中的代码和数据可以被加密或以 其他方式保护,以免被在安全飞地394外部执行的代码访问。例如,在被 执行的同时或者在被存储在处理器352的某些受保护的高速缓冲存储器(未 示出)中时,被包括在安全飞地中的代码和数据可以受到处理器352的硬 件保护机制的保护。被包括在安全飞地中的代码和数据可以在被存储在共 享高速缓存或系统存储器354中时被加密。安全飞地支持392可以体现为 一组处理器指令扩展,其允许处理器352在系统存储器354中建立一个或 多个安全飞地。例如,安全飞地支持392可以体现为
Figure BDA0002172599750000141
软件保护扩展 (SGX)技术。在一些实施例中,系统存储器354可以用于存储一个或多 个安全飞地的内容。当由系统存储器354存储时,可以加密安全飞地的内 容以防止未经授权的访问。
非暂时性机器可读介质360可以由针对图3的存储装置358描述的设 备来体现,或者可以包括特定的存储单元,例如光盘、闪存驱动器或任何 数量的其他硬件设备。另外,非暂时性机器可读介质360可以包括用于引 导处理器352执行特定动作序列或流的指令,例如如关于上面描绘的流程 图和操作和功能框图所描述的。在进一步的示例中,机器可读介质还包括 任何这样的有形介质:能够存储、编码或携带用于由机器执行的指令的,并 且使机器执行本公开内容的方法中的任何一种或多种方法的,或者能够存储、 编码或携带由这样的指令利用或与这样的指令相关联的数据结构。
因此,“机器可读介质”可以包括但不限于固态存储器、以及光学和磁 性介质。机器可读介质的具体示例包括非易失性存储器,包括但不限于例 如半导体存储器设备(例如,电可编程只读存储器(EPROM)、电可擦除 可编程只读存储器(EEPROM)和闪速存储器设备;磁盘,例内部硬盘和 可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM磁盘。由机器可读介质体现的指令还可以经由网络接口设备使用传输介质在通信网络上利用多种 传输协议中的任何一种(例如,HTTP)来发送或接收。
说明性IoT设备350另外包括安全引擎390,其可以体现为能够向IoT 设备350提供安全相关服务的任何硬件组件或电路。具体而言,安全引擎 390可以包括微处理器、微控制器、或其他能够从处理器352独立且安全地 执行固件和/或其他代码的嵌入式控制器。因此,安全引擎390可以用于建 立与由处理器352执行的代码分离的可信执行环境。安全引擎390可以在 专用总线(例如,主机嵌入式控制器接口(HECI))上与处理器352和/或 IoT设备350的其他组件通信。
安全引擎390还可以提供对IoT设备350的远程配置、控制或管理。 在说明性实施例中,安全引擎390体现为被包含在IoT设备350的SoC中 的融合安全性和可管理性引擎(CSME)。在一些实施例中,安全引擎390 可以被体现为可管理性引擎、带外处理器、可信平台模块(TPM)、或其他 安全引擎设备或设备集合。此外,在一些实施例中,安全引擎390还能够 使用互连356或独立于IoT设备350的状态(例如,独立于处理器352的 状态)的专用通信电路进行通信,这也称为“带外”通信。
现在参考图4,在使用中,IoT设备350在操作期间建立说明性环境400 以管理内部时间同步。为此,如下面将进一步详细描述的,IoT设备350被 配置为针对传输延迟自动确定和应用校正,而不对IoT设备350的任何对 应的I/O设备的布局、物理放置和/或定时施加限制。此外,如下面还将更 详细描述的,IoT设备350包括在IoT设备350的中央计时器与适用的I/O 设备之间的附加串行线,以用于执行传输延迟确定和校正。
应当理解,虽然存在若干当前的时间分配/同步协议(例如,网络时间 协议(NTP)、IEEE 1588精确时间协议(PTP)等),但是这样的协议意在 用于网络系统和计算节点之间的时间分配。然而,“最后一英寸(last inch)” 时间同步(即,计算节点内的NIC与其处理器/计算机之间的同步)呈现了 可能对时间同步抖动有显著贡献的问题。因此,计算节点102被配置为采 用本文描述的时间同步机制来解决这种端到端系统中的“最后一英寸”时 间同步问题,并且提供对端点时钟和计算时钟的严格控制。因此,这里描 述的操作可以用作对现有时间分配协议(例如,NTP和PTP)的扩展。如 前所述,本文描述的构思在时间敏感网络中具有特别的相关性,所述时间 敏感网络经常用于工业应用,其中,对端到端网络上的严格控制具有硬实 时要求。此外,应当领会,本文描述的构思还可以用于在现有的边带串行协议(如SPI和UART)上同步系统和节点,其中,时间戳分组可以分布在 现有的串行协议上。
说明性环境400包括网络流量入/出管理器406和传输延迟校正管理器 408。环境400的各种组件可以体现为硬件、固件、软件或其组合。如此, 在一些实施例中,环境400的组件中的一个或多个组件可以体现为电子设 备的电路或集合(例如,网络流量入/出管理电路406、传输延迟校正管理 电路408等)。
应当领会,本文描述为由网络流量入/出管理电路406和/或传输延迟校 正管理电路408执行的一个或多个功能可以至少部分地由IoT设备350的 一个或多个其他组件执行,所述其他组件例如处理器352、网状收发器362、 网络收发器366、NIC 368、ASIC、诸如FPGA之类的可编程电路和/或IoT 设备350的其他组件。还应当领会,相关联的指令可以被存储在存储器354、 存储装置358和/或其他数据存储位置中,其可以由处理器352和/或IoT设备350的其他计算处理器执行。
另外,在一些实施例中,说明性组件中的一个或多个说明性组件可以 形成另一组件的一部分,并且/或者说明性组件中的一个或多个说明性组件 可以彼此独立。此外,在一些实施例中,环境400的组件中的一个或多个 组件可以体现为虚拟化硬件组件或模拟架构,其可以由处理器352、网状收 发器362、网络收发器366、NIC 368和/或IoT设备350的其他软件/硬件组 件建立和维护。应当领会,IoT设备350可以包括计算设备中常见的其他组件、子组件、模块、子模块、逻辑、子逻辑和/或设备(例如,设备驱动程 序、接口等),为描述清楚起见在图4中未示出这些组件。
在说明性环境400中,IoT设备350另外包括时间戳数据402和传输延 迟数据404,其中的每一个都可以由IoT设备350的各种组件和/或子组件 访问。此外,时间戳数据402和传输延迟数据404中的每一个都可以由IoT 设备350的各种组件访问。另外,应当领会,在一些实施例中,被存储在 遥测数据时间戳数据和传输延迟数据404中的每一个中或以其他方式由遥 测数据时间戳数据和传输延迟数据404中的每一个表示的数据402可以不 相对于彼此相互排斥。例如,在一些实施方式中,被存储在遥测数据时间 戳数据402中的数据也可以被存储为传输延迟数据404中的一个或多个的 一部分,反之亦然,或者以另一替代布置存储。如此,虽然由IoT设备350 利用的各种数据在本文中被描述为特定的离散数据,但是在其他实施例中, 这样的数据可以被组合、聚合和/或以其他方式形成单个或多个数据集(包 括重复的副本)的部分。
如上所述,可以体现为硬件、固件、软件、虚拟化硬件、仿真架构和/ 或其组合的网络流量入/出管理器406被配置为接收入站和路由/传输出站网 络流量。为此,网络流量入/出管理器406被配置为促进去往和来自IoT设 备350的入站/出站网络通信(例如,网络流量、网络分组、网络流等)。例 如,网络流量入/出管理器406被配置为管理(例如,创建、修改、删除等) 到IoT设备350的物理和虚拟网络端口(即,虚拟网络接口)的连接,以 及与之相关联的入/出缓冲器/队列。
如上所述,可以体现为硬件、固件、软件、虚拟化硬件、仿真架构和/ 或其组合的传输延迟校正管理器408被配置为确定接收的通信的传输延迟 以及基于其的接收的通信的正确时间戳。为了根据所确定的传输延迟来确 定接收的通信的传输延迟和正确时间戳,说明性传输延迟校正管理器408 包括定时同步管理器410和传输延迟确定器412。
定时同步管理器410被配置为确定本地中央计时器和IoT设备350的 I/O组件(例如,NIC 368)的系统计时器之间的传输延迟。为此,定时同 步管理器410被配置为执行时间同步操作,所述时间同步操作可以在例如 中央计时器和I/O设备之间的握手期间执行。在其中中央计时器(例如,IoT 设备350的中央计时单元的始终运行的计时器(ART))向I/O设备发送同 步消息的说明性示例中,定时同步管理器410被配置为从中央计时器接收 I/O设备(例如,NIC 368)处的同步消息。应当领会,在由中央计时器发 送同步消息和由I/O设备接收同步消息之间已经经过可观的时间,本文中称 之为路径延迟。
在一些实施例中,中央计时器与I/O设备之间的消息可以具有17字节 或25字节的长度(这取决于消息的类型),并且被格式化为包括同步字段、 类型字段、设备标识符(ID)字段、数据低字段和数据高字段。例如,同 步字段的长度可以是65比特,类型字段的长度可以是2比特,设备ID字 段的长度可以是5比特,并且数据低字段和数据高字段中的每一个的长度 可以是64比特,以在每个字段中包括时间戳。类型字段可以用于标识消息 的类型,例如正常广播消息(例如,其可以被表示为‘00’)、同步消息(例 如,其可以被表示为‘01’)、同步响应消息(例如,其可以被表示为‘10’) 或响应确认消息(例如,其可以被表示为‘11’)。应当领会,通常只有中 央计时器可以发起正常的广播消息。
在由I/O设备接收到同步消息时(例如,如由提供这种指示的类型字段 确定的),定时同步管理器410可以被配置为存储同步消息到达I/O设备的 时间。此外,定时同步管理器410被配置为对所接收的同步消息进行解码 和响应。为此,定时同步管理器410被配置为生成同步响应消息,其中, 数据低字段的数据被用等于时刻‘t1’的时间戳替换,所述时刻‘t1’表示 本地未校正时间,并且与I/O设备相关联的设备ID被放置在同步响应消息 的设备ID字段中。定时同步管理器410被附加地配置为本地存储该值(例 如,在时间戳数据402中)以供稍后使用。
如下面将更详细描述的(参见例如图7和图8),同步响应消息跨“从 (slave)”或辅助数据信号线(参见例如图7的sdata信号线712和图8的 sdata信号线806)被发送。定时同步管理器410还被配置为从中央计时器 接收响应确认消息,其中,数据低字段包括与中央计时器从I/O设备接收到 同步响应消息的时刻相对应的时间戳,本文称之为时刻‘t2’,并且数据低 字段包括与中央计时器将响应确认消息发送到I/O设备的时刻相对应的另 一时间戳,本文称之为时刻‘t3’,每个时间戳都由定时同步管理器410存 储(例如,在时间戳数据402中)。在接收到响应确认消息时,定时同步管 理器410被附加地配置为获取并存储(例如,在时间戳数据402中)接收 响应确认消息的时刻,本文称之为时刻‘t4’,其再次代表本地的未校正的 时间。应当领会,本文描述的时间戳(例如,本文中称之为‘t1’、‘t2’、‘t3’和‘t4’)应当在相应组件的入端口或出端口尽可能接近边缘处被捕获。
传输延迟确定器412被配置为确定表示传输延迟的值(即,传输延迟 值),存储传输延迟值(例如,在传输延迟数据404中),并且将所确定的 传输延迟值用于定时校正。为此,传输延迟确定器412被配置为将发送路 径延迟值确定为时刻‘t2’(即,中央计时器从I/O设备接收到同步响应消 息的时刻)与时刻‘t1’(即,由I/O设备发送同步消息的时刻)之间的差。 另外,传输延迟确定器412被配置为将响应路径延迟值确定为时刻‘t4’(即, 在I/O设备处接收到响应确认消息的时刻)与时刻‘t3’(即,中央计时器 将响应确认消息发送到I/O设备的时刻)之间的差。此外,传输延迟确定器 412被配置为将传输延迟值确定为发送路径延迟值和响应路径延迟值的平 均值。传输延迟确定器412被附加地配置为存储传输延迟值(例如,在传 输延迟数据404中),以使得传输延迟值可以通过以下方式来用于时间校正 过程中:从与随后由中央计时器广播并由I/O设备接收的通信消息相关联的 时间戳值中减去传输延迟值。
现在参考图5,示出了用于确定输入以计算可用于管理内部时间同步的 传输延迟值的方法500,其可以由IoT设备(例如,IoT设备350)执行。 方法500开始于框502中,其中,IoT设备350(或者更具体而言,IoT设 备的I/O设备)确定是否已经从IoT设备350的本地中央计时器接收到同步 消息。例如,中央计时器可以在以下情况下发送同步消息:已经检测到特 定事件时,例如在IoT设备350的启动期间(例如,在基本输入/输出系统 (BIOS)中);在检测到内容丢失时;和/或一些其他触发事件。如果已经 由I/O设备接收到同步消息,则方法500前进到框504,其中,I/O设备从 所接收的同步消息中识别指示同步消息由中央计时器发送的时刻的时间戳 (即,同步消息发送时间戳)和I/O设备ID。如前所述,可以从所接收的 同步消息的设备ID字段中取回I/O设备ID,并且可以从所接收的同步消息 的数据高字段中取回同步消息发送时间戳。
在框506中,I/O设备将所接收的同步消息的I/O设备ID与I/O设备的 被指定的设备ID进行比较,以确定所接收的同步消息是否是针对该I/O设 备确定的。如果否,则方法500返回到框502,直到下一同步消息已被接收。 否则,方法500前进到框508,其中,I/O设备可以保存来自所接收的时间 同步消息的发送时间戳(例如,作为另一路径延迟参考计算度量,连同由 I/O设备接收同步消息的时刻)。在框510中,I/O设备将同步响应消息发送 到已经从其接收到包括I/O设备ID的同步消息的中央计时器。在框512中, I/O设备存储所发送的同步响应消息的发送时刻。在框514中,I/O设备响 应于在中央计时器处已经接收到同步响应消息,确定是否已经从中央计时 器接收到响应确认消息。如果是,则方法500前进到框516,其中,I/O设 备存储接收到响应确认的时刻。
在框518中,I/O设备识别并存储被存储在所接收的响应确认消息的相 应字段中的时间戳。例如,在框520中,I/O设备从所接收的响应确认消息 (例如,来自数据低字段)中识别时间戳(所述时间戳与由中央计时器接 收到同步响应消息的时刻相对应),并且存储同步响应消息接收时间戳。在 框522中,I/O设备从所接收的响应确认消息(例如,来自数据高字段)中 识别时间戳(所述时间戳与由中央计时器发送响应确认消息的时刻相对应),并且存储响应确认消息发送时间戳。在框524中,I/O设备根据存储的时间 戳来确定传输延迟(参见例如图6的方法600),并且存储所确定的传输延 迟。在一些实施例中,时间戳可以被存储在I/O设备的相应寄存器(例如, 存储器映射的I/O寄存器)中,以使得软件可以读取所存储的时间戳并计算 传输延迟。
现在参考图6,示出了用于计算传输延迟的方法600,其可以由IoT设 备(例如,IoT设备350)执行。方法600开始于框602中,其中,IoT设 备350(或者更具体而言,IoT设备的I/O设备)确定是否计算传输延迟。 如果是,则方法600前进到框604,其中,I/O设备取回传输延迟时间戳(例 如,从I/O设备的相应寄存器)。在框606中,I/O设备取回与从I/O设备发 送同步响应消息到本地中央计时器的时刻相对应的同步响应消息的发送时 刻。在框608中,I/O设备取回与由中央计时器从I/O设备接收到同步响应 消息的时刻相对应的同步响应消息的接收时刻。在框610中,I/O设备取回 与由中央计时器发送响应确认消息到I/O设备的时刻相对应的响应确认消 息的发送时刻。在框612中,I/O设备取回与由I/O设备从中央计时器接收 到响应确认消息的时刻相对应的响应确认消息的接收时刻。
在框614中,I/O设备将发送路径延迟确定为所取回的同步响应消息接 收时刻与所取回的同步响应消息发送时刻之间的差。在框616中,I/O设备 将接收路径延迟确定为所取回的响应确认消息接收时刻与所取回的响应确 认消息发送时刻之间的差。在框618中,I/O设备将传输延迟确定为所确定 的发送路径延迟和接收路径延迟的平均值。在框620中,I/O设备存储所确 定的传输延迟(例如,在由I/O设备管理的寄存器中)。因此,I/O设备可以使用传输延迟来校正与从中央计时器接收的消息相关联的时间戳。
应当领会,在一些实施例中,可以要求执行一个或多个附加时间戳校 正操作。例如,基于网络的时钟可以与处理器时钟不同。在这样的实施例 中,I/O设备还可以被配置为确定基于网络的时钟时间和处理器时钟时间之 间的相关性,以使得可以执行时间戳的适当进一步调整。在另一示例中,I/O 设备可以被附加地配置为确定可用于进一步校正从中央计时器接收的时间 戳的偏移延迟校正。
现在参考图7和8,示出了用于管理内部时间同步的IoT设备(例如, IoT设备350)的I/O设备的说明性实施例。在图7中,中央计时装置 (timekeeper)702被示出为通信地耦合到中央时钟单元706(例如,经由 时间信号线710)和NIC 368(例如,经由被标示为sdata线712的从线以 及被标示为mdata线714的“串行主”数据线、或主数据线)。此外,中央 时钟单元706还通信地耦合到NIC 368。说明性中央计时装置702包括ART 704,以用于在mdata线714上的串行传输中将时间戳传输到本地I/O设备 (例如,NIC 368)。说明性地示出为NIC368的本地I/O设备可以具有在与 中央计时装置702的ART 704相同的时钟(例如,中央时钟单元706)上 运行的复制计时器(例如,本地ART 708)。基于分组化的时间戳,I/O设 备的本地时间被同步到中央计时器。然而,如本文所述,I/O设备(或更具 体而言,I/O设备的本地ART 708)可以周期性地校正本地时间(参见例如 图6的方法600)。
在说明性示例中,当已经由I/O设备接收到串行分组时,I/O设备被配 置为检测同步模式并将串行数据流转换为并行时间戳值。另外,本地ART 708被配置为连续递增时间戳,仅在接收到新的串行同步分组时进行调整 (例如,如图5的方法500中所述),从而保持通常准确的同步。应当领会, 中央时钟单元706被配置为周期性地广播时间戳(例如,经由时间信号线710)以保持I/O设备的本地ART 708被锁定到中央时钟单元706的时间。 如此,可以使用所确定的传输延迟来实现紧密同步,从而减少时钟(例如, 中央时钟单元706、ART704和本地ART 708)之间的抖动。例如,在工业 应用中,应当领会,不仅抖动需要被减少,而且计时器之间的偏移需要被 校正,如本文所述。
现在参考图8,中央计时装置702被说明性地示出为通信地耦合到被标 示为I/O设备802的第一I/O设备以及被标示为I/O设备(2)804的第二I/O 设备。如说明性地示出的,每个I/O设备802、804都被配置为经由被标示 为sdata信号线806的从数据线将消息传输到中央计时装置702。另外,中 央计时装置702被配置为经由被标示为mdata信号线808的主数据线将消 息传输到I/O设备。应当领会,在复杂的大型SoC设计中,I/O设备(例如, I/O设备802、804)通常远离中央计时装置702并且因此具有大的发送/接 收路径延迟。应进一步领会,需要针对事件的准确定时来校正这些发送/接 收路径延迟。虽然发送/接收路径延迟根据工艺、电压、温度和其他条件而 变化,但它们几乎是静态的。因此,可以向其添加确定性偏移值以准确地 获得当前时间。
通常,将偏移值加载到I/O设备的本地计时器中。然而,由于路径延迟 由于工艺、电压、温度和其他条件而变化,并且还因管芯而异,并且可能 跨置于不同距离处的不同I/O设备而不同,因此进行手动校正通常不准确、 不及时、或根本不方便。因此,如本文所述的基于分组的消息传送可以自 动校正这些偏移。如前所述,当I/O设备启动并且传输路径延迟值被加载到 I/O设备的定时偏移寄存器中时,可以在启动时间期间计算偏移或传输路径延迟。为了促进这些消息,将sdata信号线806添加到I/O设备805、804 与中央计时装置702之间的当前技术。另外,在启动期间,中央计时装置 可以发起同步消息协议,如本文所述。
图9示出了与多个物联网(IoT)设备(例如,多个IoT设备350)通 信的云计算网络或云900的图。云900可以表示互联网,或者可以是LAN 或WAN,例如公司的私有网络。IoT设备可以包括以各种组合分组的任何 数量的不同类型的设备。例如,交通控制组906可以包括沿着城市中的街 道的IoT设备。这些IoT设备可以包括红绿灯、交通流量监视器、相机、天气传感器等。交通控制组906或其他子组可以通过有线或无线链路908(例 如,LPWA链路、光链路等)与云900通信。此外,有线或无线子网络912 可以允许IoT设备彼此通信,例如通过局域网、无线局域网等。IoT设备可 以使用诸如网关910或928之类的另一设备来与诸如云900之类的远程位 置进行通信;IoT设备还可以使用一个或多个服务器930来促进与云900或 与网关910的通信。例如,一个或多个服务器930可以充当中间网络节点 操作以支持局域网当中的本地边缘云或雾实施方式。此外,所描绘的网关 928可以在云到网关到多边缘设备配置下操作,例如其中,各种IoT设备 914、920、924对于指派和使用云900的资源是被约束的或动态的。
IoT设备的其他示例性组可以包括远程气象站914、本地信息终端916、 警报系统918、自动柜员机920、警报面板922或移动车辆,例如紧急车辆 924或其他车辆926。这些IoT设备中的每个IoT设备都可以与其他IoT设 备通信、与服务器904通信、与另一IoT雾设备或系统(未示出,但描绘 于图2和图3中)通信、或其组合。IoT设备组可以部署在各种住宅、商业 和工业环境(包括私人和公共环境)中。
从图9中可以看出,大量IoT设备可以通过云900进行通信。这可以 允许不同的IoT设备自主地向其他设备请求或提供信息。例如,一组IoT 设备(例如,交通控制组906)可以从一组远程气象站914请求当前的天气 预报,所述组远程气象站914可以在没有人为干预的情况下提供预报。此 外,可以由自动柜员机920就盗窃正在进行中向紧急车辆924发出警报。 当紧急车辆924朝向自动柜员机920行进时,它可以访问交通控制组906 以请求到该位置的特许(clearance),例如通过灯变红以在交叉路口以足够 的时间阻止交叉的交通以供紧急车辆924无阻碍地进入交叉路口。
诸如远程气象站914或交通控制组906之类的IoT设备的集群可以被 配备为与其他IoT设备以及与云900通信。这可以允许IoT设备形成设备之 间的自组织网络,以允许它们充当单个设备,其可以被称为雾设备或雾系 统(例如,如以上参考图2所述)。应当理解,本说明书中描述的功能单元 或能力可能已被引用或标记为组件或模块,以便更具体地强调它们的实现 独立性。这些组件可以由任何数量的软件或硬件形式体现。
例如,组件或模块可以实现为包括以下各项的硬件电路:定制的超大 规模集成(VLSI)电路或门阵列、现成半导体,例如逻辑芯片、晶体管、 或其他分立组件。组件或模块还可以在可编程硬件设备中实现,例如现场 可编程门阵列、可编程阵列逻辑、可编程逻辑设备等。组件或模块也可以 以软件实现,以供各种类型的处理器执行。所标识的可执行代码的组件或 模块可以例如包括计算机指令的一个或多个物理或逻辑块,其可以例如被 组织为对象、过程或函数。然而,所识别的组件或模块的可执行文件不需 要物理地位于一起,而是可以包括存储在不同位置的不同指令,所述不同 指令当被逻辑地连接在一起时,包括组件或模块并且针对组件或模块实现 所述目的。
实际上,可执行代码的组件或模块可以是单个指令或许多指令,并且 甚至可以分布在若干不同的代码段上、分布在不同的程序当中、分布在若 干存储器设备或处理系统当中。具体而言,所描述的过程的一些方面(例 如,代码重写和代码分析)可以在不同的处理系统(例如,在数据中心中 的计算机中)上发生,而不是在代码部署于其中的处理系统(例如,在嵌 入传感器或机器人中的计算机中)上发生。类似地,操作数据可以在本文 中在组件或模块内被标识和示出,并且可以以任何合适的形式体现并且被 组织在任何合适类型的数据结构内。操作数据可以作为单个数据集被收集, 或者可以分布在包括不同存储设备的不同位置上,并且可以至少部分地仅 作为系统或网络上的电子信号存在。组件或模块可以是无源的或有源的, 包括可操作以执行期望的功能的代理。
应当领会,虽然本文描述的功能已经涉及IoT设备实施例(例如,IoT 设备350),但是这些功能可以通过其他应用中的附加和/或替代实施例来执 行。例如,在其他实施例中,可以在本地中央计时器与I/O设备之间执行功 能,其中,IoT设备可以替代地被体现为能够执行本文描述的功能的任何类 型的计算或计算机设备,包括但不限于计算机、服务器(例如,独立、机 架安装、刀片等)、托架(sled)(例如,计算托架、加速器托架、存储托架、 存储器托架等)、增强型或智能NIC/HFI、网络设备(例如,物理或虚拟)、 路由器、交换机(例如,解聚的交换机、机架式交换机、独立交换机、完 全管理型交换机、部分管理型交换机、全双工交换机和/或半双工通信模式 启用交换机)、web设备、分布式计算系统、基于处理器的系统和/或多处理 器系统。
示例
以下提供本文公开的技术的说明性示例。这些技术的实施例可以包括 下面描述的示例中的任何一个或多个、以及任何组合。
示例1包括一种用于管理内部时间同步的物联网(IoT)设备,所述IoT 设备包括:一个或多个I/O设备;中央计时器;以及传输延迟校正管理电路, 其用于:根据发送路径延迟和接收路径延迟来确定传输延迟值,所述发送 路径延迟与从所述一个或多个I/O设备中的I/O设备发送到所述IoT设备的 所述中央计时器的第一消息相对应,所述接收路径延迟与从所述中央计时 器发送到所述I/O设备的第二消息相对应;并且响应于已经从所述中央计时 器接收到广播消息并且在已经确定所述传输延迟值之后,根据所述传输延 迟值来更新所接收的广播消息的时间戳值。
示例2包括示例1的主题,并且其中,确定所述传输延迟值包括:确 定所述发送路径延迟与接收路径延迟之间的平均值。
示例3包括示例1和2中任一项的主题,并且其中,所述第一消息是 经由第一导线发送的,并且所述第二消息是经由第二导线发送的,并且其 中,所述第一导线和所述第二导线是不同的导线。
示例4包括示例1-3中任一项的主题,并且其中,所述I/O设备用于: 从所述中央计时器接收同步消息;响应于已经接收到所述同步消息,向所 述中央计时器发送同步响应消息;存储第一时刻,所述第一时刻与由所述 I/O设备发送所述同步响应消息的时刻相对应;在已经发送所述同步响应消 息之后,接收响应确认消息,其中,所述响应确认消息包括第二时刻和第 三时刻,所述第二时刻与由所述中央计时器接收到所述同步响应消息的时 刻相对应,所述第三时刻与由所述中央计时器发送所述响应确认消息的时 刻相对应;存储所述第二时刻和所述第三时刻;并且存储第四时刻,所述 第四时刻与由所述I/O设备接收到所述响应确认消息的时刻相对应。
示例5包括示例1-4中任一项的主题,并且其中,确定所述传输延迟值 包括:确定所述第二时刻与所述第一时刻之间的差。
示例6包括示例1-5中任一项的主题,并且其中,确定所述接收延迟值 包括:确定所述第四时刻与所述第三时刻之间的差。
示例7包括示例1-6中任一项的主题,并且其中,存储所述第一时刻、 所述第二时刻、所述第三时刻以及所述第四时刻包括:将所述第一时刻、 所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所述IoT 设备的不同寄存器中。
示例8包括示例1-7中任一项的主题,并且其中,校正所述时间戳值包 括:从所述时间戳值中减去所述传输延迟值。
示例9包括一种或多种机器可读存储介质,包括存储在其上的多个指 令,所述多个指令响应于被执行而使物联网(IoT)设备执行以下操作:根 据发送路径延迟和接收路径延迟来确定传输延迟值,所述发送路径延迟与 从所述IoT设备的I/O设备发送到所述IoT设备的中央计时器的第一消息相 对应,所述接收路径延迟与从所述中央计时器发送到所述I/O设备的第二消 息相对应;并且响应于已经从所述中央计时器接收到广播消息并且在已经 确定所述传输延迟值之后,根据所述传输延迟值来更新所接收的广播消息 的时间戳值。
示例10包括示例9的主题,并且其中,确定所述传输延迟值包括:确 定所述发送路径延迟与接收路径延迟之间的平均值。
示例11包括示例9和10中任一项的主题,并且其中,所述第一消息 是经由第一导线发送的,并且所述第二消息是经由第二导线发送的,并且 其中,所述第一导线和所述第二导线是不同的导线。
示例12包括示例9-11中任一项的主题,并且其中,所述多个指令还使 所述I/O设备执行以下操作:从所述中央计时器接收同步消息;响应于已经 接收到所述同步消息,向所述中央计时器发送同步响应消息;存储第一时 刻,所述第一时刻与由所述I/O设备发送所述同步响应消息的时刻相对应; 在已经发送所述同步响应消息之后,接收响应确认消息,其中,所述响应 确认消息包括第二时刻和第三时刻,所述第二时刻与由所述中央计时器接 收到所述同步响应消息的时刻相对应,所述第三时刻与由所述中央计时器 发送所述响应确认消息的时刻相对应;存储所述第二时刻和所述第三时刻; 并且存储第四时刻,所述第四时刻与由所述I/O设备接收到所述响应确认消 息的时刻相对应。
示例13包括示例9-12中任一项的主题,并且其中,确定所述传输延迟 值包括:确定所述第二时刻与所述第一时刻之间的差。
示例14包括示例9-13中任一项的主题,并且其中,确定所述接收延迟 值包括:确定所述第四时刻与所述第三时刻之间的差。
示例15包括示例9-14中任一项的主题,并且其中,存储所述第一时刻、 所述第二时刻、所述第三时刻以及所述第四时刻包括:将所述第一时刻、 所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所述IoT 设备的不同寄存器中。
示例16包括示例9-15中任一项的主题,并且其中,校正所述时间戳值 包括:从所述时间戳值中减去所述传输延迟值。
示例17包括一种用于管理内部时间同步的方法,所述方法包括:通过 物联网(IoT)设备,根据发送路径延迟和接收路径延迟来确定传输延迟值, 所述发送路径延迟与从所述IoT设备的I/O设备发送到所述IoT设备的中央 计时器的第一消息相对应,所述接收路径延迟与从所述中央计时器发送到 所述I/O设备的第二消息相对应;以及通过所述IoT设备并且响应于已经从 所述中央计时器接收到广播消息并且在已经确定所述传输延迟值之后,根 据所述传输延迟值来更新所接收的广播消息的时间戳值。
示例18包括示例17的主题,并且其中,确定所述传输延迟值包括: 确定所述发送路径延迟与接收路径延迟之间的平均值。
示例19包括示例17和18中任一项的主题,并且发送所述第一消息是 经由第一导线的,并且发送所述第二消息是经由第二导线的,其中,所述 第一导线和所述第二导线是不同的导线。
示例20包括示例17-19中任一项的主题,并且还包括:通过所述I/O 设备,从所述中央计时器接收同步消息;通过所述I/O设备并且响应于已经 接收到所述同步消息,向所述中央计时器发送同步响应消息;通过所述I/O 设备,存储第一时刻,所述第一时刻与由所述I/O设备发送所述同步响应消 息的时刻相对应;通过所述I/O设备并且在已经发送所述同步响应消息之后, 接收响应确认消息,其中,所述响应确认消息包括第二时刻和第三时刻, 所述第二时刻与由所述中央计时器接收到所述同步响应消息的时刻相对应, 所述第三时刻与由所述中央计时器发送所述响应确认消息的时刻相对应; 通过所述I/O设备,存储所述第二时刻和所述第三时刻;以及通过所述I/O 设备,存储第四时刻,所述第四时刻与由所述I/O设备接收到所述响应确认 消息的时刻相对应。
示例21包括示例17-20中任一项的主题,并且其中,确定所述传输延 迟值包括:确定所述第二时刻与所述第一时刻之间的差。
示例22包括示例17-21中任一项的主题,并且其中,确定所述接收延 迟值包括:确定所述第四时刻与所述第三时刻之间的差。
示例23包括示例17-22中任一项的主题,并且其中,存储所述第一时 刻、所述第二时刻、所述第三时刻以及所述第四时刻包括:将所述第一时 刻、所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所 述IoT设备的不同寄存器中。
示例24包括示例17-23中任一项的主题,并且其中,校正所述时间戳 值包括:从所述时间戳值中减去所述传输延迟值。

Claims (24)

1.一种用于管理内部时间同步的物联网(IoT)设备,所述IoT设备包括:
一个或多个I/O设备;
中央计时器;以及
传输延迟校正管理电路,其用于:
根据发送路径延迟和接收路径延迟来确定传输延迟值,所述发送路径延迟与从所述一个或多个I/O设备中的I/O设备发送到所述IoT设备的所述中央计时器的第一消息相对应,而所述接收路径延迟与从所述中央计时器发送到所述I/O设备的第二消息相对应;并且
响应于已经从所述中央计时器接收到广播消息并且在已经确定所述传输延迟值之后,根据所述传输延迟值来更新所接收的广播消息的时间戳值。
2.如权利要求1所述的IoT设备,其中,确定所述传输延迟值包括:确定所述发送路径延迟与接收路径延迟之间的平均值。
3.如权利要求1所述的IoT设备,其中,所述第一消息是经由第一导线发送的,并且所述第二消息是经由第二导线发送的,并且其中,所述第一导线和所述第二导线是不同的导线。
4.如权利要求1所述的IoT设备,其中,所述I/O设备用于:
从所述中央计时器接收同步消息;
响应于已经接收到所述同步消息,向所述中央计时器发送同步响应消息;
存储第一时刻,所述第一时刻与由所述I/O设备发送所述同步响应消息的时刻相对应;
在已经发送所述同步响应消息之后,接收响应确认消息,其中,所述响应确认消息包括第二时刻和第三时刻,所述第二时刻与由所述中央计时器接收到所述同步响应消息的时刻相对应,而所述第三时刻与由所述中央计时器发送所述响应确认消息的时刻相对应;
存储所述第二时刻和所述第三时刻;并且
存储第四时刻,所述第四时刻与由所述I/O设备接收到所述响应确认消息的时刻相对应。
5.如权利要求4所述的IoT设备,其中,确定所述传输延迟值包括:确定所述第二时刻与所述第一时刻之间的差。
6.如权利要求4所述的IoT设备,其中,确定所述接收延迟值包括:确定所述第四时刻与所述第三时刻之间的差。
7.如权利要求4所述的IoT设备,其中,存储所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻包括:将所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所述IoT设备的不同寄存器中。
8.如权利要求1所述的IoT设备,其中,校正所述时间戳值包括:从所述时间戳值中减去所述传输延迟值。
9.一种用于管理内部时间同步的方法,所述方法包括:
通过物联网(IoT)设备,根据发送路径延迟和接收路径延迟来确定传输延迟值,所述发送路径延迟与从所述IoT设备的I/O设备发送到所述IoT设备的中央计时器的第一消息相对应,而所述接收路径延迟与从所述中央计时器发送到所述I/O设备的第二消息相对应;以及
通过所述IoT设备并且响应于已经从所述中央计时器接收到广播消息并且在已经确定所述传输延迟值之后,根据所述传输延迟值来更新所接收的广播消息的时间戳值。
10.如权利要求9所述的方法,其中,确定所述传输延迟值包括:确定所述发送路径延迟与接收路径延迟之间的平均值。
11.如权利要求9所述的方法,发送所述第一消息是经由第一导线的,并且发送所述第二消息是经由第二导线的,其中,所述第一导线和所述第二导线是不同的导线。
12.如权利要求9所述的方法,还包括:
通过所述I/O设备,从所述中央计时器接收同步消息;
通过所述I/O设备并且响应于已经接收到所述同步消息,向所述中央计时器发送同步响应消息;
通过所述I/O设备,存储第一时刻,所述第一时刻与由所述I/O设备发送所述同步响应消息的时刻相对应;
通过所述I/O设备并且在已经发送所述同步响应消息之后,接收响应确认消息,其中,所述响应确认消息包括第二时刻和第三时刻,所述第二时刻与由所述中央计时器接收到所述同步响应消息的时刻相对应,而所述第三时刻与由所述中央计时器发送所述响应确认消息的时刻相对应;
通过所述I/O设备,存储所述第二时刻和所述第三时刻;以及
通过所述I/O设备,存储第四时刻,所述第四时刻与由所述I/O设备接收到所述响应确认消息的时刻相对应。
13.如权利要求12所述的方法,其中,确定所述传输延迟值包括:确定所述第二时刻与所述第一时刻之间的差。
14.如权利要求12所述的方法,其中,确定所述接收延迟值包括:确定所述第四时刻与所述第三时刻之间的差。
15.如权利要求12所述的方法,其中,存储所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻包括:将所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所述IoT设备的不同寄存器中。
16.如权利要求9所述的方法,其中,校正所述时间戳值包括:从所述时间戳值中减去所述传输延迟值。
17.一种用于管理内部时间同步的物联网(IoT)设备,所述IoT设备包括:
用于根据发送路径延迟和接收路径延迟来确定传输延迟值的单元,所述发送路径延迟与从所述IoT设备的I/O设备发送到所述IoT设备的中央计时器的第一消息相对应,而所述接收路径延迟与从所述中央计时器发送到所述I/O设备的第二消息相对应;以及
用于响应于已经从所述中央计时器接收到广播消息并且在已经确定所述传输延迟值之后根据所述传输延迟值来更新所接收的广播消息的时间戳值的单元。
18.如权利要求17所述的IoT设备,其中,用于确定所述传输延迟值的单元包括用于确定所述发送路径延迟与接收路径延迟之间的平均值的单元。
19.如权利要求17所述的IoT设备,其中,用于发送所述第一消息的单元包括用于经由第一导线发送所述第一消息的单元,并且用于发送所述第二消息的单元包括用于经由所述第二导线发送所述第二消息的单元,其中,所述第一导线和所述第二导线是不同的导线。
20.如权利要求17所述的IoT设备,还包括:
用于从所述中央计时器接收同步消息的单元;
用于响应于已经接收到所述同步消息而向所述中央计时器发送同步响应消息的单元;
用于存储第一时刻的单元,所述第一时刻与由所述I/O设备发送所述同步响应消息的时刻相对应;
用于在已经发送所述同步响应消息之后接收响应确认消息的单元,其中,所述响应确认消息包括第二时刻和第三时刻,所述第二时刻与由所述中央计时器接收到所述同步响应消息的时刻相对应,而所述第三时刻与由所述中央计时器发送所述响应确认消息的时刻相对应;
用于存储所述第二时刻和所述第三时刻的单元;以及
用于存储第四时刻的单元,所述第四时刻与由所述I/O设备接收到所述响应确认消息的时刻相对应。
21.如权利要求20所述的IoT设备,其中,用于确定所述传输延迟值的单元包括用于确定所述第二时刻与所述第一时刻之间的差的单元。
22.如权利要求20所述的IoT设备,其中,用于确定所述接收延迟值的单元包括用于确定所述第四时刻与所述第三时刻之间的差的单元。
23.如权利要求20所述的IoT设备,其中,用于存储所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻的单元包括用于将所述第一时刻、所述第二时刻、所述第三时刻以及所述第四时刻中的每一个存储在所述IoT设备的不同寄存器中的单元。
24.如权利要求17所述的IoT设备,其中,用于校正时间戳值的单元包括用于从所述时间戳值中减去所述传输延迟值的单元。
CN201910767978.3A 2018-09-28 2019-08-20 用于管理内部时间同步的技术 Pending CN110971329A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/145,320 US11057857B2 (en) 2018-09-28 2018-09-28 Technologies for managing internal time synchronization
US16/145,320 2018-09-28

Publications (1)

Publication Number Publication Date
CN110971329A true CN110971329A (zh) 2020-04-07

Family

ID=65231288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910767978.3A Pending CN110971329A (zh) 2018-09-28 2019-08-20 用于管理内部时间同步的技术

Country Status (2)

Country Link
US (3) US11057857B2 (zh)
CN (1) CN110971329A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114430308A (zh) * 2021-12-09 2022-05-03 西安昆仑工业(集团)有限责任公司 一种软件定时发送时间漂移导致时序偶发错位纠错方法
WO2022100110A1 (zh) * 2020-11-16 2022-05-19 华为技术有限公司 网络同步的方法、装置、设备、系统及可读存储介质
CN115793749A (zh) * 2022-12-05 2023-03-14 河北泽润信息科技有限公司 一种基于云计算的智能温室环境控制系统及方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10567349B2 (en) 2013-06-25 2020-02-18 Wickr Inc. Secure time-to-live
US11057857B2 (en) 2018-09-28 2021-07-06 Intel Corporation Technologies for managing internal time synchronization
US10743269B2 (en) * 2018-11-26 2020-08-11 Nokia Solutions And Networks Oy Coordinated timing syncronization and time-aware shaping
US10965569B2 (en) * 2018-11-30 2021-03-30 Sap Se IoT monitoring
US11693448B2 (en) * 2019-03-05 2023-07-04 Intel Corporation Timestamp alignment across multiple computing nodes
WO2020187422A1 (en) * 2019-03-21 2020-09-24 Huawei Technologies Co., Ltd. Network entities and methods for a wireless network system for determining time information
US11005783B2 (en) 2019-03-22 2021-05-11 Nokia Solutions And Networks Oy Notification of timing mismatches for queues in time sensitive networking
WO2021019701A1 (ja) * 2019-07-30 2021-02-04 株式会社Nttドコモ 端末及び通信ノード
CN112583510A (zh) * 2019-09-30 2021-03-30 华为技术有限公司 一种报文转发方法、设备及系统
US11464072B2 (en) * 2019-11-14 2022-10-04 Carrier Corporation Synchronized mesh audio communications
US11360143B2 (en) * 2020-10-29 2022-06-14 Stmicroelectronics International N.V. High speed debug-delay compensation in external tool
US20220006607A1 (en) * 2020-12-26 2022-01-06 Intel Corporation Timestamp alignment for multiple nodes
DE102021000557A1 (de) 2021-01-21 2022-07-21 Continental Automotive Gmbh Verfahren zur Verschlüsselung von sicherheitsrelevanten Daten im Fahrzeug
KR20230079632A (ko) * 2021-11-29 2023-06-07 성창 주식회사 서버와 IoT 디바이스 사이의 시간 동기화 시스템
US20220116132A1 (en) * 2021-12-22 2022-04-14 Kishore Kasichainula Synchronizing a real-time clock and a network clock

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8559412B1 (en) * 2007-12-31 2013-10-15 Rockstar Consortium Us Lp Communication time information in a network to enable synchronization
US9014282B2 (en) * 2011-05-27 2015-04-21 Cisco Technology, Inc. Precision timing in a data over cable service interface specification (DOCSIS) system
EP2683102B1 (en) * 2012-07-03 2014-10-08 Alcatel Lucent Device and Method for transmitting samples of a digital baseband signal
US20150103817A1 (en) * 2013-10-11 2015-04-16 Qualcomm Incorporated Global time synchronization server for wireless devices
CN107567689B (zh) * 2015-05-14 2019-12-13 瑞典爱立信有限公司 用于在无线网络中同步节点的方法和系统
US9907042B2 (en) * 2015-06-15 2018-02-27 Intel IP Corporation Apparatus, system and method of determining a time synchronization function (TSF) based on fine time measurement (FTM) messages
US9973292B2 (en) * 2016-04-01 2018-05-15 Khalifa University Of Science, Technology And Research Methods and systems for estimating offset and skew using linear programming
US10349368B2 (en) * 2016-06-30 2019-07-09 Imagination Technologies Limited Reference synchronisation
WO2018009107A1 (en) * 2016-07-06 2018-01-11 Telefonaktiebolaget Lm Ericsson (Publ) Transmission and reception of timestamp information
US10734012B2 (en) * 2017-09-07 2020-08-04 Synaptics Incorporated Low power, high bandwidth, low latency data bus
US10721700B2 (en) * 2018-09-10 2020-07-21 Abl Ip Holding Llc Command execution synchronization in a nodal network using controlled delay techniques
US11057857B2 (en) 2018-09-28 2021-07-06 Intel Corporation Technologies for managing internal time synchronization

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022100110A1 (zh) * 2020-11-16 2022-05-19 华为技术有限公司 网络同步的方法、装置、设备、系统及可读存储介质
CN114430308A (zh) * 2021-12-09 2022-05-03 西安昆仑工业(集团)有限责任公司 一种软件定时发送时间漂移导致时序偶发错位纠错方法
CN115793749A (zh) * 2022-12-05 2023-03-14 河北泽润信息科技有限公司 一种基于云计算的智能温室环境控制系统及方法

Also Published As

Publication number Publication date
US11856546B2 (en) 2023-12-26
US11553446B2 (en) 2023-01-10
US20190045475A1 (en) 2019-02-07
US20220141790A1 (en) 2022-05-05
US11057857B2 (en) 2021-07-06
US20230284168A1 (en) 2023-09-07

Similar Documents

Publication Publication Date Title
US11856546B2 (en) Technologies for managing internal time synchronization
US11412052B2 (en) Quality of service (QoS) management in edge computing environments
US11580428B2 (en) Distributed and contextualized artificial intelligence inference service
US11218553B2 (en) Inter-MEC system communication for V2X services
US11695565B2 (en) Secure aggregation of IoT messages
US11900148B2 (en) Technologies for scheduling time sensitive cyclical network traffic in real-time
US11683229B2 (en) Methods, systems, articles of manufacture and apparatus to coordinate a node level adaptation
US20190036772A1 (en) Intelligent wireless configuration for iot devices
WO2019133180A1 (en) Service level agreement-based multi-hardware accelerated inference
US10791019B2 (en) Edge or fog gateway assisted out-of-band remote management for managed client devices
US10408929B2 (en) Non-synchronized RF ranging
US10795399B2 (en) Device throughput optimization for bus protocols
US11487688B2 (en) Technologies for fast MAUSB enumeration
EP3461106B1 (en) An internet-of-thing gateway and related methods and apparatuses
US11329925B2 (en) Technologies for low-latency network packet transmission
WO2019172959A1 (en) Credential dependency encoding in restful system based on resources
US20240134680A1 (en) Technologies for scheduling time sensitive cyclical network traffic in real-time

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