CN102984088B - 应用于afdx交换机确保帧转发顺序一致性的方法 - Google Patents

应用于afdx交换机确保帧转发顺序一致性的方法 Download PDF

Info

Publication number
CN102984088B
CN102984088B CN201210541514.9A CN201210541514A CN102984088B CN 102984088 B CN102984088 B CN 102984088B CN 201210541514 A CN201210541514 A CN 201210541514A CN 102984088 B CN102984088 B CN 102984088B
Authority
CN
China
Prior art keywords
fifo
request
state
frame
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.)
Active
Application number
CN201210541514.9A
Other languages
English (en)
Other versions
CN102984088A (zh
Inventor
杨爱良
李修杰
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.)
China Aeronautical Radio Electronics Research Institute
Original Assignee
China Aeronautical Radio Electronics Research Institute
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 China Aeronautical Radio Electronics Research Institute filed Critical China Aeronautical Radio Electronics Research Institute
Priority to CN201210541514.9A priority Critical patent/CN102984088B/zh
Publication of CN102984088A publication Critical patent/CN102984088A/zh
Application granted granted Critical
Publication of CN102984088B publication Critical patent/CN102984088B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开了一种应用于AFDX交换机的确保数据帧转发顺序与接收顺序保持一致性的方法。请求锁存根据请求通道的请求信号的状态将所有通道的请求状态锁存并写入FIFO中。请求处理根据锁存请求的FIFO的状态(即非空时),读出FIFO中的数据,根据数据位的顺序和状态,产生VL校验请求信号。根据请求信号,对应通道的VL校验模块进行交验后,将校验后的帧信息数据写入VL校验后帧信息数据队列FIFO。帧数据搬移模块根据VL校验后帧信息数据队列FIFO的信息将数据帧转存至帧存缓冲区。本发明利用请求锁存和排队处理的方法,确保了数据帧转发顺序的一致性,适合硬件实现。

Description

应用于AFDX交换机确保帧转发顺序一致性的方法
技术领域
本发明属于网络通信领域,特别涉及应用于AFDX交换机的确保数据帧转发顺序与接收顺序保持一致的方法。
背景技术
AFDX(Avionics Full Duplex Switched Ethernet)网络作为新兴的航空电子总线标准,以普通以太网为基础,在终端和交换机中均加入了流量控制策略,从而保证航电系统中数据传输的实时性。
AFDX交换机是AFDX网络中的核心部件。航电系统中对AFDX交换机的数据帧转发的可靠性、数据实时性、数据帧转发的顺序性有严格的要求,不同于普通的商业交换机,它不光要实现各个终端间的数据转发,同时还有支持AFDX网络中的虚拟链路(Virtual Link),为各个虚拟链路执行流量策略,并且保证数据在交换机的交换过程中具有确定的可预计延迟时间。
在现有技术中,一般采用时间片轮转的方法,将接收到的帧先进行VL(Virtual Link)校验,然后再将数据搬移到帧缓冲区进行数据的转发。由于在时间片轮转过程中,会存在后到的数据帧先进行校验,从而先进行转发,这样无法保证数据帧先到先转发,也就是无法确保帧数据接收顺序与转发顺序的一致性。
发明内容
针对已有技术存在的不足,本发明的目的在于提供一种应用于AFDX交换机确保帧转发顺序一致性的方法,该方法通过对端口接收完成包后的请求信号进行锁存和处理,来实现数据帧转发顺序与接收帧的顺序保持一致。
本发明的发明目的是通过如下技术方案实现的。
一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,包括如下步骤:
1)、请求锁存模块根据请求通道的请求信号的状态(即任意请求通道的请求信号有效时),将所有通道的请求状态锁存并写入FIFO(First Input First Out)中;
2)、请求处理模块根据锁存请求模块的FIFO的状态,即非空时,读出FIFO中的数据,根据数据位的顺序和状态,产生VL校验请求信号;
3)、根据VL校验请求信号,对应通道的VL校验模块进行交验后,将校验后的帧信息数据写入VL校验后帧信息数据队列FIFO;
4)、帧数据搬移模块根据VL校验后帧信息数据队列FIFO将数据帧转存至帧存缓冲区。
所述请求锁存模块由一个寄存器、一个或操作单元、一个移位寄存器和一个FIFO组成。当N个请求任意一个或多个有效时(即为一个时钟周期的高电平),或操作单元将N个请求的状态锁存到寄存器中,同时产生一个写信号,移位寄存器将写信号后移一个时钟周期,即在下一个时钟周期将寄存器中锁存的N个请求的状态写入FIFO中,供后续模块处理。
所述请求处理模块包括REQ_TDM(请求处理调度)状态机、VL校验请求产生模块和FIFO读信号产生模块。所述REQ_TDM状态机根据FIFO的状态以及读出的FIFO数据进行状态的转换,以控制VL校验请求产生模块来产生VL校验请求信号和FIFO读信号产生模块来产生FIFO读信号。
本发明主要针对航空电子系统的AFDX交换机,采用FPGA(FieldProgrammable Gate Array)实现接收端口的请求锁存、请求处理功能和VL校验后帧信息数据队列FIFO,以确保数据帧转发的顺序与接收的顺序保持一致,满足AFDX交换机中对帧转发顺序一致性的需求,同时该发明也可应用于具有相同需求的处理系统中,具有一定的应用前景。
附图说明
图1为本发明方法的原理框图;
图2为本发明请求锁存功能模块的原理框图;
图3为本发明请求处理功能模块的原理框图;
图4为本发明REQ_TDM状态机状态转换图。
具体实施方式
下面结合附图1—图4进一步说明本发明是如何实现的。
实施例
本发明方法主要包括请求锁存模块,请求处理功能模块和VL校验后帧信息数据队列FIFO。其原理结构框图如图1所示:请求锁存模块根据请求通道的请求信号的状态(即任意请求通道的请求信号有效时),将所有通道的请求状态锁存并写入FIFO中。请求处理模块根据锁存请求的FIFO的状态(即非空时),读出FIFO中的数据,根据数据位的顺序和状态,产生VL校验请求信号。根据请求信号,对应通道的VL校验模块进行交验后,将校验后的帧信息数据写入VL校验后帧信息数据队列FIFO。帧数据搬移模块根据VL校验后帧信息数据队列FIFO将数据帧转存至帧存缓冲区。
请求锁存模块采用锁存器和FIFO的结构,如图2所示:请求锁存功能由一个寄存器、一个或操作单元、一个移位寄存器和一个FIFO组成。当N个请求任意一个或多个有效时(即为一个时钟周期的高电平),或操作单元将N个请求的状态锁存到寄存器中,同时产生一个写信号。移位寄存器将写信号后移一个时钟周期。即在下一个时钟周期将寄存器中锁存的N个请求的状态写入FIFO中,供后续模块处理。
请求处理模块将从FIFO中读出的请求数据位的状态产生VL校验请求。该功能模块包括REQ_TDM状态机、VL校验请求产生模块和FIFO读信号产生模块,如图3所示:REQ_TDM状态机根据FIFO的状态以及读出的FIFO数据进行状态的转换,以控制VL校验请求产生模块来产生VL校验请求信号和FIFO读信号产生模块来产生FIFO读信号。
REQ_TDM状态机的状态转换图如图4所示:
当Reset|Global_Rst|(Global_State==`Global_State_INIT)有效时,状态机进入IDLE状态;
当状态机处于IDLE状态时,如果FIFO非空,则状态机进入FIFO_Q_IN状态,否则仍停留于IDLE状态;
当状态机处于FIFO_Q_IN状态时,如果Reqfifo_Rdreq_R2有效(即FIFO读有效信号延迟两个时钟周期),则状态机进入SLOT_READY状态,否则仍停留于FIFO_Q_IN状态;
当状态机处于SLOT_READY状态时,如果Port_Request_Reg[0]=1’b1,则状态机进入ISLOT0状态。如果Port_Request_Reg[1:0]=2’b10,则状态机进入ISLOT1状态。如果Port_Request_Reg[2:0]=3’b100,则状态机进入ISLOT2状态。如果Port_Request_Reg[3:0]=4’b1000,则状态机进入ISLOT3状态。如果Port_Request_Reg[4:0]=5’b10000,则状态机进入ISLOT4状态。如果Port_Request_Reg[5:0]=6’b100000,则状态机进入ISLOT5状态。如果Port_Request_Reg[6:0]=7’b100000,则状态机进入ISLOT6状态。以此类推,如果Port_Request_Reg[N-1]=1’b1,Port_Request_Reg[N-2:0]=0,则状态机进入ISLOT(N-1)状态。如果Port_Request_Reg[N-1:0]=0,且!Reqfifo_Empty,则进入FIFO_Q_IN状态,如果Port_Request_Reg[N-1:0]=0,且Reqfifo_Empty,则状态机进入IDLE状态。如果否则仍停留于SLOT_READY状态;
当状态机处于ISLOTn(n=0,1,……,N-2)状态时,如果Port_Request_Reg[m+n]=1’b1(其中m=1,……,N-n-1),且Port_Request_Reg[m+n-1:n]=0(其中其中m=1,……,N-n-1),则状态机进入ISLOT(m+n)(其中其中m=1,……,N-n-1)状态。如果Port_Request_Reg[N-1:n+1]=0,且!Reqfifo_Empty,则进入FIFO_Q_IN状态,如果Port_Request_Reg[N-1:n+1]=0,且Reqfifo_Empty,则状态机进入IDLE状态。如果否则仍停留于ISLOTn状态;
当状态机处于ISLOT(N-1)状态时,如果!Reqfifo_Empty,则进入FIFO_Q_IN状态,如果Reqfifo_Empty,则状态机进入IDLE状态。如果否则仍停留于ISLOT(N-1)状态。
VL校验请求产生模块根据REQ_TDM状态机所处的状态产生请求VLCheck_Irq[N-1:0]信号。产生的原则为,当REQ_TDM状态机处于ISLOTn(n=0,1,……,N-1)状态时,则产生通道n的请求信号,以便该通道的VL校验模块进行VL校验。
FIFO读信号产生模块产生FIFO读信号的原理是:
当Reset|Global_Rst|(Global_State==`Global_State_INIT)有效时,FIFO读信号输出无效状态;
当REQ_TDM状态机处于IDLE状态时,如果!Reqfifo_Empty,则FIFO读信号输出有效状态;
当REQ_TDM状态机处于FIFO_Q_IN状态时,FIFO读信号输出无效状态;
当REQ_TDM状态机处于SLOT_READY状态时,当读出的FIFO数据为0,且!Reqfifo_Empty,则FIFO读信号输出有效状态,否则FIFO读信号输出无效状态;
当REQ_TDM状态机处于ISLOTn(n=0,1,……,N-2)状态时,如果读出的FIFO数据Port_Request_Reg[N-1:n+1]=0,!Reqfifo_Empty且计数为k时(k为校验所需的时钟周期数),则FIFO读信号输出有效状态,否则FIFO读信号输出无效状态;
当REQ_TDM状态机处于ISLOT(N-1)状态时,如果!Reqfifo_Empty且计数为k时(k为校验所需的时钟周期数),则FIFO读信号输出有效状态,否则FIFO读信号输出无效状态。
VL校验后帧信息数据队列FIFO
各通道的VL校验模块根据请求处理功能产生的请求信号,进行数据帧的VL校验,然后将校验后的帧信息数据存入VL校验后帧信息数据队列FIFO。
经过验证,本发明采用锁存和排队处理的机制有效的保证了AFDX交换机中数据帧的接收和转发的顺序的一致性。

Claims (5)

1.一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,包括如下步骤:
1)、请求锁存模块根据请求通道的请求信号的状态,将所有通道的请求状态锁存并写入FIFO中;
2)、请求处理模块在请求锁存模块的FIFO的状态为非空状态时,读出FIFO中的数据,根据数据位的顺序和状态,产生VL校验请求信号,并VL校验请求信号送入相应的VL校验模块;
3)、VL校验模块根据VL校验请求信号进行校验后,将校验后的帧信息数据写入VL校验后帧信息数据队列FIFO;
4)、帧数据搬移模块根据VL校验后帧信息数据队列FIFO将数据帧转存至帧存缓冲区。
2.根据权利要求1所述的一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,请求锁存模块由一个寄存器、一个或操作单元、一个移位寄存器和一个FIFO组成。
3.根据权利要求2所述的一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,当N个请求任意一个或多个有效时,或操作单元将N个请求的状态锁存到寄存器中,同时产生一个写信号,移位寄存器将写信号后移一个时钟周期,即在下一个时钟周期将寄存器中锁存的N个请求的状态写入FIFO中,供后续模块处理。
4.根据权利要求1所述的一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,所述请求处理模块包括REQ_TDM状态机、VL校验请求产生模块和FIFO读信号产生模块。
5.根据权利要求4所述的一种应用于AFDX交换机确保帧转发顺序一致性的方法,其特征在于,所述REQ_TDM状态机根据FIFO的状态以及读出的FIFO数据进行状态的转换,以控制VL校验请求产生模块来产生VL校验请求信号和FIFO读信号产生模块来产生FIFO读信号。
CN201210541514.9A 2012-12-13 2012-12-13 应用于afdx交换机确保帧转发顺序一致性的方法 Active CN102984088B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210541514.9A CN102984088B (zh) 2012-12-13 2012-12-13 应用于afdx交换机确保帧转发顺序一致性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210541514.9A CN102984088B (zh) 2012-12-13 2012-12-13 应用于afdx交换机确保帧转发顺序一致性的方法

Publications (2)

Publication Number Publication Date
CN102984088A CN102984088A (zh) 2013-03-20
CN102984088B true CN102984088B (zh) 2015-10-07

Family

ID=47857846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210541514.9A Active CN102984088B (zh) 2012-12-13 2012-12-13 应用于afdx交换机确保帧转发顺序一致性的方法

Country Status (1)

Country Link
CN (1) CN102984088B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533869B (zh) * 2016-11-08 2020-10-20 北京飞利信电子技术有限公司 数据转发方法及装置、电子设备
CN112073279B (zh) * 2020-08-27 2022-05-20 中国航空无线电电子研究所 一种兼容通用AFDX的nanoAFDX网络通信系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859282A (zh) * 2005-10-22 2006-11-08 华为技术有限公司 一种存储器的控制器及控制方法
WO2009030706A1 (fr) * 2007-09-03 2009-03-12 Airbus France Dispositif de commutation de trames
CN101902504A (zh) * 2009-05-27 2010-12-01 北京神州飞航科技有限责任公司 航空电子全双工交换式以太网网卡及其集成化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859282A (zh) * 2005-10-22 2006-11-08 华为技术有限公司 一种存储器的控制器及控制方法
WO2009030706A1 (fr) * 2007-09-03 2009-03-12 Airbus France Dispositif de commutation de trames
CN101902504A (zh) * 2009-05-27 2010-12-01 北京神州飞航科技有限责任公司 航空电子全双工交换式以太网网卡及其集成化方法

Also Published As

Publication number Publication date
CN102984088A (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
CN105005546B (zh) 一种内置交点队列的异步axi总线结构
US7392331B2 (en) System and method for transmitting data packets in a computer system having a memory hub architecture
CN101841420B (zh) 面向片上网络的低延迟路由器结构
CN102098216B (zh) 一种基于共享存储的航空全双工交换式以太网afdx协议交换引擎
US10686714B2 (en) Traffic management for high-bandwidth switching
CN101383712A (zh) 一种片上网络的路由节点微结构
Ouyang et al. LOFT: A high performance network-on-chip providing quality-of-service support
EP2898641A1 (en) Ultra low latency network buffer storage
CN103595627A (zh) 基于多播维序路由算法的NoC路由器及其路由算法
Li et al. Time-triggered switch-memory-switch architecture for time-sensitive networking switches
US7385925B2 (en) Data flow control method for simultaneous packet reception
TW201620273A (zh) 晶片上網路之時序功率估算裝置與方法
CN105681131B (zh) 主备系统及其并行输出方法
CN104717160A (zh) 交换机及调度算法
CN102984088B (zh) 应用于afdx交换机确保帧转发顺序一致性的方法
CN103023669A (zh) 基于交换网络的一种广播调度方法
CN104009942A (zh) 一种千兆afdx交换机及其交换方法
Liu et al. A dynamic adaptive arbiter for Network-on-Chip
CN103166863B (zh) 集总式8x8低延迟高带宽交叉点缓存队列片上路由器
US7965705B2 (en) Fast and fair arbitration on a data link
CN105262705A (zh) 一种基于当值缓存降低片上网络静态功耗的方法
CN204145526U (zh) 带双主控模块的can总线中继器
CN107276845B (zh) 一种轨道交通领域的具有容错功能的实时数据调度方法
CN103023807B (zh) 分布式8x8低延迟高带宽交叉点缓存队列片上路由器
CN105049377A (zh) 基于Crossbar架构的AFDX交换机数据总线结构及数据交换方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant