CN116055501B - 一种用于节点间实时通信的链路系统 - Google Patents
一种用于节点间实时通信的链路系统 Download PDFInfo
- Publication number
- CN116055501B CN116055501B CN202310059944.5A CN202310059944A CN116055501B CN 116055501 B CN116055501 B CN 116055501B CN 202310059944 A CN202310059944 A CN 202310059944A CN 116055501 B CN116055501 B CN 116055501B
- Authority
- CN
- China
- Prior art keywords
- node
- frame
- module
- configuration
- logic
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种用于节点间实时通信的链路系统,涉及量子测控技术领域,包括:链路系统的拓扑结构为树状结构;上下级节点间使用具有固定通信延迟的点对点协议实现直接通信;链路系统以固定长度的帧为基本通信单元;每个节点都包含链路管理模块,可提供帧的直接收发、转发和广播功能,模块的功能可通过寄存器进行配置。本发明提供的链路系统可根据不同使用情形实现通信实时性和灵活性的动态平衡。
Description
技术领域
本发明涉及量子测控技术领域,特别涉及一种用于节点间实时通信的链路系统。
背景技术
当前,实时系统在医疗、加工、汽车等行业都有较多的应用,实时系统具有响应快、延迟短等特点,其响应延迟和计时精度通常在毫秒至微秒量级,这一精度已经能满足当前诸多传统行业的控制需求。现有的实时系统一般使用主频在数百MHz至GHz量级的通用微处理器或微控制器作为控制的主体,以计时器中断和时间片分配等方式实现实时控制。这一方案成立的前提在于,所需的时间控制精度与指令执行频率之间有3-6个数量级的差异,因而通用处理器架构中存在的一些诸如分支预判、乱序执行等导致指令执行顺序不确定的因素以及中断系统中存在的现场保护、控制权交接等额外开销导致的时间控制不确定性可以忽略不计。
然而近来随着量子技术的发展,量子物理实验系统也开始产生对数据处理、复杂流程控制和实时控制的需求。不同于传统行业,量子物理实验系统对时间控制的精度和分辨率的要求在纳秒量级、延迟要求在百纳秒至数十微秒量级,与当前微处理器的主频相当,从而前述的现有的实时控制方案难以满足需求。
因此早年在量子物理实验领域内,通常用FPGA(现场可编程门阵列)设计特定的时序脉冲发生器来产生高时间精度的脉冲序列,以此作为其它实验设备的触发信号,进行准确的时序控制。然而,这种方案的灵活性较差,只能产生预定的序列,无法在实验中对实验数据进行即时的处理,或根据实验的中间结果对后续的流程进行及时的调整。
当前领域内针对此问题的主要解决思路为,另置一与时序脉冲发生器紧密连接的通用微处理器,用来对实验数据进行即时处理和产生时序脉冲发生器的后续输出时序,不过此类控制器的配置和驱动往往较为复杂,需要通过USB或网线等与上位机连接,由上位机直接配置和驱动。这一思路能较好的满足小规模实验系统的实时控制需求,而当实验系统的规模较大、一个控制器无法满足要求而需要多个控制器时,控制器之间仅能以触发信号进行简单的同步,难以进行更为复杂灵活的实时交互,因为USB和网络协议存在轮询、握手、仲裁等协议内禀的时序不确定性。然而,对于复杂的量子物理实验,控制器之间的实时数据交换是十分必要的,可能其中某一控制器的输出时序需使用其它控制器所采集到的数据进行计算确定。
有鉴于此,本发明提供了一种用于节点间实时通信的链路系统,以解决上述不足。在本发明提出的链路系统中,所有节点与其上级、下级节点之间具有统一、固定且较短的通信延迟,适用于实时控制的场景;并且链路中除了可传递数据,亦可传递指令,方便上级节点对下级节点进行实时的控制,以实现更为复杂的交互功能。
发明内容
本发明目的之一在于提供了一种用于节点间实时通信的链路系统,该链路系统的拓扑结构为树状结构;上下级节点间使用具有固定通信延迟的点对点协议实现直接通信;链路系统以固定长度的帧为基本通信单元;每个节点都包含链路管理模块,可提供帧的直接收发、转发和广播功能,模块的功能可通过寄存器进行配置。该链路系统可根据不同使用情形实现通信实时性和灵活性的动态平衡。
本发明实施例提供的一种用于节点间实时通信的链路系统,包括:
由节点组成的硬件系统呈树状结构,节点分为根节点、中间结点和叶节点三类;所述根节点和中间结点拥有一个或多个与其直接相连的下级节点;所述中间结点和叶节点拥有一个与其直接相连的上级节点;
用于所述节点间直接通信的物理链路协议为具有固定通信延迟、固定最小通信单元长度的双向点对点通信协议,包括但不限于UART或SPI;
所述节点间的通信以帧为单位,帧包含魔术字、跳转数、帧类型和载荷4个数据域;其中魔术字用于验证当前帧的有效性;跳转数用于指示当前帧可被转发的次数;帧类型可为数据帧或指令帧,用于指示当前帧的载荷类型;载荷为当前帧所携带的有效信息,根据当前帧的帧类型,载荷可被接收该帧的节点解析为数据或指令;从一个节点向其下级节点发送或转发的帧称为下行帧;从一个节点向其上级节点发送或转发的帧称为上行帧;
每个所述节点包含一个链路管理模块,用于实现节点间的通信逻辑功能,包括:
功能F1:向上级节点发送上行帧;
功能F2:接收并解析来自上级节点的下行帧;
功能F3:向指定的下级节点发送下行帧;
功能F4:同时向多个指定的下级节点广播同一下行帧;
功能F5:接收并解析来自各下级节点的上行帧;
功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧;
功能F7:向上级节点转发来自指定的下级节点的上行帧。
优选的,所述链路管理模块包含以下子模块:
物理链路0模块:实现与上级节点通信的物理链路逻辑;
物理链路x模块:实现与下级节点x通信的物理链路逻辑,此类模块的个数与当前节点所拥有的下级节点的数目相同;在本发明中,使用正整数“x”指代任一不特定下级节点的编号;
上级节点收发逻辑模块:与物理链路0模块相连,用于处理来自上级节点的下行帧,或向上级节点发送上行帧,以实现所述功能F1、F2、F6、F7;
下级节点x收发逻辑模块:与物理链路x模块相连,用于处理来自下级节点x的上行帧,或向下级节点x发送下行帧,以实现所述功能F3-F7;
广播逻辑模块:与所有下级节点收发逻辑模块相连,用于向多个指定的下级节点广播下行帧,以实现所述功能F4、F6;
下行帧转发逻辑模块:与上级节点收发逻辑模块及广播逻辑模块相连,用于来自上级节点的下行帧的向下广播转发,以实现所述功能F6;
上行帧转发逻辑模块:与上级节点收发逻辑模块及所有下级节点收发逻辑模块相连,用于向上级节点转发来自指定下级节点的上行帧,以实现所述功能F7。
优选的,其一,每个节点的所述链路管理模块,都关联以下寄存器:配置寄存器RTCF、广播寄存器RTBC、上行链路寄存器RTD0、下行链路寄存器RTD1、RTD2、……、RTDx;
向所述寄存器写入数据,能够调控链路管理模块的不同逻辑功能;从这些寄存器读取数据,可以获取链路管理模块从链路系统中接收到的数据,以及其他相关信息;
其二,每个节点都包含一个微处理器,微处理器可以通过指令读取或写入与链路管理模块关联的寄存器,以控制其执行各项逻辑功能。
优选的,所述配置寄存器RTCF的功能,包括:
其一,向RTCF写入数据,可调整以下配置:
配置C1:上行帧发送数据源选择;
配置C2:下行帧广播数据源选择;
配置C3.x:向下级节点x发送的下行帧数据源选择;
配置C4:当前节点发起帧的帧类型和跳转数;
配置C5:各物理链路0模块、物理链路x模块运行所需的其它参数;
其中,配置C1的可选项为:
选项P1.0:来自RTD0;
选项P1.x:转发来自下级节点x的上行帧;
配置C2的可选项为:
选项P2.0:来自RTBC;
选项P2.1:转发来自上级节点的下行帧;
配置C3.x的可选项为:
选项P3.x.0:来自RTDx;
选项P3.x.1:来自广播逻辑模块;
配置C5可包含多个参数,包括但不限于通信链路的时钟分频系数;
其二,从RTCF读取数据,可获得的信息可根据实际需要确定,包括但不限于各物理链路模块的占用状态;
所述广播寄存器RTBC的功能,包括:
其一,向RTBC写入数据,有如下效果:
若RTCF的配置C2设定为选项P2.0,则该写入操作激活广播逻辑模块,向所有RTCF中的配置C3.x被设定为选项P3.x.1的下级节点x广播发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTBC写入的数据;
其二,从RTBC读取数据,可获得的信息可根据实际需要确定;
所述上行链路寄存器RTD0的功能,包括:
其一,向RTD0写入数据,有如下效果:
若RTCF的配置C1设定为选项P1.0,则该写入操作激活上级节点收发逻辑模块,向上级节点发送上行帧;该上行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTD0写入的数据;
其二,从RTD0读取数据,可按接收顺序获得来自上级节点且跳转数为0的下行数据帧的载荷;
任一所述下行链路寄存器RTDx的功能包括:
其一,向任一RTDx写入数据,有如下效果:
若RTCF的配置C3.x设定为选项P3.x.0,则该写入操作激活下级节点x收发逻辑模块,向下级节点x发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTDx写入的数据;
其二,从任一RTDx读取数据,可按接收顺序获得来自下级节点x且跳转数为0的上行数据帧的载荷。
优选的,所述上级节点收发逻辑模块包含以下子模块:
发送逻辑模块:用于构建上行帧,并交由物理链路0模块发送;
接收逻辑模块:用于接收来自上级节点的下行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFO:用于按顺序存储来自上级节点且跳转数为0的下行数据帧的载荷;
其中,发送逻辑模块的运行逻辑包括:
若RTCF的配置C1设定为选项P1.0,则当RTD0被写入数据时,所述构建上行帧,并交由物理链路0模块发送;
若RTCF的配置C1设定为除选项P1.0外的其它选项,则将来自上行帧转发逻辑模块的上行帧交由物理链路0模块发送;
接收逻辑模块的运行逻辑包括:
当从物理链路0模块收到来自上级节点的下行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若其跳转数大于0,则将其交由下行帧转发逻辑模块处理;
若其跳转数为0,且为指令帧,则将其载荷交由当前节点的微处理器执行;
若其跳转数为0,且为数据帧,则将其载荷存入FIFO模块;
先进先出队列模块FIFO的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTD0被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
任一所述下级节点x收发逻辑模块包含以下子模块:
发送逻辑x模块:用于构建下行帧,并交由物理链路x模块发送;
接收逻辑x模块:用于接收来自下级节点x的上行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFOx:用于按顺序存储来自下级节点x且跳转数为0的上行数据帧的载荷;
其中,发送逻辑x模块的运行逻辑包括:
若RTCF的配置C3.x设定为选项P3.x.0,则当RTDx被写入数据时,所述构建下行帧,并交由物理链路x模块发送;
若RTCF的配置C3.x设定为选项P3.x.1,则将来自广播逻辑模块的下行帧交由物理链路x模块发送;
接收逻辑x模块的运行逻辑包括:
当从物理链路x模块收到来自下级节点x的上行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若跳转数大于0,则将其交由上行帧转发逻辑模块处理;
若跳转数为0,且为数据帧,则将其载荷存入FIFOx模块;
先进先出队列模块FIFOx的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTDx被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
所述广播逻辑模块的运行逻辑包括:
若RTCF的配置C2设定为选项P2.0,则当RTBC被写入数据时,所述构建下行帧,并同时交由所有下级节点收发逻辑模块进一步处理;
若RTCF的配置C2设定为选项P2.1,则将来自下行帧转发逻辑模块的下行帧同时交由所有下级节点收发逻辑模块进一步处理;
所述下行帧转发逻辑模块的运行逻辑包括:对于上级节点收发逻辑模块交付的下行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由广播逻辑模块进一步处理;
所述上行帧转发逻辑模块的运行逻辑包括:若RTCF的配置C1设定为除选项P1.0外的任一选项P1.x,则接收下级节点x收发逻辑模块交付的上行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由上级节点收发逻辑模块进一步处理。
优选的,所述功能F1:向上级节点发送上行帧的实现方法为:
步骤F1S1:设置RTCF的配置C1为选项P1.0;
步骤F1S2:设置RTCF的配置C4为所需的值;若该上行帧的目标节点为当前节点的上级节点,则跳转数应设为0,若为上级节点的上级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F1S3:向RTD0写入该上行帧的载荷;
所述功能F2:接收并解析来自上级节点的下行帧由所述上级节点收发逻辑模块自动实现,无需主动配置;
所述功能F3:向指定的下级节点发送下行帧的实现方法为:
步骤F3S1:若目标节点为下级节点x,或为下级节点x之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.0;
步骤F3S2:设置RTCF的配置C4为所需的值;若该下行帧的目标节点为当前节点的下级节点,则跳转数应设为0,若为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F3S3:向RTDx写入该下行帧的载荷;
所述功能F4:同时向多个指定的下级节点广播同一下行帧的实现方法为:
步骤F4S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F4S2:设置RTCF的配置C2为选项P2.0;
步骤F4S3:设置RTCF的配置C4为所需的值;若该广播下行帧的目标节点均为当前节点的下级节点,则跳转数应设为0,若均为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F4S4:向RTBC写入该广播下行帧的载荷;
所述功能F5:接收并解析来自各下级节点的上行帧由任一下级节点x收发逻辑模块自动实现,无需主动配置;
所述功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧的实现方法为:
步骤F6S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F6S2:设置RTCF的配置C2为选项P2.1;
所述功能F7:向上级节点转发来自指定的下级节点的上行帧的实现方法为:
步骤F7S1:若指定的下级节点为下级节点x,则设置RTCF的配置C1为选项P1.x。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中链路管理模块结构的示意图;
图2为本发明实施例中上级节点收发逻辑模块结构的示意图;
图3为本发明实施例中任一下级节点x收发逻辑模块结构的示意图;
图4为本发明实施例中广播逻辑模块结构的示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供了一种用于节点间实时通信的链路系统,如图1-图4所示,包括:
由节点组成的硬件系统呈树状结构,节点分为根节点、中间结点和叶节点三类;所述根节点和中间结点拥有一个或多个与其直接相连的下级节点;所述中间结点和叶节点拥有一个与其直接相连的上级节点;
用于所述节点间直接通信的物理链路协议为具有固定通信延迟、固定最小通信单元长度的双向点对点通信协议,包括但不限于UART或SPI;
所述节点间的通信以帧为单位,帧包含魔术字、跳转数、帧类型和载荷4个数据域;其中魔术字用于验证当前帧的有效性;跳转数用于指示当前帧可被转发的次数;帧类型可为数据帧或指令帧,用于指示当前帧的载荷类型;载荷为当前帧所携带的有效信息,根据当前帧的帧类型,载荷可被接收该帧的节点解析为数据或指令;从一个节点向其下级节点发送或转发的帧称为下行帧;从一个节点向其上级节点发送或转发的帧称为上行帧;
每个所述节点包含一个链路管理模块,用于实现节点间的通信逻辑功能,包括:
功能F1:向上级节点发送上行帧;
功能F2:接收并解析来自上级节点的下行帧;
功能F3:向指定的下级节点发送下行帧;
功能F4:同时向多个指定的下级节点广播同一下行帧;
功能F5:接收并解析来自各下级节点的上行帧;
功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧;
功能F7:向上级节点转发来自指定的下级节点的上行帧。
所述链路管理模块包含以下子模块:
物理链路0模块:实现与上级节点通信的物理链路逻辑;
物理链路x模块:实现与下级节点x通信的物理链路逻辑,此类模块的个数与当前节点所拥有的下级节点的数目相同;在本发明中,使用正整数“x”指代任一不特定下级节点的编号;
上级节点收发逻辑模块:与物理链路0模块相连,用于处理来自上级节点的下行帧,或向上级节点发送上行帧,以实现所述功能F1、F2、F6、F7;
下级节点x收发逻辑模块:与物理链路x模块相连,用于处理来自下级节点x的上行帧,或向下级节点x发送下行帧,以实现所述功能F3-F7;
广播逻辑模块:与所有下级节点收发逻辑模块相连,用于向多个指定的下级节点广播下行帧,以实现所述功能F4、F6;
下行帧转发逻辑模块:与上级节点收发逻辑模块及广播逻辑模块相连,用于来自上级节点的下行帧的向下广播转发,以实现所述功能F6;
上行帧转发逻辑模块:与上级节点收发逻辑模块及所有下级节点收发逻辑模块相连,用于向上级节点转发来自指定下级节点的上行帧,以实现所述功能F7。
其一,每个节点的所述链路管理模块,都关联以下寄存器:配置寄存器RTCF、广播寄存器RTBC、上行链路寄存器RTD0、下行链路寄存器RTD1、RTD2、……、RTDx;
向所述寄存器写入数据,能够调控链路管理模块的不同逻辑功能;从这些寄存器读取数据,可以获取链路管理模块从链路系统中接收到的数据,以及其他相关信息;
其二,每个节点都包含一个微处理器,微处理器可以通过指令读取或写入与链路管理模块关联的寄存器,以控制其执行各项逻辑功能。
所述配置寄存器RTCF的功能,包括:
其一,向RTCF写入数据,可调整以下配置:
配置C1:上行帧发送数据源选择;
配置C2:下行帧广播数据源选择;
配置C3.x:向下级节点x发送的下行帧数据源选择;
配置C4:当前节点发起帧的帧类型和跳转数;
配置C5:各物理链路0模块、物理链路x模块运行所需的其它参数;
其中,配置C1的可选项为:
选项P1.0:来自RTD0;
选项P1.x:转发来自下级节点x的上行帧;
配置C2的可选项为:
选项P2.0:来自RTBC;
选项P2.1:转发来自上级节点的下行帧;
配置C3.x的可选项为:
选项P3.x.0:来自RTDx;
选项P3.x.1:来自广播逻辑模块;
配置C5可包含多个参数,包括但不限于通信链路的时钟分频系数;
其二,从RTCF读取数据,可获得的信息可根据实际需要确定,包括但不限于各物理链路模块的占用状态;
所述广播寄存器RTBC的功能,包括:
其一,向RTBC写入数据,有如下效果:
若RTCF的配置C2设定为选项P2.0,则该写入操作激活广播逻辑模块,向所有RTCF中的配置C3.x被设定为选项P3.x.1的下级节点x广播发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTBC写入的数据;
其二,从RTBC读取数据,可获得的信息可根据实际需要确定;
所述上行链路寄存器RTD0的功能,包括:
其一,向RTD0写入数据,有如下效果:
若RTCF的配置C1设定为选项P1.0,则该写入操作激活上级节点收发逻辑模块,向上级节点发送上行帧;该上行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTD0写入的数据;
其二,从RTD0读取数据,可按接收顺序获得来自上级节点且跳转数为0的下行数据帧的载荷;
任一所述下行链路寄存器RTDx的功能包括:
其一,向任一RTDx写入数据,有如下效果:
若RTCF的配置C3.x设定为选项P3.x.0,则该写入操作激活下级节点x收发逻辑模块,向下级节点x发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTDx写入的数据;
其二,从任一RTDx读取数据,可按接收顺序获得来自下级节点x且跳转数为0的上行数据帧的载荷。
所述上级节点收发逻辑模块包含以下子模块:
发送逻辑模块:用于构建上行帧,并交由物理链路0模块发送;
接收逻辑模块:用于接收来自上级节点的下行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFO:用于按顺序存储来自上级节点且跳转数为0的下行数据帧的载荷;
其中,发送逻辑模块的运行逻辑包括:
若RTCF的配置C1设定为选项P1.0,则当RTD0被写入数据时,所述构建上行帧,并交由物理链路0模块发送;
若RTCF的配置C1设定为除选项P1.0外的其它选项,则将来自上行帧转发逻辑模块的上行帧交由物理链路0模块发送;
接收逻辑模块的运行逻辑包括:
当从物理链路0模块收到来自上级节点的下行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若其跳转数大于0,则将其交由下行帧转发逻辑模块处理;
若其跳转数为0,且为指令帧,则将其载荷交由当前节点的微处理器执行;
若其跳转数为0,且为数据帧,则将其载荷存入FIFO模块;
先进先出队列模块FIFO的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTD0被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
任一所述下级节点x收发逻辑模块包含以下子模块:
发送逻辑x模块:用于构建下行帧,并交由物理链路x模块发送;
接收逻辑x模块:用于接收来自下级节点x的上行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFOx:用于按顺序存储来自下级节点x且跳转数为0的上行数据帧的载荷;
其中,发送逻辑x模块的运行逻辑包括:
若RTCF的配置C3.x设定为选项P3.x.0,则当RTDx被写入数据时,所述构建下行帧,并交由物理链路x模块发送;
若RTCF的配置C3.x设定为选项P3.x.1,则将来自广播逻辑模块的下行帧交由物理链路x模块发送;
接收逻辑x模块的运行逻辑包括:
当从物理链路x模块收到来自下级节点x的上行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若跳转数大于0,则将其交由上行帧转发逻辑模块处理;
若跳转数为0,且为数据帧,则将其载荷存入FIFOx模块;
先进先出队列模块FIFOx的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTDx被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
所述广播逻辑模块的运行逻辑包括:
若RTCF的配置C2设定为选项P2.0,则当RTBC被写入数据时,所述构建下行帧,并同时交由所有下级节点收发逻辑模块进一步处理;
若RTCF的配置C2设定为选项P2.1,则将来自下行帧转发逻辑模块的下行帧同时交由所有下级节点收发逻辑模块进一步处理;
所述下行帧转发逻辑模块的运行逻辑包括:对于上级节点收发逻辑模块交付的下行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由广播逻辑模块进一步处理;
所述上行帧转发逻辑模块的运行逻辑包括:若RTCF的配置C1设定为除选项P1.0外的任一选项P1.x,则接收下级节点x收发逻辑模块交付的上行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由上级节点收发逻辑模块进一步处理。
所述功能F1:向上级节点发送上行帧的实现方法为:
步骤F1S1:设置RTCF的配置C1为选项P1.0;
步骤F1S2:设置RTCF的配置C4为所需的值;若该上行帧的目标节点为当前节点的上级节点,则跳转数应设为0,若为上级节点的上级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F1S3:向RTD0写入该上行帧的载荷;
所述功能F2:接收并解析来自上级节点的下行帧由所述上级节点收发逻辑模块自动实现,无需主动配置;
所述功能F3:向指定的下级节点发送下行帧的实现方法为:
步骤F3S1:若目标节点为下级节点x,或为下级节点x之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.0;
步骤F3S2:设置RTCF的配置C4为所需的值;若该下行帧的目标节点为当前节点的下级节点,则跳转数应设为0,若为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F3S3:向RTDx写入该下行帧的载荷;
所述功能F4:同时向多个指定的下级节点广播同一下行帧的实现方法为:
步骤F4S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F4S2:设置RTCF的配置C2为选项P2.0;
步骤F4S3:设置RTCF的配置C4为所需的值;若该广播下行帧的目标节点均为当前节点的下级节点,则跳转数应设为0,若均为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F4S4:向RTBC写入该广播下行帧的载荷;
所述功能F5:接收并解析来自各下级节点的上行帧由任一下级节点x收发逻辑模块自动实现,无需主动配置;
所述功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧的实现方法为:
步骤F6S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F6S2:设置RTCF的配置C2为选项P2.1;
所述功能F7:向上级节点转发来自指定的下级节点的上行帧的实现方法为:
步骤F7S1:若指定的下级节点为下级节点x,则设置RTCF的配置C1为选项P1.x。
上述技术方案的工作原理及有益效果为:
根据量子态不可克隆原理,不存在能够复制未知量子态的物理操作,从而量子计算机从原理上无法像经典计算机一样,通过现场保护和上下文切换(本质上是计算机状态参量的复制)实现分时多任务,因此量子计算任务在时间上必须是一个连续的整体。此外,量子计算的有效性是通过参与计算的量子比特之间的相干性以及量子操作之间的相干性保证的,这一点要求产生量子操作调控信号的测控系统其各部分之间拥有相同的时序基准和严格的相位关系。二者结合,可通俗理解为“整个量子系统一次只做一件事”。而树状的系统架构恰好契合此类需求,且能满足系统规模的可扩展性。
对于量子物理实验测控系统,其主要应用情形可分为两类。其一是在实验进行过程中,此时要求系统中各部分之间的输入、输出时序精准、严格、低延迟,但系统各部分在实验中的角色基本固定,从而节点间通信的路径和内容较为单一。换言之,在实验中对系统的实时性要求较高,而对其灵活性要求较低。其二是在实验配置和系统调试阶段,此时对系统的实时性几乎没有要求,只要延迟在操作人员的可忍受范围内即可,但同时对系统的灵活性要求较高,控制整个系统的上位机要能够访问并控制系统的任何部分,并能够配置系统各部分间的链路以为实验做准备。本发明提出的链路系统使用“先建立信道再通信”的方案,将路由信息存储在节点的寄存器配置中,而非通信帧中,如此即可减少通信帧中非载荷内容的占比,也可减少对通信帧的拆包、解析、封包的逻辑开销,从而在实验进行过程中提供更好的通信实时性。这种方案虽然具有较大的重建信道的开销(需要沿途重新配置寄存器),但在实验进行过程中这一需求几乎不会出现,而在实验配置和系统调试阶段又没有实时性要求,从而无需考虑此类开销。总之,本发明提出的链路系统能够实现通信实时性和灵活性的动态平衡。
最后,本发明提出的链路系统选用具有固定通信延迟、固定最小通信单元长度的双向点对点通信协议作为节点间直接通信的物理链路,同时通信帧的长度也是固定的、各节点内的链路管理模块也是同构的,这在根本上确保了节点间通信具有全局统一的固定延迟,从而在实验时序的设计上无需考虑复杂的通信延迟情形。此外,链路系统中除了可传递数据,亦可传递指令,从而上级节点可以对下级节点进行配置和调控,如此,既丰富了在实验进行过程中进行即时反馈控制的手段,又无需额外的链路对各节点进行配置,节省了硬件和逻辑资源。
在具体应用的时候,本申请提供一种用于节点间实时通信的链路系统的具体实施方案,详述如下:
一个由13个节点组成的实验控制系统,包含1个根节点,根节点直接与控制整个系统的上位机连接;根节点拥有3个下级节点,分别标记为“节点1”、“节点2”和“节点3”;其中节点1包含1个下级节点,“节点1.1”;节点2包含2个下级节点,“节点2.1”和“节点2.2”;节点3包含3个下级节点,“节点3.1”、“节点3.2”和“节点3.3”;所有节点之间通过速率为10Mbps、包含1个停止位和8个数据位的UART链路连接;通信帧的魔术字的位宽为4位,取值0xA,跳转数的位宽为3位,载荷位宽为32位,从而帧的总位宽为40位。
基于此系统,以下列举几个典型的应用场景以及解决方案。
场景A:跨节点的实时反馈
假设节点2需要根据节点1采集到的数据决定后续的执行流程,若小于阈值,则执行“函数a”,否则执行“函数b”。
解决方案A:
节点1按顺序执行以下步骤:
步骤A.1.1:采集数据;
步骤A.1.2:RTCF的配置C1设为选项P1.0;
步骤A.1.3:RTCF的配置C4设为:帧类型:数据帧,跳转数:0;
步骤A.1.4:向RTD0写入采集到的数据;
根节点按顺序执行以下步骤:
步骤A.R.1:当FIFO1非空时,从RTD1读取节点1发来的数据;
步骤A.R.2:RTCF的配置C3.2设为选项P3.2.0;
步骤A.R.3:RTCF的配置C4设为:帧类型:指令帧,跳转数:0;
步骤A.R.4:向RTD2写入指令,若读取到的数据小于阈值,指令为“调用函数a”,否则指令为“调用函数b”;
节点2在收到来自根节点的指令前,处于挂起状态。
原理与优势:
前述的UART链路传递一个字节需要传递1个起始位、8个数据位和1个停止位,合计10个比特,因此传递1个通信帧的时间开销为精确的5us。如此,解决方案A中的跨节点反馈操作的通信开销为10us,且各节点所执行的指令序列没有任何不确定性,整个反馈控制的总开销可以精确到单个时钟周期,符合实时控制的要求。
场景B:同步多个下级节点的执行时序
假设节点3的3个下级节点需要严格同时开始执行某功能。
解决方案B:
节点3按顺序执行以下步骤:
步骤B.3.1:RTCF的配置C2设为选项P2.0;
步骤B.3.2:RTCF的配置C3.1设为选项P3.1.1,配置C3.2设为选项P3.2.1,配置C3.3设为选项P3.3.1;
步骤B.3.3:RTCF的配置C4设为:帧类型:指令帧,跳转数:0;
步骤B.3.4:向RTBC写入“解除挂起状态”指令;
节点3.1、节点3.2和节点3.3在收到指令前处于挂起状态;
原理与优势:
如前所述,节点间传递1帧的开销为精确的5us;利用广播逻辑模块,可以使得节点3的物理链路1-3模块同时进入发送状态,从而节点3.1、节点3.2和节点3.3同时收到“解除挂起状态”的指令,同时开始执行后续任务,满足应用场景的要求。
场景C:直接对某一节点进行非实时的配置和检查
假设上位机在实验开始前需要对节点3.3进行配置和检查。
解决方案C:
节点3按顺序执行以下步骤:
步骤C.3.1:RTCF的配置C1设为选项P1.3;
步骤C.3.2:RTCF的配置C2设为选项P2.1;
步骤C.3.3:RTCF的配置C3.3设为选项P3.3.1;
根节点按顺序执行以下步骤:
步骤C.R.1:RTCF的配置C3.3设为选项P3.3.0;
步骤C.R.2:RTCF的配置C4设为:帧类型:指令帧,跳转数:1;
步骤C.R.3:将所需的配置指令按顺序逐条写入RTD3;
步骤C.R.4:若FIFO3非空,则从RTD3逐个读取数据并转发给上位机,直到FIFO3为空;
节点3.3在收到指令前处于挂起状态,其RTCF的各项配置可通过根节点发送的指令帧进行设置,若需要节点3.3返回数据,则RTCF的正确配置为:
配置C1设为选项P1.0;
配置C4设为:帧类型:数据帧,跳转数:1;
而后根节点通过向其发送指令帧,令其将所需数据写入RTD0即可。
原理与优势:
节点3的RTCF的各项配置实质上是将节点3置于一种“透明转发”状态,即直接向节点3.3转发来自根节点的下行帧,并且直接向根节点转发来自节点3.3的上行帧。如此,对于系统中的任一节点,只需将根节点到该目标节点之间途经的所有节点都设置成这种“透明转发”状态,即可直接对该目标节点进行控制和访问。
由于在实验前对系统中某一节点的配置和检查并无实时性要求,且系统中其它节点也并不处于执行控制任务的状态,解决方案C中对各途经节点的状态改变以及因此带来的额外开销都在可接受范围内。当需要对整个系统中所有节点进行配置时,可以先逐个配置所有的叶节点,再逐个配置其下级节点已经全部完成配置的中间结点,以此类推,直到最后配置根节点,如此,可以保证系统中所有的节点在配置完成后,状态不会受到额外的干扰。
实施例整体优势:
从前述各应用场景和解决方案可见,系统中直接相连的节点之间的通信具有精确、统一的通信开销,再辅以广播功能,即可满足实验运行过程中所需的强实时控制需求;而在实验前需要对各节点进行配置和检查时,根节点和目标节点之间的途经节点可配置为“透明转发”状态,在无需实时性的情况下提供了强大的灵活性,从而强实时的通信任务和非实时的配置任务可以共用一套链路系统,无需额外的硬件和逻辑开销。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种用于节点间实时通信的链路系统,其特征在于,包括:
由节点组成的硬件系统呈树状结构,节点分为根节点、中间结点和叶节点三类;所述根节点和中间结点拥有一个或多个与其直接相连的下级节点;所述中间结点和叶节点拥有一个与其直接相连的上级节点;
用于所述节点间直接通信的物理链路协议为具有固定通信延迟、固定最小通信单元长度的双向点对点通信协议;
所述节点间的通信以帧为单位,帧包含魔术字、跳转数、帧类型和载荷4个数据域;其中魔术字用于验证当前帧的有效性;跳转数用于指示当前帧可被转发的次数;帧类型可为数据帧或指令帧,用于指示当前帧的载荷类型;载荷为当前帧所携带的有效信息,根据当前帧的帧类型,载荷可被接收该帧的节点解析为数据或指令;从一个节点向其下级节点发送或转发的帧称为下行帧;从一个节点向其上级节点发送或转发的帧称为上行帧;
每个所述节点包含一个链路管理模块,用于实现节点间的通信逻辑功能,包括:
功能F1:向上级节点发送上行帧;
功能F2:接收并解析来自上级节点的下行帧;
功能F3:向指定的下级节点发送下行帧;
功能F4:同时向多个指定的下级节点广播同一下行帧;
功能F5:接收并解析来自各下级节点的上行帧;
功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧;
功能F7:向上级节点转发来自指定的下级节点的上行帧。
2.如权利要求1所述的一种用于节点间实时通信的链路系统,其特征在于,所述链路管理模块包含以下子模块:
物理链路0模块:实现与上级节点通信的物理链路逻辑;
物理链路x模块:实现与下级节点x通信的物理链路逻辑,此类模块的个数与当前节点所拥有的下级节点的数目相同;使用正整数“x”指代任一不特定下级节点的编号;
上级节点收发逻辑模块:与物理链路0模块相连,用于处理来自上级节点的下行帧,或向上级节点发送上行帧,以实现所述功能F1、F2、F6、F7;
下级节点x收发逻辑模块:与物理链路x模块相连,用于处理来自下级节点x的上行帧,或向下级节点x发送下行帧,以实现所述功能F3-F7;
广播逻辑模块:与所有下级节点收发逻辑模块相连,用于向多个指定的下级节点广播下行帧,以实现所述功能F4、F6;
下行帧转发逻辑模块:与上级节点收发逻辑模块及广播逻辑模块相连,用于来自上级节点的下行帧的向下广播转发,以实现所述功能F6;
上行帧转发逻辑模块:与上级节点收发逻辑模块及所有下级节点收发逻辑模块相连,用于向上级节点转发来自指定下级节点的上行帧,以实现所述功能F7。
3.如权利要求2所述的一种用于节点间实时通信的链路系统,其特征在于,
其一,每个节点的所述链路管理模块,都关联以下寄存器:配置寄存器RTCF、广播寄存器RTBC、上行链路寄存器RTD0、下行链路寄存器RTD1、RTD2、……、RTDx;
向所述寄存器写入数据,能够调控链路管理模块的不同逻辑功能;从这些寄存器读取数据,可以获取链路管理模块从链路系统中接收到的数据,以及其他相关信息;
其二,每个节点都包含一个微处理器,微处理器可以通过指令读取或写入与链路管理模块关联的寄存器,以控制其执行各项逻辑功能。
4.如权利要求3所述的一种用于节点间实时通信的链路系统,其特征在于,所述配置寄存器RTCF的功能,包括:
其一,向RTCF写入数据,可调整以下配置:
配置C1:上行帧发送数据源选择;
配置C2:下行帧广播数据源选择;
配置C3.x:向下级节点x发送的下行帧数据源选择;
配置C4:当前节点发起帧的帧类型和跳转数;
配置C5:各物理链路0模块、物理链路x模块运行所需的其它参数;
其中,配置C1的可选项为:
选项P1.0:来自RTD0;
选项P1.x:转发来自下级节点x的上行帧;
配置C2的可选项为:
选项P2.0:来自RTBC;
选项P2.1:转发来自上级节点的下行帧;
配置C3.x的可选项为:
选项P3.x.0:来自RTDx;
选项P3.x.1:来自广播逻辑模块;
配置C5可包含多个参数;
其二,从RTCF读取数据,可获得的信息可根据实际需要确定;
所述广播寄存器RTBC的功能,包括:
其一,向RTBC写入数据,有如下效果:
若RTCF的配置C2设定为选项P2.0,则该写入操作激活广播逻辑模块,向所有RTCF中的配置C3.x被设定为选项P3.x.1的下级节点x广播发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTBC写入的数据;
其二,从RTBC读取数据,可获得的信息可根据实际需要确定;
所述上行链路寄存器RTD0的功能,包括:
其一,向RTD0写入数据,有如下效果:
若RTCF的配置C1设定为选项P1.0,则该写入操作激活上级节点收发逻辑模块,向上级节点发送上行帧;该上行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTD0写入的数据;
其二,从RTD0读取数据,可按接收顺序获得来自上级节点且跳转数为0的下行数据帧的载荷;
任一所述下行链路寄存器RTDx的功能包括:
其一,向任一RTDx写入数据,有如下效果:
若RTCF的配置C3.x设定为选项P3.x.0,则该写入操作激活下级节点x收发逻辑模块,向下级节点x发送下行帧;该下行帧的帧类型和跳转数由RTCF中的配置C4确定,其载荷为该写入操作向RTDx写入的数据;
其二,从任一RTDx读取数据,可按接收顺序获得来自下级节点x且跳转数为0的上行数据帧的载荷。
5.如权利要求4所述的一种用于节点间实时通信的链路系统,其特征在于,所述上级节点收发逻辑模块包含以下子模块:
发送逻辑模块:用于构建上行帧,并交由物理链路0模块发送;
接收逻辑模块:用于接收来自上级节点的下行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFO:用于按顺序存储来自上级节点且跳转数为0的下行数据帧的载荷;
其中,发送逻辑模块的运行逻辑包括:
若RTCF的配置C1设定为选项P1.0,则当RTD0被写入数据时,所述构建上行帧,并交由物理链路0模块发送;
若RTCF的配置C1设定为除选项P1.0外的其它选项,则将来自上行帧转发逻辑模块的上行帧交由物理链路0模块发送;
接收逻辑模块的运行逻辑包括:
当从物理链路0模块收到来自上级节点的下行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若其跳转数大于0,则将其交由下行帧转发逻辑模块处理;
若其跳转数为0,且为指令帧,则将其载荷交由当前节点的微处理器执行;
若其跳转数为0,且为数据帧,则将其载荷存入FIFO模块;
先进先出队列模块FIFO的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTD0被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
任一所述下级节点x收发逻辑模块包含以下子模块:
发送逻辑x模块:用于构建下行帧,并交由物理链路x模块发送;
接收逻辑x模块:用于接收来自下级节点x的上行帧,并根据其跳转数和帧类型对其进行进一步处理;
先进先出队列模块FIFOx:用于按顺序存储来自下级节点x且跳转数为0的上行数据帧的载荷;
其中,发送逻辑x模块的运行逻辑包括:
若RTCF的配置C3.x设定为选项P3.x.0,则当RTDx被写入数据时,所述构建下行帧,并交由物理链路x模块发送;
若RTCF的配置C3.x设定为选项P3.x.1,则将来自广播逻辑模块的下行帧交由物理链路x模块发送;
接收逻辑x模块的运行逻辑包括:
当从物理链路x模块收到来自下级节点x的上行帧时,首先比对其魔术字,若无效则立即丢弃;否则:
若跳转数大于0,则将其交由上行帧转发逻辑模块处理;
若跳转数为0,且为数据帧,则将其载荷存入FIFOx模块;
先进先出队列模块FIFOx的运行逻辑包括:
模块内置一可变长度的队列用于存储数据;
当有数据帧的载荷需要存入时,将其置于模块内部队列的末尾;
当RTDx被读取时,若模块内部队列非空,则读取值设为队列头部元素的值,并将该元素从队列中移除;
所述广播逻辑模块的运行逻辑包括:
若RTCF的配置C2设定为选项P2.0,则当RTBC被写入数据时,所述构建下行帧,并同时交由所有下级节点收发逻辑模块进一步处理;
若RTCF的配置C2设定为选项P2.1,则将来自下行帧转发逻辑模块的下行帧同时交由所有下级节点收发逻辑模块进一步处理;
所述下行帧转发逻辑模块的运行逻辑包括:对于上级节点收发逻辑模块交付的下行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由广播逻辑模块进一步处理;
所述上行帧转发逻辑模块的运行逻辑包括:若RTCF的配置C1设定为除选项P1.0外的任一选项P1.x,则接收下级节点x收发逻辑模块交付的上行帧,保持其帧类型和载荷不变,将跳转数改为原有值减1,而后交由上级节点收发逻辑模块进一步处理。
6.如权利要求5所述的一种用于节点间实时通信的链路系统,其特征在于,所述功能F1:向上级节点发送上行帧的实现方法为:
步骤F1S1:设置RTCF的配置C1为选项P1.0;
步骤F1S2:设置RTCF的配置C4为所需的值;若该上行帧的目标节点为当前节点的上级节点,则跳转数应设为0,若为上级节点的上级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F1S3:向RTD0写入该上行帧的载荷;
所述功能F2:接收并解析来自上级节点的下行帧由所述上级节点收发逻辑模块自动实现,无需主动配置;
所述功能F3:向指定的下级节点发送下行帧的实现方法为:
步骤F3S1:若目标节点为下级节点x,或为下级节点x之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.0;
步骤F3S2:设置RTCF的配置C4为所需的值;若该下行帧的目标节点为当前节点的下级节点,则跳转数应设为0,若为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F3S3:向RTDx写入该下行帧的载荷;
所述功能F4:同时向多个指定的下级节点广播同一下行帧的实现方法为:
步骤F4S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F4S2:设置RTCF的配置C2为选项P2.0;
步骤F4S3:设置RTCF的配置C4为所需的值;若该广播下行帧的目标节点均为当前节点的下级节点,则跳转数应设为0,若均为下级节点的某一下级节点,则应为1,以此类推;帧类型可根据需要设定;
步骤F4S4:向RTBC写入该广播下行帧的载荷;
所述功能F5:接收并解析来自各下级节点的上行帧由任一下级节点x收发逻辑模块自动实现,无需主动配置;
所述功能F6:同时向多个指定的下级节点广播转发来自上级节点的下行帧的实现方法为:
步骤F6S1:对于每个下级节点x,若广播下行帧的目标节点包含该节点,或包含该节点之下某一层次的下级节点,则设置RTCF的配置C3.x为选项P3.x.1;
步骤F6S2:设置RTCF的配置C2为选项P2.1;
所述功能F7:向上级节点转发来自指定的下级节点的上行帧的实现方法为:
步骤F7S1:若指定的下级节点为下级节点x,则设置RTCF的配置C1为选项P1.x。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310059944.5A CN116055501B (zh) | 2023-01-17 | 2023-01-17 | 一种用于节点间实时通信的链路系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310059944.5A CN116055501B (zh) | 2023-01-17 | 2023-01-17 | 一种用于节点间实时通信的链路系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116055501A CN116055501A (zh) | 2023-05-02 |
CN116055501B true CN116055501B (zh) | 2023-07-25 |
Family
ID=86119870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310059944.5A Active CN116055501B (zh) | 2023-01-17 | 2023-01-17 | 一种用于节点间实时通信的链路系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116055501B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109714244A (zh) * | 2017-10-26 | 2019-05-03 | 宁波创元信息科技有限公司 | 一种基于树状结构的即时通信方法 |
CN113377441A (zh) * | 2021-06-16 | 2021-09-10 | 南方科技大学 | 用于量子物理实验平台的通用时序控制器架构 |
CN114050947A (zh) * | 2021-11-09 | 2022-02-15 | 北京经纬恒润科技股份有限公司 | 一种基于车载spi总线的通信方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3991005A4 (en) * | 2019-06-28 | 2023-07-05 | Analog Devices International Unlimited Company | SINGLE PORT OF AN ETHERNET NODE WITH LOW COMPLEXITY (LEN) |
-
2023
- 2023-01-17 CN CN202310059944.5A patent/CN116055501B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109714244A (zh) * | 2017-10-26 | 2019-05-03 | 宁波创元信息科技有限公司 | 一种基于树状结构的即时通信方法 |
CN113377441A (zh) * | 2021-06-16 | 2021-09-10 | 南方科技大学 | 用于量子物理实验平台的通用时序控制器架构 |
CN114050947A (zh) * | 2021-11-09 | 2022-02-15 | 北京经纬恒润科技股份有限公司 | 一种基于车载spi总线的通信方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116055501A (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113424205B (zh) | 具有模块化和动态脉冲生成和路由的量子控制器中的同步系统 | |
Paukovits et al. | Concepts of switching in the time-triggered network-on-chip | |
CN111049760B (zh) | 基于Torus网络拓扑结构分解的时间触发消息调度表生成方法 | |
CN109697082A (zh) | 指令组 | |
CN104267939A (zh) | 一种业务处理的方法、装置及系统 | |
Azegami et al. | A stdm (static time division multiplexing) switch on a multi-fpga system | |
Chen et al. | ArSMART: An improved SMART NoC design supporting arbitrary-turn transmission | |
CN116055501B (zh) | 一种用于节点间实时通信的链路系统 | |
Mahajan et al. | Better Together: Jointly Optimizing {ML} Collective Scheduling and Execution Planning using {SYNDICATE} | |
Sørensen et al. | Message passing on a time-predictable multicore processor | |
US11036205B2 (en) | Control device and communication device | |
KR101552119B1 (ko) | EtherCAT을 위한 노드간 최적 시간 위상 검색 시스템 | |
EP3582444B1 (en) | Control device and communication device | |
CN111052683B (zh) | 网络系统 | |
CN210129113U (zh) | 兼具主线控制和独立控制的EtherCAT控制结构 | |
Korobkov et al. | Scheduling-Table’s Design for STP-ISS Transport Protocol | |
Wulf et al. | Message-based MAC accelerator for time-critical industrial communication | |
US11940940B2 (en) | External exchange connectivity | |
US11726937B2 (en) | Control of data sending from a multi-processor device | |
US9336172B2 (en) | Parallel computer system, data transfer device, and method for controlling parallel computer system for performing arbitration | |
US11675686B2 (en) | Tracing activity from multiple components of a device | |
CN116523057B (zh) | 量子控制系统以及量子计算机系统 | |
CN113721703A (zh) | 一种多路cpu系统中时钟同步控制装置、系统及控制方法 | |
Balaji et al. | S-nets: A petri net based model for performance evaluation of real-time scheduling algorithms | |
Chen et al. | Scheduling methods of spacewire fiber-optic bus and verification |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |