CN107819539A - 一种实现时间触发以太网端系统的装置及方法 - Google Patents
一种实现时间触发以太网端系统的装置及方法 Download PDFInfo
- Publication number
- CN107819539A CN107819539A CN201711143817.4A CN201711143817A CN107819539A CN 107819539 A CN107819539 A CN 107819539A CN 201711143817 A CN201711143817 A CN 201711143817A CN 107819539 A CN107819539 A CN 107819539A
- Authority
- CN
- China
- Prior art keywords
- time
- data
- side system
- ethernet side
- module
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/02—Protocol performance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
Abstract
本发明公开了一种实现时间触发以太网端系统的装置及方法,本发明基于以太网技术,通过增加时间同步和时间触发的功能,实现了能够传输时间触发数据和事件触发数据的时间触发以太网端系统。本发明装置的专用协议处理模块,能够更方便的处理管理数据。本发明装置的发送处理模块,能够保证数据传输过程中的可靠性和网络的稳健性。本发明的方法通过采用精确时钟同步协议IEEE 1588,降低了在硬件上实现时间同步的难度,具有更高的时间同步稳定度和同步精度。
Description
技术领域
本发明属于通信技术领域,更进一步涉及以太网技术领域中的一种实现时间触发以太网端系统的装置及方法。本发明以以太网技术为基础,通过引入时间同步技术和时间触发技术,从而实现一种能够处理时间触发数据和事件触发数据的具有时间同步功能的端系统的装置及方法。
背景技术
时间触发以太网端系统以时间触发以太网为基础,它建立在以太网通信网络基础上,理念是在标准以太网中增加时钟同步技术、时间触发技术等,使以太网成为时间确定性网络,使端系统同时满足实时与非实时应用的需求。同时精确时钟同步IEEE 1588协议的高精度特性和以太网兼容的特性,使之能够无障碍的应用到基于以太网的通信网络中。目前基于精确时钟同步IEEE 1588协议的时间触发以太网端系统的研究还处于起步阶段,整体方案和硬件支持都比较欠缺。
刘强在其发表的论文“时间触发以太网网络控制机制和关键构件研究”(电子科技大学,2013.06.26)中公开了一种时间触发以太网终端系统,该系统的基于时间触发以太网,主要功能是协同网络所有节点进行时钟同步和数据通信,能够处理时间触发数据和事件触发数据。该系统存在的不足之处在于,仅考虑了用户数据的传输,没有考虑管理数据的传输,不能用于时间触发以太网的网络场景;没有考虑数据的冗余传输,无法保证网络数据传输的可靠性。
天津大学在其申请的专利文献“兼容时间触发以太网和1553B的航天以太网通信方法”(申请号:201610487926.7,公开号:CN105991384A)中公开了一种实现时间触发以太网设备的方法。该方法兼容时间触发以太网和1553B的航天以太网通信方法,基于ASSAE6802协议实现网络同步,采用时间触发兼容协议架构传输三种不同优先级的数据:管理数据、IT应用数据和时间触发数据,这三种数据都采用标准的以太网帧格式,只不过经过不同协议的封装导致类型域的值不同。该方法存在的不足之处是,采用的AS SAE6802协议实现时间同步,在硬件上实现复杂且可靠性较低,时间同步稳定度和精度也较低。
发明内容
本发明针对上述现有技术存在的不足,提出一种实现时间触发以太网端系统的装置及方法,通过专用控制协议,实现管理数据的传输,降低了在硬件设备上的实现难度;通过发送处理模块,保证数据传输过程中的可靠性,提高网络的稳健性;采用精确时间同步协议IEEE 1588实现网络的时钟同步,降低了硬件实现网络同步方案的难度,增加了网络时间同步的可靠性,提高了时间同步的稳定度和同步精度。
为了实现上述目的,本发明的思路是:可编程逻辑芯片FPGA以及一些外围电路实现一个具有时间触发功能的板卡,通过总线接口与主机通信,构成时间触发以太网端系统。主机上开发相应的总线驱动程序以及生成应用数据和管理数据的应用程序。板卡负责将主机上生成的数据发送到网络其他节点。时间触发以太网端系统作为时间触发以太网网络中的端节点,与交换机连接起来,构成时间触发以太网网络,完成数据传输。
为了实现上述目的,本发明的装置包括一个主节点时间触发以太网端系统和一个从节点时间触发以太网端系统,主节点时间触发以太网端系统和从节点时间触发以太网端系统可互为发送端和接收端;主节点时间触发以太网端系统包括主机模块、总线接口模块、专用控制协议模块、配置模块、发送处理模块、接收处理模块、第一链路层MAC_IP核模块、第二链路层MAC_IP核模块、时间同步模块九大模块;从节点时间触发以太网端系统包括主机模块、总线接口模块、专用控制协议模块、配置模块、发送处理模块、接收处理模块、第一链路层MAC_IP核模块、第二链路层MAC_IP核模块、时间同步模块九大模块;其中,以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端,描述各模块的功能:
所述主节点时间触发以太网端系统的主机模块的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块;
所述从节点时间触发以太网端系统的主机模块的应用程序,接收来自板卡的数据并进行应用;
所述主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中;发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统;接收链路延迟请求帧,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中;发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统;为拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作;将数据交给网口发送出去;
所述从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中;发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中;接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中;移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据;
所述主节点时间触发以太网端系统的时间同步模块,记录时间同步sync帧发送的时刻t1;记录链路延迟请求帧的到达时刻t4;
所述从节点时间触发以太网端系统的时间同步模块,记录时间同步sync帧到达的时刻t2;记录时间同步链路延迟请求帧的发送时刻t3;从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正;
所述主节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等;
所述从节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;
所述主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统;将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统;对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息;根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理;根据时间调度表的内容,生成出队信息;根据出队信息,将拟发送的数据从队列中取出;数据从队列中取出之后,为其添加SN序列号,并将其同时交给两个链路层MAC_IP核模块;
所述从节点时间触发以太网端系统的发送处理模块,将时间调度表的版本号发送给主节点时间触发以太网端系统;
所述主节点时间触发以太网端系统的总线接口模块,对拟发送的用户数据和管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区;
所述从节点时间触发以太网端系统的总线接口模块,将板卡接收到的数据发送给主机模块;
所述主节点时间触发以太网端系统的专用控制协议模块,解析管理数据存储区的管理数据;
所述从节点时间触发以太网端系统的专用控制协议模块解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机;
所述主节点时间触发以太网端系统的接收处理模块,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号;
所述从节点时间触发以太网端系统的接收处理模块,分别提取来自两个链路层MAC_IP核数据的类型、业务号、帧长、SN序列号;比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据;比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据;按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据;按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据;去除收到的两个数据的SN序列号。
为了实现上述目的,本发明的方法主节点时间触发以太网端系统和从节点时间触发以太网端系统可互为发送端和接收端,其中,以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端的具体步骤如下:
(1)同步主节点与从节点的时间:
(1a)将主节点时间触发以太网端系统作为主时钟,其第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,主节点时间触发以太网端系统的时间同步模块记录时间同步sync帧发送的时刻t1,主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中;
(1b)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,从节点时间触发以太网端系统的时间同步模块记录时间同步sync帧到达的时刻t2,从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;
(1c)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统;
(1d)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中;
(1e)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,从节点时间触发以太网端系统的时间同步模块记录时间同步链路延迟请求帧的发送时刻t3,从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中;
(1f)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收链路延迟请求帧,主节点时间触发以太网端系统的时间同步模块记录链路延迟请求帧的到达时刻t4,主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中;
(1g)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统;
(1h)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中;
(1i)从节点时间触发以太网端系统的时间同步模块,从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正;
(2)检查时间调度表版本号:
(2a)主节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中,从节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;
(2b)从节点时间触发以太网端系统的发送处理模块,将时间调度表的版本号发送给主节点时间触发以太网端系统;
(2c)主节点时间触发以太网端系统的接收处理模块,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号;
(2d)主节点时间触发以太网端系统的配置模块,判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等,若是,则执行步骤(2e),否则,执行步骤(2f);
(2e)主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统;
(2f)主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统;
(3)总线接口处理拟发送的数据:
(3a)主节点时间触发以太网端系统的主机模块的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块;
(3b)主节点时间触发以太网端系统的总线接口模块,对拟发送的用户数据和管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区;
(4)解析拟发送的管理数据:
(4a)主节点时间触发以太网端系统的专用控制协议模块,解析管理数据存储区的管理数据;
(4b)将目的MAC地址是主节点时间触发以太网端系统MAC地址的管理数据的数据域交给配置模块;将目的MAC地址是从节点时间触发以太网端系统MAC地址的管理数据交给主节点时间触发以太网端系统的发送处理模块;
(5)发送处理模块处理拟发送的数据:
(5a)主节点时间触发以太网端系统的发送处理模块,对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息;
(5b)主节点时间触发以太网端系统的发送处理模块,根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理;
(5c)主节点时间触发以太网端系统的发送处理模块,根据时间调度表的内容,生成出队信息;
(5d)主节点时间触发以太网端系统的发送处理模块,根据出队信息,将拟发送的数据从队列中取出;
(5e)数据从队列中取出之后,主节点时间触发以太网端系统的发送处理模块为其添加SN序列号,并将其同时交给第一链路层MAC_IP核模块和第二链路层MAC_IP核模块;
(6)链路层MAC_IP核发送数据:
主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,为各自拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作;第一链路层MAC_IP核模块和第二链路层MAC_IP核模块将数据分别交给两个网口发送出去;
(7)链路层MAC_IP核接收数据:
从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,分别移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据;
(8)对接收的数据进行序列号检查与冗余管理:
(8a)从节点时间触发以太网端系统的接收处理模块,分别提取来自两个链路层MAC_IP核数据的类型、业务号、帧长、SN序列号;
(8b)从节点时间触发以太网端系统的接收处理模块,比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据;
(8c)从节点时间触发以太网端系统的接收处理模块,比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据;
(8d)从节点时间触发以太网端系统的接收处理模块,按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据;
(8e)从节点时间触发以太网端系统的接收处理模块,按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据;
(9)存储接收的数据:
(9a)从节点时间触发以太网端系统的接收处理模块,去除收到的两个数据的SN序列号;
(9b)将用户数据存储到用户数据存储区,将管理数据存储到管理数据存储区;
(10)解析接收到的管理数据:
从节点时间触发以太网端系统的专用控制协议模块解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机;
(11)总线接口接收数据:
在接收数据过程中,从节点时间触发以太网端系统的总线接口模块,将板卡接收到的数据发送给主机模块;
(12)主机应用程序接收数据并进行应用:
从节点时间触发以太网端系统的主机模块的应用程序,接收来自板卡的数据并进行应用。
本发明与现有技术相比具有以下优点:
第一,由于本发明装置中的专用控制协议模块,可以用于解析管理数据存储区的管理数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机,克服了现有技术的装置中存在的仅考虑了用户数据的传输,没有考虑管理数据的传输的问题,使得本发明能够实际应用在时间触发以太网的网络场景中。
第二,由于本发明装置中的发送处理模块,可以用于将拟发送的数据从队列中取出后,为其添加SN序列号,并将其同时交给两个链路层MAC_IP核模块,克服了现有技术的装置中存在的没有考虑数据的冗余传输,无法保证网络数据传输的可靠性的问题,使得本发明能够保证数据传输过程中的可靠性,提高了网络的稳健性。
第三,由于本发明方法中同步主节点和从节点的时间,采用精确时钟同步协议IEEE 1588,克服了现有技术的方法中使用不成熟的AS SAE6802协议实现时间同步,在硬件上实现复杂且可靠性较低,时间同步稳定度和精度也较低的问题,使得本发明的方法降低了硬件实现网络同步方案的难度,增加了网络时间同步的可靠性,提高了时间同步的稳定度和同步精度。
附图说明
图1为本发明装置的方框图;
图2为本发明方法的流程图。
具体实施方式
下面结合附图对本发明做进一步的描述。
参照附图1,对本发明的装置做进一步的描述。
本发明的装置包括一个主节点时间触发以太网端系统和一个从节点时间触发以太网端系统,主节点时间触发以太网端系统和从节点时间触发以太网端系统可互为发送端和接收端。
主节点时间触发以太网端系统包括主机模块1、总线接口模块2、专用控制协议模块3、配置模块4、发送处理模块5、接收处理模块6、第一链路层MAC_IP核模块7、第二链路层MAC_IP核模块8、时间同步模块9共九大模块。从节点时间触发以太网端系统包括主机模块1、总线接口模块2、专用控制协议模块3、配置模块4、发送处理模块5、接收处理模块6、第一链路层MAC_IP核模块7、第二链路层MAC_IP核模块8、时间同步模块9共九大模块。
本发明的装置以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端来描述各模块的功能。
主节点时间触发以太网端系统的主机模块1的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块2。
从节点时间触发以太网端系统的主机模块1的应用程序,接收来自板卡的数据并进行应用。
主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中。发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统;接收链路延迟请求帧,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中;发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统;为拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作;将数据交给网口发送出去。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中;发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中;接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中;移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据。
主节点时间触发以太网端系统的时间同步模块9,记录时间同步sync帧发送的时刻t1;记录链路延迟请求帧的到达时刻t4。
从节点时间触发以太网端系统的时间同步模块9,记录时间同步sync帧到达的时刻t2;记录时间同步链路延迟请求帧的发送时刻t3;从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正。
主节点时间触发以太网端系统的配置模块4,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等。
从节点时间触发以太网端系统的配置模块4,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中。
主节点时间触发以太网端系统的发送处理模块5,数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统;将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统;对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息;根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理;根据时间调度表的内容,生成出队信息;根据出队信息,将拟发送的数据从队列中取出;数据从队列中取出之后,为其添加SN序列号,并将其同时交给第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8。
从节点时间触发以太网端系统的发送处理模块5,将时间调度表的版本号发送给主节点时间触发以太网端系统。
主节点时间触发以太网端系统的总线接口模块2,对拟发送的用户数据和管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区。
从节点时间触发以太网端系统的总线接口模块2,将板卡接收到的数据发送给主机模块。
主节点时间触发以太网端系统的专用控制协议模块3,解析管理数据存储区的管理数据。
从节点时间触发以太网端系统的专用控制协议模块3解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机。
主节点时间触发以太网端系统的接收处理模块6,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号。
从节点时间触发以太网端系统的接收处理模块6,分别提取来自两个链路层MAC_IP核数据的类型、业务号、帧长、SN序列号;比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据;比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据;按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据;按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据;去除收到的两个数据的SN序列号。
本发明的方法可用于主节点时间触发以太网端系统和从节点时间触发以太网端系统可互为发送端和接收端的情形。
下面参照附图2,对本发明以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端的实现方法做进一步的描述。
步骤1,同步主节点与从节点的时间。
将主节点时间触发以太网端系统作为主时钟,其第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,主节点时间触发以太网端系统的时间同步模块9记录时间同步sync帧发送的时刻t1,主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,从节点时间触发以太网端系统的时间同步模块9记录时间同步sync帧到达的时刻t2,从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;
主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,从节点时间触发以太网端系统的时间同步模块9记录时间同步链路延迟请求帧的发送时刻t3,从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中。
主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,接收链路延迟请求帧,主节点时间触发以太网端系统的时间同步模块9记录链路延迟请求帧的到达时刻t4,主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中。
主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中。
从节点时间触发以太网端系统的时间同步模块9,从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正;计算主从节点端系统的时间偏差公式如下:
其中,toffset表示主从节点端系统的时间偏差,t2表示时间同步sync帧的到达时间,t1表示时间同步sync帧的发送时间,t4表示时间同步延迟请求的到达时间,t3表示时间同步延迟请求的发送时间。
步骤2,检查时间调度表版本号。
第1步,主节点时间触发以太网端系统的配置模块4,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中,从节点时间触发以太网端系统的配置模块4,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中。
第2步,从节点时间触发以太网端系统的发送处理模块5,将时间调度表的版本号发送给主节点时间触发以太网端系统。
第3步,主节点时间触发以太网端系统的接收处理模块6,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号。
第4步,主节点时间触发以太网端系统的配置模块4,判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等,若是,则执行本步骤的第5步,否则,执行本步骤的第6步。
第5步,主节点时间触发以太网端系统的发送处理模块5,将数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统。
第6步,主节点时间触发以太网端系统的发送处理模块5,将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统。
步骤3,总线接口处理拟发送的数据。
主节点时间触发以太网端系统的主机模块1的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块2。
主节点时间触发以太网端系统的总线接口模块2,对拟发送的用户数据和拟发送的管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区。
步骤4,解析拟发送的管理数据。
主节点时间触发以太网端系统的专用控制协议模块3,解析管理数据存储区的管理数据。
将目的MAC地址是主节点时间触发以太网端系统MAC地址的管理数据的数据域交给配置模块4;将目的MAC地址是从节点时间触发以太网端系统MAC地址的管理数据交给主节点时间触发以太网端系统的发送处理模块5。
步骤5,发送处理模块处理拟发送的数据。
主节点时间触发以太网端系统的发送处理模块5,对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息。
主节点时间触发以太网端系统的发送处理模块5,根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理。
主节点时间触发以太网端系统的发送处理模块5,根据时间调度表的内容,生成出队信息。
主节点时间触发以太网端系统的发送处理模块5,根据出队信息,将拟发送的数据从队列中取出。
数据从队列中取出之后,主节点时间触发以太网端系统的发送处理模块5为其添加SN序列号,并将其同时交给第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8。
步骤6,链路层MAC_IP核发送数据。
主节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,为各自拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作。第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8将数据分别交给两个网口发送出去。
以太网帧头是由前导码和帧起始符组成,前导码为7个字节的十六进制数据0x55,帧起始符为1个字节的十六进制数据0xd5。
数据长度为46个字节到1500个字节。
步骤7,链路层MAC_IP核接收数据。
从节点时间触发以太网端系统的第一链路层MAC_IP核模块7和第二链路层MAC_IP核模块8,分别移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据。
以太网帧头是由前导码和帧起始符组成,前导码为7个字节的十六进制数据0x55,帧起始符为1个字节的十六进制数据0xd5。
数据长度是46个字节到1500个字节。
步骤8,对接收的数据进行序列号检查与冗余管理。
从节点时间触发以太网端系统的接收处理模块6,分别提取来自两个链路层MAC_IP核7数据的类型、业务号、帧长、SN序列号。
从节点时间触发以太网端系统的接收处理模块6,比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据。
从节点时间触发以太网端系统的接收处理模块6,比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据。
从节点时间触发以太网端系统的接收处理模块6,按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据。
从节点时间触发以太网端系统的接收处理模块6,按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据。
步骤9,存储接收的数据。
从节点时间触发以太网端系统的接收处理模块6,去除收到的两个数据的SN序列号。
将用户数据存储到用户数据存储区,将管理数据存储到管理数据存储区。
步骤10,解析接收到的管理数据。
从节点时间触发以太网端系统的专用控制协议模块3解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置模块4,否则通过总线接口模块2发送给主机模块1。
步骤11,总线接口接收数据。
在接收数据过程中,从节点时间触发以太网端系统的总线接口模块2,将板卡接收到的数据发送给主机模块1。
步骤12,主机应用程序接收数据并进行应用。
从节点时间触发以太网端系统的主机模块1的应用程序,接收来自板卡的数据并进行应用。
Claims (5)
1.一种实现时间触发以太网端系统的装置,包括一个主节点时间触发以太网端系统和一个从节点时间触发以太网端系统,主节点时间触发以太网端系统和从节点时间触发以太网端系统可互为发送端和接收端;主节点时间触发以太网端系统包括主机模块、总线接口模块、专用控制协议模块、配置模块、发送处理模块、接收处理模块、第一链路层MAC_IP核模块、第二链路层MAC_IP核模块、时间同步模块九大模块;从节点时间触发以太网端系统包括主机模块、总线接口模块、专用控制协议模块、配置模块、发送处理模块、接收处理模块、第一链路层MAC_IP核模块、第二链路层MAC_IP核模块、时间同步模块九大模块;其中,以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端,描述各模块的功能:
所述主节点时间触发以太网端系统的主机模块的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块;
所述从节点时间触发以太网端系统的主机模块的应用程序,接收来自板卡的数据并进行应用;
所述主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中;发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统;接收链路延迟请求帧,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中;发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统;为拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作;将数据交给网口发送出去;
所述从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中;发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中;接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中;移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据;
所述主节点时间触发以太网端系统的时间同步模块,记录时间同步sync帧发送的时刻t1;记录链路延迟请求帧的到达时刻t4;
所述从节点时间触发以太网端系统的时间同步模块,记录时间同步sync帧到达的时刻t2;记录时间同步链路延迟请求帧的发送时刻t3;从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正;
所述主节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等;
所述从节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;
所述主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统;将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统;对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息;根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理;根据时间调度表的内容,生成出队信息;根据出队信息,将拟发送的数据从队列中取出;数据从队列中取出之后,为其添加SN序列号,并将其同时交给第一链路层MAC_IP核模块和第二链路层MAC_IP核模块;
所述从节点时间触发以太网端系统的发送处理模块,将时间调度表的版本号发送给主节点时间触发以太网端系统;
所述主节点时间触发以太网端系统的总线接口模块,对拟发送的用户数据和管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区;
所述从节点时间触发以太网端系统的总线接口模块,将板卡接收到的数据发送给主机模块;
所述主节点时间触发以太网端系统的专用控制协议模块,解析管理数据存储区的管理数据;
所述从节点时间触发以太网端系统的专用控制协议模块解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机;
所述主节点时间触发以太网端系统的接收处理模块,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号;
所述从节点时间触发以太网端系统的接收处理模块,分别提取来自两个链路层MAC_IP核数据的类型、业务号、帧长、SN序列号;比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据;比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据;按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据;按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据;去除收到的两个数据的SN序列号。
2.一种实现时间触发以太网端系统的方法,其特征在于,主节点时间触发以太网端系统与从节点时间触发以太网端系统可互为发送端和接收端,其中,以主节点时间触发以太网端系统作为发送端,从节点时间触发以太网端系统作为接收端的具体步骤如下:
(1)同步主节点与从节点的时间:
(1a)将主节点时间触发以太网端系统作为主时钟,其第一链路层MAC_IP核模块和第二链路层MAC_IP核模块依据精确时钟同步IEEE 1588协议,发送时间同步sync帧给从节点时间触发以太网端系统,主节点时间触发以太网端系统的时间同步模块记录时间同步sync帧发送的时刻t1,主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t1存储到主节点时间触发以太网端的时间戳缓存区中;
(1b)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,依据精确时钟同步IEEE 1588协议,接收时间同步sync帧,从节点时间触发以太网端系统的时间同步模块记录时间同步sync帧到达的时刻t2,从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t2存储到从节点时间触发以太网端系统时间戳缓存区中;
(1c)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送携带时刻t1的时间同步跟随帧给从节点时间触发以太网端系统;
(1d)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收时间同步跟随帧,从该帧中解析出时刻t1,并将时刻t1存储到从节点时间触发以太网端系统时间戳缓存区中;
(1e)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送时间同步链路延迟请求帧给主节点时间触发以太网端系统,从节点时间触发以太网端系统的时间同步模块记录时间同步链路延迟请求帧的发送时刻t3,从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t3存储到从节点时间触发以太网端系统的时间戳缓存区中;
(1f)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收链路延迟请求帧,主节点时间触发以太网端系统的时间同步模块记录链路延迟请求帧的到达时刻t4,主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,将时刻t4存储到主节点时间触发以太网端系统的时间戳缓存区中;
(1g)主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,发送携带时刻t4的链路延迟应答帧给从节点时间触发以太网端系统;
(1h)从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,接收链路延迟应答帧,从该帧中解析出时刻t4,并将时刻t4存储到从节点时间触发以太网端系统的时间戳缓存区中;
(1i)从节点时间触发以太网端系统的时间同步模块,从时间戳缓存区中依次取出t1、t2、t3、t4四个时刻值,并计算从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差,将时间偏差累加到本地时钟上,完成时间校正;
(2)检查时间调度表版本号:
(2a)主节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中,从节点时间触发以太网端系统的配置模块,将存储芯片中的时间调度表加载到可编程逻辑芯片FPGA中;
(2b)从节点时间触发以太网端系统的发送处理模块,将时间调度表的版本号发送给主节点时间触发以太网端系统;
(2c)主节点时间触发以太网端系统的接收处理模块,接收从节点时间触发以太网端系统发送过来的时间调度表的版本号;
(2d)主节点时间触发以太网端系统的配置模块,判断收到的时间调度表版本号是否与自身加载的时间调度表版本号相等,若是,则执行步骤(2e),否则,执行步骤(2f);
(2e)主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为1的帧,发送给从节点时间触发以太网端系统;
(2f)主节点时间触发以太网端系统的发送处理模块,将数据域携带的内容为0以及正确的时间调度表的帧,发送给从节点时间触发以太网端系统;
(3)总线接口处理拟发送的数据:
(3a)主节点时间触发以太网端系统的主机模块的应用程序生成拟发送的数据,应用程序通过调用总线接口驱动程序,将拟发送的数据发送到主节点时间触发以太网端系统的总线接口模块;
(3b)主节点时间触发以太网端系统的总线接口模块,对拟发送的用户数据和管理数据分流,将拟发送的用户数据存储到用户数据存储区,将拟发送的管理数据存储到管理数据存储区;
(4)解析拟发送的管理数据:
(4a)主节点时间触发以太网端系统的专用控制协议模块,解析管理数据存储区的管理数据;
(4b)将目的MAC地址是主节点时间触发以太网端系统MAC地址的管理数据的数据域交给配置模块;将目的MAC地址是从节点时间触发以太网端系统MAC地址的管理数据交给主节点时间触发以太网端系统的发送处理模块;
(5)发送处理模块处理拟发送的数据:
(5a)主节点时间触发以太网端系统的发送处理模块,对拟发送的数据进行分组处理,将数据帧的业务类型、业务号、帧长等信息提取出来,生成入队信息;
(5b)主节点时间触发以太网端系统的发送处理模块,根据入队信息,将拟发送的数据缓存到不同的队列;根据业务调度模块的信息进行出队管理;
(5c)主节点时间触发以太网端系统的发送处理模块,根据时间调度表的内容,生成出队信息;
(5d)主节点时间触发以太网端系统的发送处理模块,根据出队信息,将拟发送的数据从队列中取出;
(5e)数据从队列中取出之后,主节点时间触发以太网端系统的发送处理模块为其添加SN序列号,并将其同时交给第一链路层MAC_IP核模块和第二链路层MAC_IP核模块;
(6)链路层MAC_IP核发送数据:
主节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,为各自拟发送的数据添加以太网帧头,检测拟发送数据长度,对长度小于46个字节的数据进行填充操作;第一链路层MAC_IP核模块和第二链路层MAC_IP核模块将数据分别交给两个网口发送出去;
(7)链路层MAC_IP核接收数据:
从节点时间触发以太网端系统的第一链路层MAC_IP核模块和第二链路层MAC_IP核模块,分别移除接收的数据的以太网帧头,对接收的数据长度进行检查,丢弃掉长度小于46个字节或者大于1500个字节的数据;
(8)对接收的数据进行序列号检查与冗余管理:
(8a)从节点时间触发以太网端系统的接收处理模块,分别提取来自两个链路层MAC_IP核数据的类型、业务号、帧长、SN序列号;
(8b)从节点时间触发以太网端系统的接收处理模块,比较每一个当前接收的数据SN序列号与接收的上一个数据的SN序列号的大小,如果当前数据的SN序列号大于上一个数据的SN序列号,则表示当前数据通过序列号检查;否则,表示当前数据未通过序列号检查,丢弃该数据;
(8c)从节点时间触发以太网端系统的接收处理模块,比较接收的两个数据的SN序列号是否相同,如果相同,丢弃接收到的两个数据中到达时刻较晚的数据,只保留接收到的两个数据中到达时刻较早的数据;否则,保留两个接收到的数据;
(8d)从节点时间触发以太网端系统的接收处理模块,按照接收时间调度表对时间触发数据进行接收窗口检查,如果时间触发数据到来的时刻在接收窗口内,则表示该数据通过接收窗口检查;否则,表示该数据未通过接收窗口检查,丢弃该数据;
(8e)从节点时间触发以太网端系统的接收处理模块,按照配置模块内规定的带宽对事件触发数据进行限流操作,如果事件触发数据的带宽小于规定值,则该事件触发数据带宽满足要求;否则,表示该事件触发数据带宽过大,丢弃该数据;
(9)存储接收的数据:
(9a)从节点时间触发以太网端系统的接收处理模块,去除收到的两个数据的SN序列号;
(9b)将用户数据存储到用户数据存储区,将管理数据存储到管理数据存储区;
(10)解析接收到的管理数据:
从节点时间触发以太网端系统的专用控制协议模块解析数据,如果解析出的数据是对板卡的配置信息则将其传递给配置管理模块,否则通过总线接口模块发送给主机;
(11)总线接口接收数据:
在接收数据过程中,从节点时间触发以太网端系统的总线接口模块,将板卡接收到的数据发送给主机模块;
(12)主机应用程序接收数据并进行应用:
从节点时间触发以太网端系统的主机模块的应用程序,接收来自板卡的数据并进行应用。
3.根据权利要求2所述的一种实现时间触发以太网端系统的方法,其特征在于,步骤(1i)中所述的从节点时间触发以太网节点端系统与主节点时间触发以太网端系统的时间偏差是由下式计算得到的:
<mrow>
<msub>
<mi>t</mi>
<mrow>
<mi>o</mi>
<mi>f</mi>
<mi>f</mi>
<mi>s</mi>
<mi>e</mi>
<mi>t</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mo>(</mo>
<msub>
<mi>t</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>t</mi>
<mn>1</mn>
</msub>
<mo>)</mo>
<mo>-</mo>
<mo>(</mo>
<msub>
<mi>t</mi>
<mn>4</mn>
</msub>
<mo>-</mo>
<msub>
<mi>t</mi>
<mn>3</mn>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
</mrow>
其中,toffset表示主从节点端系统的时间偏差,t2表示时间同步sync帧的到达时间,t1表示时间同步sync帧的发送时间,t4表示时间同步延迟请求的到达时间,t3表示时间同步延迟请求的发送时间。
4.根据权利要求2所述的一种实现时间触发以太网端系统的方法,其特征在于,步骤(6)、步骤(7)中所述的以太网帧头是由前导码和帧起始符组成,其中,前导码为7个字节的十六进制数据0x55,帧起始符为1个字节的十六进制数据0xd5。
5.根据权利要求2所述的一种实现时间触发以太网端系统的方法,其特征在于,步骤(6)、步骤(7)中所述的数据长度为46个字节到1500个字节。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711143817.4A CN107819539B (zh) | 2017-11-17 | 2017-11-17 | 一种实现时间触发以太网端系统的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711143817.4A CN107819539B (zh) | 2017-11-17 | 2017-11-17 | 一种实现时间触发以太网端系统的装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107819539A true CN107819539A (zh) | 2018-03-20 |
CN107819539B CN107819539B (zh) | 2019-04-19 |
Family
ID=61609325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711143817.4A Active CN107819539B (zh) | 2017-11-17 | 2017-11-17 | 一种实现时间触发以太网端系统的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107819539B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632080A (zh) * | 2018-03-23 | 2018-10-09 | 西安电子科技大学 | 一种基于统计优化的网络业务流量生成方法 |
CN108650312A (zh) * | 2018-05-03 | 2018-10-12 | 西安电子科技大学 | 支持实时数据抢占的mac ip核装置及数据传输方法 |
CN108712224A (zh) * | 2018-05-10 | 2018-10-26 | 西安电子科技大学 | 最小时延最大匹配的时间触发业务调度表生成方法 |
CN108712351A (zh) * | 2018-05-24 | 2018-10-26 | 西安电子科技大学 | 基于双平面的时间触发以太网交换机及分组交换方法 |
CN108769285A (zh) * | 2018-05-24 | 2018-11-06 | 西安电子科技大学 | 时间触发以太网业务的分层编址方法 |
CN108777609A (zh) * | 2018-05-24 | 2018-11-09 | 西安电子科技大学 | 在tte网络中避免tt业务与et业务输出冲突的方法 |
CN109412968A (zh) * | 2018-10-08 | 2019-03-01 | 西安微电子技术研究所 | 一种时间触发以太网端节点的冗余通信接收管理系统及方法 |
CN110505157A (zh) * | 2019-08-26 | 2019-11-26 | 电子科技大学 | 一种适应时间触发网络的分类调度方法及装置 |
CN111107020A (zh) * | 2019-12-31 | 2020-05-05 | 盛科网络(苏州)有限公司 | 一种多核心以太网交换芯片时间同步的方法 |
CN111800213A (zh) * | 2020-06-19 | 2020-10-20 | 西安电子科技大学 | 面向高速tte级联网络1588同步方法、系统、装置 |
CN112804121A (zh) * | 2021-01-08 | 2021-05-14 | 中国商用飞机有限责任公司北京民用飞机技术研究中心 | 一种tte网络传输时延测试系统、方法 |
CN113114590A (zh) * | 2021-03-05 | 2021-07-13 | 西安电子科技大学 | Tte交换机中as6802同步帧透明传输系统及方法 |
CN113141320A (zh) * | 2021-03-01 | 2021-07-20 | 西安电子科技大学 | 一种速率受限业务规划调度的系统、方法及应用 |
CN113630203A (zh) * | 2021-07-22 | 2021-11-09 | 广州致远电子有限公司 | 一种多设备触发同步方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447931B1 (en) * | 2005-12-09 | 2008-11-04 | Rockwell Automation Technologies, Inc. | Step time change compensation in an industrial automation network |
CN102255803A (zh) * | 2011-07-06 | 2011-11-23 | 北京航空航天大学 | 一种适用于时间触发交换式网络的周期调度时刻表构建方法 |
CN105227497A (zh) * | 2015-10-16 | 2016-01-06 | 北京航空航天大学 | 一种嵌入于时间触发以太网交换机的可变时间触发流量仲裁中心保卫系统 |
-
2017
- 2017-11-17 CN CN201711143817.4A patent/CN107819539B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447931B1 (en) * | 2005-12-09 | 2008-11-04 | Rockwell Automation Technologies, Inc. | Step time change compensation in an industrial automation network |
CN102255803A (zh) * | 2011-07-06 | 2011-11-23 | 北京航空航天大学 | 一种适用于时间触发交换式网络的周期调度时刻表构建方法 |
CN105227497A (zh) * | 2015-10-16 | 2016-01-06 | 北京航空航天大学 | 一种嵌入于时间触发以太网交换机的可变时间触发流量仲裁中心保卫系统 |
Non-Patent Citations (2)
Title |
---|
刘晚春等: "时间触发以太网同步及调度机制的研究", 《航空计算技术》 * |
郭秦: "实时性容错以太网交换机的电路设计", 《北京交通大学硕士学位论文》 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632080A (zh) * | 2018-03-23 | 2018-10-09 | 西安电子科技大学 | 一种基于统计优化的网络业务流量生成方法 |
CN108632080B (zh) * | 2018-03-23 | 2021-03-02 | 西安电子科技大学 | 一种基于统计优化的网络业务流量生成方法 |
CN108650312B (zh) * | 2018-05-03 | 2020-12-08 | 西安电子科技大学 | 支持实时数据抢占的mac ip核装置及数据传输方法 |
CN108650312A (zh) * | 2018-05-03 | 2018-10-12 | 西安电子科技大学 | 支持实时数据抢占的mac ip核装置及数据传输方法 |
CN108712224A (zh) * | 2018-05-10 | 2018-10-26 | 西安电子科技大学 | 最小时延最大匹配的时间触发业务调度表生成方法 |
CN108712224B (zh) * | 2018-05-10 | 2019-07-16 | 西安电子科技大学 | 最小时延最大匹配的时间触发业务调度表生成方法 |
CN108712351A (zh) * | 2018-05-24 | 2018-10-26 | 西安电子科技大学 | 基于双平面的时间触发以太网交换机及分组交换方法 |
CN108769285A (zh) * | 2018-05-24 | 2018-11-06 | 西安电子科技大学 | 时间触发以太网业务的分层编址方法 |
CN108777609A (zh) * | 2018-05-24 | 2018-11-09 | 西安电子科技大学 | 在tte网络中避免tt业务与et业务输出冲突的方法 |
CN108777609B (zh) * | 2018-05-24 | 2021-05-14 | 西安电子科技大学 | 在tte网络中避免tt业务与et业务输出冲突的方法 |
CN108769285B (zh) * | 2018-05-24 | 2021-01-05 | 西安电子科技大学 | 时间触发以太网业务的分层编址方法 |
CN108712351B (zh) * | 2018-05-24 | 2020-11-03 | 西安电子科技大学 | 基于双平面的时间触发以太网交换机及分组交换方法 |
CN109412968A (zh) * | 2018-10-08 | 2019-03-01 | 西安微电子技术研究所 | 一种时间触发以太网端节点的冗余通信接收管理系统及方法 |
CN109412968B (zh) * | 2018-10-08 | 2023-04-07 | 西安微电子技术研究所 | 一种时间触发以太网端节点的冗余通信接收管理系统及方法 |
CN110505157A (zh) * | 2019-08-26 | 2019-11-26 | 电子科技大学 | 一种适应时间触发网络的分类调度方法及装置 |
CN111107020A (zh) * | 2019-12-31 | 2020-05-05 | 盛科网络(苏州)有限公司 | 一种多核心以太网交换芯片时间同步的方法 |
CN111107020B (zh) * | 2019-12-31 | 2022-01-11 | 苏州盛科通信股份有限公司 | 一种多核心以太网交换芯片时间同步的方法 |
CN111800213A (zh) * | 2020-06-19 | 2020-10-20 | 西安电子科技大学 | 面向高速tte级联网络1588同步方法、系统、装置 |
CN111800213B (zh) * | 2020-06-19 | 2021-10-26 | 西安电子科技大学 | 面向高速tte级联网络1588同步方法、系统、装置 |
CN112804121A (zh) * | 2021-01-08 | 2021-05-14 | 中国商用飞机有限责任公司北京民用飞机技术研究中心 | 一种tte网络传输时延测试系统、方法 |
CN112804121B (zh) * | 2021-01-08 | 2022-07-08 | 中国商用飞机有限责任公司北京民用飞机技术研究中心 | 一种tte网络传输时延测试系统、方法 |
CN113141320A (zh) * | 2021-03-01 | 2021-07-20 | 西安电子科技大学 | 一种速率受限业务规划调度的系统、方法及应用 |
CN113114590A (zh) * | 2021-03-05 | 2021-07-13 | 西安电子科技大学 | Tte交换机中as6802同步帧透明传输系统及方法 |
CN113630203A (zh) * | 2021-07-22 | 2021-11-09 | 广州致远电子有限公司 | 一种多设备触发同步方法 |
CN113630203B (zh) * | 2021-07-22 | 2023-10-27 | 广州致远电子股份有限公司 | 一种多设备触发同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107819539B (zh) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107819539A (zh) | 一种实现时间触发以太网端系统的装置及方法 | |
CN108881056A (zh) | 一种拥塞控制方法、网络设备及其网络接口控制器 | |
CN106850466A (zh) | 一种时间触发网络中数据包的转发方法及装置 | |
CN107948094A (zh) | 一种高速数据帧无冲突入队处理的装置及方法 | |
CN109194433B (zh) | 基于千兆afdx网络的高精度授时方法 | |
CN105556916B (zh) | 网络流的信息统计方法和装置 | |
EP2530888A1 (en) | Method, apparatus and system for data transmission | |
EP1766876A2 (en) | Technique for transferring data over a packet switched network | |
CN103746878B (zh) | 一种测定SpaceWire数据包的传输时间的仿真系统 | |
CN108667845A (zh) | 一种低延迟的处理机载以太网音频流的系统和方法 | |
CN108429596B (zh) | 一种用于IEEE 1588v2协议的以太网MAC模块实现装置及实现方法 | |
CN106533871A (zh) | 一种基于afdx总线的发布订阅方法和系统 | |
CN111211990B (zh) | 一种数据包处理方法和装置 | |
CN101110780A (zh) | 一种传输控制数据流的方法和装置以及系统 | |
CN105814852B (zh) | 降低端到端网络报文传输延迟的传输和接收设备 | |
CN106571991A (zh) | 一种数据传输方法及装置 | |
CN104009982B (zh) | 基于超短波电台的文件分组群发装置及文件分组群发方法 | |
CN104994181B (zh) | 一种分布式olt系统中显示动态mac地址表的方法 | |
CN101127690A (zh) | 一种下一代网络业务流量识别方法 | |
CN104461982B (zh) | 一种对1394总线事件消息定时发送的处理方法及电路 | |
CN103746789B (zh) | 一种基于cpu通用定时器来实现ieee‑1588协议中高精度时标的方法 | |
CN102790663B (zh) | 一种应用于vlbi硬件相关处理机的全硬件网络接口 | |
CN109005150A (zh) | 基于以太网mac地址的无链接通信方法及系统 | |
CN108833436B (zh) | 一种实现设备通信互联的通信控制方法 | |
CN101267390B (zh) | 异步时延网络通信方法及其系统、缓存处理装置 |
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 |