CN113328926B - 一种fc-ae-1553和fc-ae-asm的混合网络系统 - Google Patents
一种fc-ae-1553和fc-ae-asm的混合网络系统 Download PDFInfo
- Publication number
- CN113328926B CN113328926B CN202010128747.0A CN202010128747A CN113328926B CN 113328926 B CN113328926 B CN 113328926B CN 202010128747 A CN202010128747 A CN 202010128747A CN 113328926 B CN113328926 B CN 113328926B
- Authority
- CN
- China
- Prior art keywords
- asm
- node
- frame
- data
- session
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6402—Hybrid switching fabrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6421—Medium of transmission, e.g. fibre, cable, radio, satellite
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6464—Priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6489—Buffer Management, Threshold setting, Scheduling, Shaping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种FC‑AE‑1553和FC‑AE‑ASM的混合网络系统,包括:上位机和节点卡;节点卡内部包括多个独立的节点,在上位机的配置下多个独立的节点设置成并行工作的多个FC‑AE‑1553节点和/或FC‑AE‑ASM节点;在数据发送时,所述上位机发送控制指令到对应节点,使节点将发送数据生成与节点类型对应的FC帧发送到光纤网络中;在数据接收时,所述节点卡从光纤网络中接收FC帧数据,在对应的节点中进行解析后发送到上位机;当存在多个节点同时发送数据或接收数据时,节点卡通过轮询调度,按照优先级从所述多个节点中仲裁出数据发送的顺序,逐个节点进行数据发送或数据接收。本发明简化了FC‑AE‑1553、FC‑AE‑ASM混合网络结构,减小了FC‑AE‑1553、FC‑AE‑ASM混合网络系统的体积,降低了FC‑AE‑1553、FC‑AE‑ASM混合网络所需的成本。
Description
技术领域
本发明涉及通信技术领域,尤其是一种FC-AE-1553和FC-AE-ASM的混合网络系统。
背景技术
光纤通道(Fiber Channel,FC)是由美国国际信息技术标准委员会(INCITS)于1998年制定的一种高速串行通信协议。MIL-STD-1553B总线是由美国国防部于1978年公布的军用命令/响应式多路复用数据总线。作为FC-AE(Fiber Channel AvionicsEnvironment,光纤通道航空电子环境)协议簇中的一员,FC-AE-1553协议是由MIL-STD-1553B总线协议映射到光纤通道协议的适用于FC网络的一种命令/响应式网络通信协议,具有高可靠性、高带宽、强实时性、强兼容性等特点,被广泛用于航空航天等军用电子环境中通信设备之间的数据传输和指挥控制等技术领域。FC-AE-ASM是FC-AE(Fiber ChannelAvionics Environment,光纤通道航空电子环境)协议子集中另一种应用广泛的上层协议,主要应用于军事和商业环境下的航空电子各设备之间指令控制、信号处理、传感器及视频等数据传输。
FC-AE-1553、FC-AE-ASM并行工作网络是由FC-AE-1553节点卡,FC-AE-ASM节点卡和FC交换机等设备组成的网络。在传统的FC-AE-1553、FC-AE-ASM混合网络中,一张FC-AE-1553节点卡只能作为FC-AE-1553、FC-AE-ASM混合网络中的一个FC-AE-1553节点,且每个FC-AE-1553节点只能作为NC(Network Controller,网络控制器)节点或者NT(NetworkTerminal网络终端)节点,一张FC-AE-ASM节点卡同样只能作为FC-AE-1553、FC-AE-ASM混合网络中的一个ASM节点。
目前,由于节点卡的NC、NT和ASM功能是互斥的,同一时刻节点卡只能作为NC节点或NT节点或者ASM节点,需要用户切换节点卡的NC、NT和ASM功能,相当于还是一张节点卡对应一个节点,一张节点卡不能具有多个可以同时并行工作的节点。
因此在一个传统的大型FC-AE-1553、FC-AE-ASM混合网络中,随着FC-AE-1553节点,FC-AE-ASM节点数量的增多,所需FC-AE-1553节点卡以及FC-AE-ASM节点卡的总量也在不断增多,而不断增多的FC-AE-1553节点、FC-AE-ASM节点与交换机复杂的互联关系也造成FC-AE-1553、FC-AE-ASM混合网络结构更加复杂,网络的监控与管理工作也变得更加繁琐;同时,随着节点卡和交换机数目的增多,搭建FC-AE-1553、FC-AE-ASM混合网络的成本也会随之增高,搭建整个网络系统所需的物理空间也会相应增大,这也在一定程度上阻碍了诸如军用小型无人机等对体积、重量要求较高的军用飞行控制系统向轻小型化方向发展。
发明内容
鉴于上述的分析,本发明旨在提供一种FC-AE-1553和FC-AE-ASM的混合网络系统;解决传统FC-AE-1553、FC-AE-ASM混合网络中节点卡只作为NC节点或NT节点或ASM节点导致的功能单一和所组成的网络结构复杂、体积大、成本高问题。
本发明公开了一种FC-AE-1553和FC-AE-ASM的混合网络系统,包括:上位机和节点卡;
所述节点卡内部包括多个独立的节点,在上位机的配置下所述多个独立的节点设置成并行工作的多个FC-AE-1553节点和/或FC-AE-ASM节点;所述FC-AE-1553节点包括NC节点和/或NT节点;
在数据发送时,所述上位机发送控制指令到对应节点,使所述节点将发送数据生成与节点类型对应的FC帧发送到光纤网络中;
在数据接收时,所述节点卡从光纤网络中接收FC帧数据,在对应的节点中进行解析后发送到上位机;
当存在多个节点同时发送数据或接收数据时,所述节点卡通过轮询调度,按照优先级从所述多个节点中仲裁出数据发送的顺序,逐个节点进行数据发送或数据接收。
进一步地,所述轮询调度包括两轮轮询:
第一轮轮询:从多个FC-AE-1553节点的会话状态机以及FC-AE-ASM节点的ASM消息状态机中检测是否同时有写数据请求和/或读数据请求,如果有,则挑选优先级最高的节点的写数据请求和/或读数据请求发送到上位机进行数据操作,发送后,将该节点的写数据请求或者读数据请求的优先级降为最低,依此轮询所有同时有写数据请求或者读数据请求的节点,仲裁出当前服务节点;
第二轮轮询:按读写优先级从从当前服务节点的读数据请求和/或写数据请求中挑选一个请求发送到上位机;
所述第一轮轮询中优先级的顺序由高到低依此为NC节点、NT节点和FC-AE-ASM节点;所述第二轮轮询中优先级中读数据请求优先级高于写数据请求。
进一步地,所述上位机包括控制模块和数据缓存模块;
所述控制模块,用于将节点卡中的各节点配置成FC-AE-1553的NC节点、NT节点或FC-AE-ASM节点;
数据缓存模块位于主机内存空间,用于为所述节点卡中的每个节点提供一个独立的驱动缓存空间;
在数据发送时,所述控制模块生成FC-AE-1553会话和/或FC-AE-ASM消息;在生成FC-AE-1553会话时将待发送数据和会话描述符放入数据缓存模块中与FC-AE-1553节点对应的驱动缓存空间,会话结束后所述控制模块从与FC-AE-1553节点对应的驱动缓存空间中提取会话数据和会话描述符;在生成FC-AE-ASM消息时,所述控制模块将待发送数据以及ASM描述符放入与FC-AE-ASM节点对应的驱动缓存空间,在接收完成FC-AE-ASM消息后,所述控制模块从与FC-AE-ASM节点对应的驱动缓存空间中提取ASM帧有效数据和ASM描述符。
进一步地,所述与FC-AE-1553节点对应的驱动缓存空间中包括1553发送数据缓存、1553接收数据缓存、会话描述符缓存和会话描述符指针缓存;
所述1553发送数据缓存,用于封装FC-AE-1553帧时填充帧的Payload数据;
所述1553接收数据缓存,用于接收处理FC-AE-1553帧时存储帧的Payload数据;
会话描述符缓存,用于存储每个FC-AE-1553会话的会话描述符;
会话描述符指针缓存,用于存储完成FC-AE-1553会话后更新的会话描述符写指针;
所述与FC-AE-ASM节点对应的驱动缓存空间中包括ASM发送数据缓存、ASM接收数据缓存、ASM描述符缓存和ASM描述符指针缓存;
所述ASM发送数据缓存,用于封装FC-AE-ASM帧时填充帧的Payload数据;
所述ASM接收数据缓存,用于接收处理FC-AE-ASM帧时存储帧的Payload数据;
所述ASM描述符缓存,用于存储每个ASM帧的信息;
ASM描述符指针缓存:用于存储判断ASM消息是否完成的ASM描述符写指针。
进一步地,所述节点卡包括接口模块、多通道收发模块和光模块;
所述接口模块用于连接上位机和收发模块,进行上位机和收发模块之间的数据传输交换;
所述光模块用于连接所述多通道收发模块与光纤网络,进行数据的光电转换;
所述多通道收发模块,包括独立并行的多通道NC节点、NT节点和/或FC-AE-ASM节点;在所述上位机的控制下,在对应的节点通道中,将所述发送数据组成与节点类型对应的FC帧,通过光模块发送到光纤网络中;或者通过所述光模块从光纤网络中接收FC帧数据,在对应的节点通道中对FC帧数据进行解析后发送到上位机。
进一步地,所述多通道收发模块包括FC-AE-1553会话状态机、FC-AE-ASM状态机、读写请求调度模块、寄存器模块、完成报文处理模块、帧发送调度模块、帧接收处理模块、帧发送FIFO、帧接收FIFO、光纤通道收发模块;
所述FC-AE-1553会话状态机,包括1个用于实现NC节点功能的NC会话状态机和k个用于实现NT节点功能的NT1~NTk会话状态机,用于开启会话时读取会话描述符、帧封装发送与接收处理、完成会话时生成并存储会话描述符;
FC-AE-ASM状态机,包括1个用于实现ASM节点功能的ASM状态机,用于开启ASM消息发送时读取ASM描述符、ASM待发送帧数据,实现帧封装发送以及接收ASM帧处理、完成接收ASM帧处理后生成并存储ASM描述符;
读写请求调度模块,用于轮询调度来自NC会话状态机、NT1~NTk会话状态机以及ASM状态机的读数据请求和写数据请求,仲裁出一个读数据请求或写数据请求作为当前服务的请求,并通知接口模块将仲裁出的请求组成对应的报文发送到与接口模块连接的总线上;
寄存器模块,用于存储上位机对节点卡节点的配置信息,包括NC节点、NT节点、ASM节点各自的FC_ID和若干个组播FC_ID构成的FC_ID路由表、NC节点开启会话的会话描述符写指针、ASM节点的描述符写指针、NC节点、NT节点和ASM节点各自缓存空间中的各类缓存的基地址、NC会话状态机的工作模式;
完成报文处理模块,用于从接口模块获取读写请求调度模块完成的报文送往对应的NC会话状态机、NT会话状态机或ASM状态机;
帧发送调度模块,用于从NC会话状态机和NT1~NTk会话状态机以及ASM消息状态机的帧发送FIFO中轮询仲裁出一个作为当前服务的FIFO,并从该FIFO中读取一帧送往光纤通道收发模块;
帧接收处理模块,用于存储上位机配置的NC节点、NT1~NTk节点和ASM节点的FC_ID和若干个组播FC_ID构成的FC_ID路由表,以及在每接收到一帧后,根据该帧的D_ID查询FC_ID路由表,将此帧写入对应节点的帧接收FIFO或者复制写入多个节点的帧接收FIFO;
帧发送FIFO:用于存储NC会话状态机或NT会话状态机或ASM消息状态机发送的帧,每个节点的状态机均对应有一个帧发送FIFO;
帧接收FIFO:用于存储帧接收处理模块接收的帧,每个节点的状态机均对应有一个帧接收FIFO;
光纤信道收发模块与光模块连接,用于实现数据的串/并转换、8b/10b编解码和位宽变换。
进一步地,所述接口模块为PCI-E接口,用于为轮询仲裁出的写数据请求或者读数据请求组建对应的驱动缓存空间的读请求TLP报文或写请求TLP报文,并将组成的读请求TLP报文或写请求TLP报文送往PCI-E总线,同时,PCI-E接口模块从PCI-E总线提取完成报文送往完成报文处理模块。
进一步地,所述NC节点的NC会话状态机的工作模式为监控模式或非监控模式,在非监控模式下,NC会话状态机发挥网络控制的功能;在监控模式下,NC会话状态机作为网络中的监控节点,监听网络所有流量。
进一步地,FC_ID路由表由FC_ID及k+2位路由组成,k+2位路由从高到低分别表示是否要将当前接收帧送往NC节点或NT1~NTk节点或ASM节点的帧接收FIFO中;当NC会话状态机处于监控模式时,当前FC-AE-1553帧除了会被帧接收处理模块写入对应节点的帧接收FIFO外,还会复制一份写入NC节点的帧接收FIFO中,而如果当前接收到的帧是FC-AE-ASM帧时,不管NC会话状态机是否处于监控模式,帧接收处理模块都不会复制一份写入NC节点的帧接收FIFO中;当NC会话状态机处于非监控模式时,若当前帧的D_ID不在FC_ID路由表内,则帧接收处理模块丢弃该帧。
进一步地,PCI-E接口模块为读写请求调度模块轮询仲裁出的读数据请求组建读数据请求TLP报文时,将对应的读数据请求TLP报文的Tag字段填为对应的节点的编号;完成报文处理模块从接收到的完成报文中提取Tag字段时,根据当前完成报文的Tag字段值,将完成报文送往与Tag字段值对应的NC会话状态机或NT会话状态机;读写请求调度模块输出写数据请求时,通过不同的写数据请求地址对应不同的驱动缓存空间。
本发明的有益效果如下:
1、本发明中,每张节点卡内集成了可以并行工作的多个FC-AE-1553节点以及FC-AE-ASM节点,解决了传统的节点卡功能单一的问题,简化了FC-AE-1553、FC-AE-ASM混合网络结构,减小了FC-AE-1553、FC-AE-ASM混合网络系统的体积,降低了FC-AE-1553、FC-AE-ASM混合网络所需的成本。
2、本发明中,在FC-AE-1553、FC-AE-ASM混合网络需要的NC节点、NT节点以及ASM节点数量一定的情况下,当一张节点卡可以包含更多的NC节点、NT节点以及ASM节点时,整个网络中的节点卡和交换机的数量也会随之减少,从而可以达到简化网络结构、提高FC-AE-1553、FC-AE-ASM混合网络的监控与管理效率。
3、本发明中,FC-AE-1553、FC-AE-ASM混合网络中包含更少的节点卡和交换机等网络设备,极大地降低了搭建整个FC-AE-1553、FC-AE-ASM混合网络系统的成本,也较大幅度地节省了FC-AE-1553、FC-AE-ASM混合网络中网络设备占用的总空间。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为本发明实施例1中的混合网络系统原理示意图;
图2为本发明实施例2中的存储器读请求、存储器写请求和完成报文格式;
图3为本发明实施例3中的FC-AE-1553、FC-AE-ASM混合网络结构图;
图4为本发明实施例3中的节点卡1、节点卡2内部配置的FC_ID路由表;
图5为本发明实施例3中的会话1、会话2和ASM的通信过程示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。
实施例1
本实施例公开了一种FC-AE-1553和FC-AE-ASM的混合网络系统,如图1所示,包括:上位机和节点卡;
其中,所述节点卡内部包括多个独立的节点,在上位机的配置下所述多个独立的节点设置成并行工作的多个FC-AE-1553节点和/或FC-AE-ASM节点;所述FC-AE-1553节点包括NC节点和/或NT节点;
在数据发送时,所述上位机发送控制指令到对应节点,使所述节点将发送数据生成与节点类型对应的FC帧发送到光纤网络中;
在数据接收时,所述节点卡从光纤网络中接收FC帧数据,在对应的节点中进行解析后发送到上位机;
当存在多个节点同时发送数据或接收数据时,所述节点卡通过轮询调度,按照优先级从所述多个节点中仲裁出数据发送的顺序,逐个节点进行数据发送或数据接收。
优选的,所述轮询调度包括两轮轮询:
第一轮轮询:从多个FC-AE-1553节点的会话状态机以及FC-AE-ASM节点的ASM消息状态机中检测是否同时有写数据请求和/或读数据请求,如果有,则挑选优先级最高的节点的写数据请求和/或读数据请求发送到上位机进行数据操作,发送后,将该节点的写数据请求或者读数据请求的优先级降为最低,依此轮询所有同时有写数据请求或者读数据请求的节点,仲裁出当前服务节点;
第二轮轮询:按读写优先级从从当前服务节点的读数据请求和/或写数据请求中挑选一个请求发送到上位机;
所述第一轮轮询中优先级的顺序由高到低依此为NC节点、NT节点和FC-AE-ASM节点;所述第二轮轮询中优先级中读数据请求优先级高于写数据请求。
例如:NC/ASM同时有读数据请求希望能够发送到主机内存中,那么根据优先级的大小,先将NC的读数据请求发送出去,接着降低NC的优先级,如果发送完毕后NC/ASM还是同时有读数据请求,那么此时ASM的优先级会大于NC的优先级,同样的,待发送完毕ASM的读数据请求后,降低ASM的优先级。如此轮询可以保证每个FC-AE-1553节点/FC-AE-ASM节点均可得到发送请求机会。
具体的,所述上位机包括控制模块和数据缓存模块;
所述控制模块,用于将节点卡中的各节点配置成FC-AE-1553的NC节点、NT节点或FC-AE-ASM节点;
数据缓存模块位于主机内存空间,用于为所述节点卡中的每个节点提供一个独立的驱动缓存空间;
在数据发送时,所述控制模块生成FC-AE-1553会话和/或FC-AE-ASM消息;在生成FC-AE-1553会话时将待发送数据和会话描述符放入数据缓存模块中与FC-AE-1553节点对应的驱动缓存空间,会话结束后所述控制模块从与FC-AE-1553节点对应的驱动缓存空间中提取会话数据和会话描述符;在生成FC-AE-ASM消息时,所述控制模块将待发送数据以及ASM描述符放入与FC-AE-ASM节点对应的驱动缓存空间,在接收完成FC-AE-ASM消息后,所述控制模块从与FC-AE-ASM节点对应的驱动缓存空间中提取ASM帧有效数据和ASM描述符。
优选的,所述与FC-AE-1553节点对应的驱动缓存空间中包括1553发送数据缓存、1553接收数据缓存、会话描述符缓存和会话描述符指针缓存。
所述1553发送数据缓存,用于封装FC-AE-1553帧时填充帧的Payload数据。
所述1553接收数据缓存,用于接收处理FC-AE-1553帧时存储帧的Payload数据。
会话描述符缓存,用于存储每个FC-AE-1553会话的会话描述符;
具体的,上位机的控制模块每生成一次会话,将该会话的会话描述符填入NC节点的会话描述符缓存,通知NC会话状态机读取会话描述符并开启会话;NC会话状态机或NT会话状态机完成一次会话后,生成当前会话的会话描述符并写入对应节点的会话描述符缓存;每个FC-AE-1553节点均拥有一套用于判断会话是否完成并且控制模块及节点卡已知的会话描述符读写指针,会话描述符读写指针包括会话描述符写指针和会话描述符读指针;控制模块生成的会话描述符由会话模式、D_ID、发送数据量/接收数据量、数据在缓存存放的起始地址组成;NC会话状态机或NT会话状态机生成的会话描述符由数据在缓存存放的起始地址、发送数据量/接收数据量、OX_ID和会话状态信息组成。
会话描述符指针缓存,用于存储完成FC-AE-1553会话后更新的会话描述符写指针;以通知上位机的控制模块当前会话已完成。
所述与FC-AE-ASM节点对应的驱动缓存空间中包括ASM发送数据缓存、ASM接收数据缓存、ASM描述符缓存和ASM描述符指针缓存;
所述ASM发送数据缓存,用于封装FC-AE-ASM帧时填充帧的Payload数据。
所述ASM接收数据缓存,用于接收处理FC-AE-ASM帧时存储帧的Payload数据。
所述ASM描述符缓存,用于存储每个ASM帧的信息;
具体为:上位机的控制模块每产生一次ASM帧发送请求,就会将ASM描述符填入ASM描述符缓存区内,然后通知ASM状态机读取ASM描述符并开始一次ASM消息发送流程;当ASM状态机完成一次ASM帧的接收、解析、上传后,ASM状态机会将此帧的ASM描述符写入相应ASM描述符缓存中。每个FC-AE-ASM节点均拥有一套用于判断ASM消息是否完成并且上位机的控制模块及节点卡均已知的ASM描述符读写指针,ASM描述符读写指针包括ASM描述符写指针和ASM描述符读指针;上位机的控制模块生成的ASM描述符由ASM帧类型、D_ID、发送数据量、数据在缓存区存放的起始地址组成;ASM状态机生成的ASM描述符由数据在缓存区存放的起始地址、接收数据量、OX_ID以及ASM状态信息组成。
ASM描述符指针缓存:用于存储判断ASM消息是否完成的ASM描述符写指针。以通知应用软件当前ASM消息已完成接收并已经将有效Payload写入主机内存中。
具体的,所述节点卡包括接口模块、多通道收发模块和光模块;
所述接口模块用于连接上位机和收发模块,进行上位机和收发模块之间的数据传输交换;
优选的,所述接口模块为PCI-E接口。
所述光模块用于连接所述多通道收发模块与光纤网络,进行数据的光电转换;
所述多通道收发模块,包括独立并行的多通道NC节点、NT节点和/或FC-AE-ASM节点;在所述上位机的控制下,在对应的节点通道中,将所述发送数据组成与节点类型对应的FC帧,通过光模块发送到光纤网络中;或者通过所述光模块从光纤网络中接收FC帧数据,在对应的节点通道中对FC帧数据进行解析后发送到上位机。
优选的,所述所述接口模块和多通道收发模块可采用包括FPGA在内的可编程逻辑器件通过软件无线电的方式生成。
更具体的,所述多通道收发模块包括FC-AE-1553会话状态机、FC-AE-ASM状态机、读写请求调度模块、寄存器模块、完成报文处理模块、帧发送调度模块、帧接收处理模块、帧发送FIFO、帧接收FIFO、光纤通道收发模块;
所述FC-AE-1553会话状态机,包括1个用于实现NC节点功能的NC会话状态机和k个用于实现NT节点功能的NT1~NTk会话状态机,用于开启会话时读取会话描述符、帧封装发送与接收处理、完成会话时生成并存储会话描述符;
本实施例中,“帧”为命令帧、数据帧和状态帧的统称,即待发送或接收的帧可以是这三种帧的任意一种,命令帧、数据帧和状态帧均包含SOF、帧头、Payload数据(可为0字节)、CRC、EOF,帧头包括D_ID、OX_ID等。对于不带Payload数据的帧的封装发送及接收处理,FC-AE-1553会话状态机在内部完成。FC-AE-1553会话状态机封装带Payload数据的帧时,要向该FC-AE-1553会话状态机对应的节点的发送数据缓存发起存储器读请求,并从完成报文提取有效负载填充该帧的Payload字段;接收处理带Payload数据的帧时,要向该FC-AE-1553会话状态机对应的节点的接收数据缓存发起存储器写请求,并将Payload数据存入该节点的接收数据缓存。其中,NC会话状态机可配置为监控模式或非监控模式,在非监控模式下,NC会话状态机作为NC节点,发挥网络控制的功能;在监控模式下,NC会话状态机作为网络中的监控节点,监听网络所有流量。
FC-AE-ASM状态机,包括1个用于实现ASM节点功能的ASM状态机,用于开启ASM消息发送时读取ASM描述符、ASM待发送帧数据,实现帧封装发送以及接收ASM帧处理、完成接收ASM帧处理后生成并存储ASM描述符;
本实施例中,“ASM帧”为符合FC-AE-ASM协议标准的FC帧,ASM帧由SOF、FC通用帧头、Payload数据(可为0字节)、CRC、EOF组成。对于不带Payload数据的ASM帧的封装发送及接收处理,FC-AE-ASM状态机在内部完成。对于携带Payload数据的ASM帧在封装时,要向该FC-AE-ASM状态机对应节点的发送数据缓存发起存储器读请求,并从PCI-E发往该ASM节点的完成报文中提取有效负载填充该帧的Payload字段;在接收处理携带Payload数据的ASM帧时,要向该FC-AE-ASM状态机对应的节点的接收数据缓存发起存储器写请求,并将Payload数据存入该节点的接收数据缓存。
读写请求调度模块,用于轮询调度来自NC会话状态机、NT1~NTk会话状态机以及ASM状态机的读数据请求和写数据请求,仲裁出一个读数据请求或写数据请求作为当前服务的请求,并通知PCI-E接口模块将仲裁出的请求组成对应的报文发送到与接口模块连接的总线上;
所述读写请求调度模块用于解决多个NC会话状态机或NT会话状态机或ASM状态机同时发起读数据请求和写数据请求,而PCI-E接口模块只能提供串行额处理存储器读数据请求和写数据请求问题,轮询调度方法如上所述。
特别地,对于读数据请求,读写请求调度模块会为当前服务的读数据请求标注上节点编号(NC节点、NT1~NTk、ASM节点分别对应编号0~k+1),通知PCI-E接口模块在组成读数据请求TLP报文时,将Tag字段填充为对应的节点的编号值,以区分不同节点(NC节点、NT1~NTk节点和ASM节点)的读数据请求TLP报文。
PCI-E接口模块为读写请求调度模块轮询仲裁出的当前服务的读数据请求组建对应的读数据请求TLP报文,并将组成的读数据请求TLP报文送往PCI-E总线,同时,PCI-E接口模块从PCI-E总线提取完成报文送往完成报文处理模块。其中,读数据请求TLP报文的Tag字段填入对应节点编号0~k+1,以区分不同NC节点、NT节点和ASM节点的存储器读请求TLP报文。完成报文处理模块从接收到的完成报文中提取Tag字段时,根据当前完成报文的Tag字段值,将完成报文送往与Tag字段值对应的NC会话状态机或NT会话状态机;读写请求调度模块输出写数据请求时,通过不同的写数据请求地址对应不同的驱动缓存空间。
寄存器模块,用于存储上位机对节点卡节点的配置信息,包括NC节点、NT节点、ASM节点各自的FC_ID和若干个组播FC_ID构成的FC_ID路由表、NC节点开启会话的会话描述符写指针、ASM节点的描述符写指针、NC节点、NT节点和ASM节点各自缓存空间中的各类缓存的基地址、NC会话状态机的工作模式
具体的,所述NC节点的NC会话状态机的工作模式为监控模式或非监控模式,在非监控模式下,NC会话状态机发挥网络控制的功能;在监控模式下,NC会话状态机作为网络中的监控节点,监听网络所有流量。
完成报文处理模块,用于从总线上获取读写请求调度模块完成的报文送往对应的NC会话状态机、NT会话状态机或ASM状态机;
完成报文处理模块和PCI-E接口模块均遵循Tag字段值0~k+1分别对应NC节点、NT1-NTk节点、ASM节点的规则。PCI-E接口模块为读写请求调度模块轮询仲裁出的读数据请求TLP报文时,会将对应的存储器读请求TLP报文的Tag字段填为对应的节点的编号;完成报文处理模块会从接收到的完成报文中提取Tag字段,根据当前完成报文的Tag字段值,按上述规则将完成报文送往对应的NC会话状态机或NT会话状态机或ASM状态机。
帧发送调度模块,用于从NC会话状态机和NT1~NTk会话状态机以及ASM消息状态机的帧发送FIFO中轮询仲裁出一个作为当前服务的FIFO,并从该FIFO中读取一帧送往光纤通道收发模块;
帧接收处理模块,用于存储上位机配置的NC节点、NT1~NTk节点和ASM节点的FC_ID和若干个组播FC_ID构成的FC_ID路由表,以及在每接收到一帧后,根据该帧的D_ID查询FC_ID路由表,将此帧写入对应节点的帧接收FIFO或者复制写入多个节点的帧接收FIFO(组播或广播)。
帧接收处理模块中,FC_ID路由表由FC_ID及k+2位路由组成,k+2位路由从高到低分别表示是否要将当前接收帧送往NC节点或NT1~NTk节点或ASM节点的帧接收FIFO中;当NC会话状态机处于监控模式时,当前FC-AE-1553帧除了会被帧接收处理模块写入对应节点的帧接收FIFO外,还会复制一份写入NC节点的帧接收FIFO中,而如果当前接收到的帧是FC-AE-ASM帧时,不管NC会话状态机是否处于监控模式,帧接收处理模块都不会复制一份写入NC节点的帧接收FIFO中;当NC会话状态机处于非监控模式时,若当前帧的D_ID不在FC_ID路由表内,则帧接收处理模块丢弃该帧。
特别地,当NC会话状态机处于监控模式时,当前帧除了会写入对应节点的帧接收FIFO外,还会复制一份写入NC节点的帧接收FIFO中,而不管NC是否是处于监控模式,ASM帧的处理都不会复制并写入NC节点的帧接收FIFO中。当NC会话状态机处于非监控模式时,若当前帧的D_ID不在FC_ID路由表内,则会被帧接收处理模块丢弃。
帧发送FIFO:用于存储NC会话状态机或NT会话状态机或ASM消息状态机发送的帧,每个节点的状态机均对应有一个帧发送FIFO;每个节点的会话状态机的接口信号与对应的帧发送FIFO的接口信号相连。
帧接收FIFO:用于存储帧接收处理模块接收的帧,每个节点的状态机均对应有一个帧接收FIFO;每个节点的会话状态机的接口信号与对应的帧接收FIFO的接口信号相连。
光纤信道收发模块与光模块连接,用于实现数据的串/并转换、8b/10b编解码和位宽变换。
具体的,发送方向上:将待发送帧从并行信号经位宽变换、8b/10b编码和并/串转换转化为串行电信号送往光模块。接收方向上:将光模块送来的串行电信号经串并转换、8b/10b解码和位宽变换转换为并行信号并从中提取完整的帧送往帧接收处理模块。
实施例2
本实施例公开了一种基于实施例1中混合网络系统的FC-AE-1553节点以及ASM节点的并行工作方法。
在本实施例中的会话描述符读写指针分为两种:第一种是作为使能的NC节点才拥有的一套用于开启会话的会话描述符读写指针,即用于应用软件通知FPGA开启会话的会话描述符写指针和会话描述符读指针,上位机生成会话后,更新使能NC节点的会话描述符写指针以通知节点卡中的NC节点开启会话,使能NC节点检测到自己的会话描述符读指针与会话描述符写指针不同时,则表示有会话未开启。第二种是节点卡内包含的所有节点均拥有的一套用于判断会话是否完成并且应用软件及节点卡均已知的会话描述符读写指针,当一方更新会话描述符写指针或会话描述符读指针时,会通知另一方更新对应的指针,即为用于节点卡中的NC节点和NT节点通知应用软件会话完成的会话描述符写指针和会话描述符读指针,某个节点完成会话后会更新自己的会话描述符写指针,应用软件检测到该节点的会话描述符读指针与会话描述符写指针不同时,则表示该节点有会话已完成。
FC-AE-ASM状态机读写指针描述:第一种是用于上位机通知节点卡开启ASM发送的ASM描述符写指针和ASM描述符读指针。当上位机准备发送ASM消息时会更新ASM描述符写指针以通知节点卡中相应的ASM节点开启ASM消息发送,ASM节点检测到ASM描述符写指针与ASM描述符读指针不相等时就会启动一次ASM消息发送操作。第二种是用于节点卡中的ASM节点通知上位机完成一次ASM帧的接收操作的ASM描述符写指针和ASM描述符读指针。当ASM节点从帧解析处理模块上接收到ASM消息并通过PCI-E接口将ASM帧所携带的Payload数据写入接收数据缓存后会更新ASM描述符写指针,当上位机检测到ASM描述符写指针与ASM描述符读指针不一样时表示该ASM节点完成一次ASM消息接收处理操作。
具体的,FC-AE-1553会话状态机
在发送方向上,对带有Payload数据的命令帧、数据帧和状态帧进行封装,需要从FC-AE-1553会话状态机对应的节点的发送数据缓存读取数据以填充帧的Payload字段,对不带Payload数据的命令帧和状态帧,则在FC-AE-1553会话状态机内部完成封装。
在接收方向上,FC-AE-1553会话状态机在处理带Payload数据的命令帧、数据帧和状态帧时,需要将帧的Payload数据写入FC-AE-1553会话状态机对应的节点的接收数据缓存中,对不带Payload的命令帧和状态帧,则在FC-AE-1553会话状态机内部处理完成。
FC-AE-ASM状态机
在发送方向上,对带有Payload数据的ASM帧进行封装,需要从FC-AE-ASM状态机对应的节点的发送数据缓存读取数据并填充帧的Payload字段;对不带Payload数据的ASM帧在FC-AE-ASM状态机内部完成封装。
在接收方向上,处理带Payload数据的ASM帧时,需要将ASM帧的Payload数据写入相应ASM节点的接收数据缓存中,在处理不带Payload数据的ASM帧,则在FC-AE-ASM状态机内部直接完成处理。
下面结合各个模块介绍节点卡发送方向和接收方向数据的处理过程。
FC-AE-1553会话状态机和FC-AE-ASM状态机在发送方向上的数据处理过程如下:
(I-a)、FC-AE-1553会话状态机和FC-AE-ASM状态机根据各自读写指针变化判断上位机希望发送FC-AE-ASM消息还是FC-AE-1553会话。
如果是发送FC-AE-1553会话,FC-AE-1553会话状态机处理上位机一次生成多个会话组成的会话描述符组,并根据会话描述符组中各会话的会话描述符完成命令帧、数据帧和状态帧的封装,若当前待发送的帧带有Payload数据或当前NC会话状态机需要读取会话描述符,FC-AE-1553会话状态机向读写请求调度模块发起存储器读请求,同时将需要读取的缓存空间的地址和长度送往读写请求调度模块。反之,若当前待发送的帧不带Payload数据或NC会话状态机读取到待发送的帧中不包含会话描述符,FC-AE-1553会话状态机内部完成帧的封装,不向读写请求调度模块发起存储器读请求,帧封装完成后,将其写入对应节点的帧发送FIFO,跳转至步骤(I-f)。此外,数据和会话描述符存放的起始地址从寄存器模块获取(针对NT节点)或从会话描述符中提取(针对NC节点),每个节点的会话状态机内部会计算从缓存空间读取数据的地址,其长度由接收或发送的数据量决定。
如果是FC-AE-ASM消息,则FC-AE-ASM状态机处理应用软件存放在发送缓存区的ASM描述符,并根据此描述信息完成ASM帧的封装,若当前待发送的ASM帧带有Payload数据,那么FC-AE-ASM状态机向读写请求调度模块发起存储器读请求,同时将需要读取的缓存空间的地址和长度送往读写请求调度模块。相反的,若当前待发送的ASM帧不带Payload数据,那么FC-AE-ASM状态机内部完成ASM帧的封装,不需要向读写请求调度模块发起存储器读请求,在ASM帧封装完成后,将其写入对应ASM节点的帧发送FIFO,跳转至步骤(I-f)。此外,ASM描述符存放的起始地址从寄存器模块获取,而待发送Payload数据存放的起始地址从ASM描述符中提取,每个ASM节点的状态机会计算从缓存空间中读取数据的地址,其长度由ASM描述符提取。
如果上位机既产生FC-AE-ASM消息又产生FC-AE-1553会话。那么FC-AE-1553状态机以及FC-AE-ASM状态机各自如上所述独立工作,互不干扰。
(I-b)、读写请求调度模块采用轮询调度算法对来自FC-AE-1553会话状态机和FC-AE-ASM状态机的存储器读请求进行调度,仲裁出一个NC节点或NT节点或ASM节点发起的存储器读请求作为当前服务的存储器读请求,并为其标注上节点编号(NC节点、NT1~NTk、ASM节点分别对应编号0~k+1),待读写请求调度模块处理存储器读请求时,将仲裁出的存储器读请求的地址和长度及其对应的节点编号送往PCI-E接口模块。
(I-c)、PCI-E接口模块为读写请求调度模块仲裁出的存储器读请求组建存储器读请求TLP报文,存储器读请求TLP报文格式如图2所示,其中,Address、Length和Tag字段分别填入读写请求调度模块发送来的存储器读请求的地址、长度和节点编号。同时,PCI-E接口模块从PCI-E总线上提取完成报文,并将完成报文送往完成报文处理模块。其中,从PCI-E总线上提取的完成报文具体为响应存储器读请求的报文,即PCI-E总线每收到一次存储器读请求,将从发送数据缓存读取的数据封装在完成报文中并返回给FPGA。
(I-d)、完成报文处理模块提取完成报文的Tag字段,按照Tag值0~k+1分别对应NC节点、NT1节点、...、NTk节点、ASM节点的规则,将完成报文送到对应的NC会话状态机或NT会话状态机或ASM状态机。
(I-e)、如果完成报文是送往FC-AE-1553状态机,那么FC-AE-1553会话状态机接收完成报文,若完成报文的有效负载存储的是会话描述符,则FC-AE-1553会话状态机在内部完成处理,即从有效负载中提取会话描述符,不往帧发送FIFO中写入任何数据;否则,FC-AE-1553会话状态机从完成报文提取有效负载来填充帧的Payload字段,并将SOF、帧头、Payload数据、CRC、EOF写入自己的帧发送FIFO,其中,SOF、帧头、CRC、EOF均在FC-AE-1553会话状态机内部生成。
如果完成报文是送往FC-AE-ASM状态机,那么FC-AE-ASM状态机接收完成报文,若完成报文是ASM描述符,那么在ASM状态机内部完成处理;如果不是ASM描述符,则从完成报文提取有效数据来填充帧的Payload,然后将SOF、帧头、Payload、CRC、EOF按照顺序写入自己的帧发送FIFO,其中,SOF、帧头、CRC、EOF均在ASM状态机内部生成。
(I-f)、帧发送调度模块采用轮询调度算法对NC会话状态机、k个NT会话状态机和ASM状态机的帧发送FIFO进行轮询调度,仲裁出一个节点的帧发送FIFO作为当前服务的FIFO,并从中读取一帧送往光纤通道收发模块。
(I-g)、光纤通道收发模块将帧发送调度模块发送来的帧由并行信号经位宽变换、8b/10b编码和并/串转换转换为串行电信号并送往光模块。
FC-AE-1553会话状态机和FC-AE-ASM状态机在接收方向上的数据处理过程如下:
(II-a)、光纤通道收发模块将光模块发送来的串行电信号经串/并转换、8b/10b解码和位宽变换转换为并行数据,并从并行数据中提取出帧送往帧接收处理模块。
(II-b)、帧接收处理模块从光纤通道收发模块发送来的帧中提取D_ID字段值,并按FC_ID路由表进行查表,根据查表得到的路由送往对应的某个节点的帧接收FIFO(单播)或者某些节点的帧接收FIFO(组播或广播)。
特别的,当接收到的帧为FC-AE-1553帧并且节点卡内的NC节点时,帧接收处理模块还会将接收到的帧写入该NC节点的NC会话状态机的帧接收FIFO中。而当接收到的帧为FC-AE-ASM帧时,不管NC节点作不作为网络的监控节点,帧接收处理模块不会将接收到的FC-AE-ASM帧写入NC会话状态机的帧接收FIFO。
(II-c)、NC会话状态机或NT会话状态机或ASM状态机检测到各自对应的帧接收FIFO不为空时,就从帧接收FIFO中读取帧。
如果检测到当前接收到的帧是FC-AE-1553帧,那么当前处理的帧带有Payload数据或当前处理的帧需被送往监控模式下的NC会话状态机,则将该帧的Payload数据或完整一帧存入对应节点的接收数据缓存中,NC会话状态机或NT会话状态机向读写请求调度模块发起存储器写请求,同时将写入接收数据缓存的地址和Payload数据的长度送往读写请求调度模块,然后执行步骤(II-d)和(II-e);反之,NC会话状态机或NT会话状态机将接收的帧在自身内部处理完毕,不写入接收数据缓存,也不进行步骤(II-d)和(II-e)。
如果检测到当前接收到的帧是FC-AE-ASM帧,并且当前处理的ASM帧带有Payload数据,那么ASM状态机会将封装好的FC-AE-ASM的有效Payload数据与帧头字段分离开,然后将该帧有效Payload数据存入对应节点的接收数据缓存中,ASM状态机向读写请求调度模块发起存储器写请求,同时将写入接收数据缓存区的地址和Payload数据的长度送往读写请求调度模块,然后依次执行步骤(II-d)和(II-e);如果当前处理的ASM帧不携带Payload数据,那么ASM状态机将接收到的ASM帧在内部完成处理,并不写入接收数据缓存。
(II-d)、读写请求调度模块采用轮询调度算法从来自NC会话状态机、NT会话状态机和ASM状态机的存储器写请求中仲裁出一个存储器写请求作为当前服务的存储器写请求,待当前模块处理仲裁出的存储器写请求时,将该存储器写请求的地址和长度送往PCI-E接口模块。
(II-e)、PCI-E接口模块为读写请求调度模块仲裁出的存储器写请求组建存储器写请求TLP报文,存储器写请求TLP报文格式如图2所示,其中,Address、Length分别填入读写请求调度模块发送来的地址和长度;同时,PCI-E接口模块从当前服务的节点的帧接收FIFO中读取帧的Payload数据,用于填充存储器写请求TLP报文的负载字段。
实施例3
本实施例公开了一个由两张实施例1中公开的节点卡(节点卡1和节点卡2)和一台FC交换机构成的FC-AE-1553、FC-AE-ASM并行工作网络的并行工作方法。
虽然在本实施例只公开了2个节点卡的情况,但任意多个与本实施例1中公开节点卡的并行工作的方法均涵盖在本发明的保护范围。
在本实施例中,如图3所示,节点卡1和节点卡2内部均包含有1个NC节点和8个NT节点以及1个ASM节点,节点卡1内的节点分别命名为NC1、NT1~NT8、ASM1,节点卡2内的节点分别命名为NC2、NT9~NT16、ASM2,FC交换机配置端口2与端口10之间的路由,将节点卡1、节点卡2分别连接FC交换机的端口2、端口10。节点卡1和节点卡2并行工作的具体步骤如下:
步骤1、初始化节点卡,具体操作如下:
(1-1)、上位机根据用户配置选择使能NC1节点、NT1~NT8节点、ASM1节点、NT9~NT16节点、ASM2节点以及不使能NC2节点,即配置NC1节点作为FC-AE-1553网络的控制节点,配置NC2节点作为FC-AE-1553网络的监控节点。
(1-2)、初始化节点卡驱动:为2个NC节点和16个NT节点以及2个ASM节点随机分配一个独立的缓存空间,并为使能NC1节点、NT1~NT16节点、ASM1节点、ASM2节点配置单播FC_ID和组播FC_ID及其路由,分别配置用于应用软件检测NC节点和NT节点是否完成会话的会话描述符读写指针、用于应用软件检测ASM节点是否完成ASM消息的ASM描述符读写指针,并将会话描述符读写指针和ASM描述符读写指针初始化为0。
(1-3)、初始化节点卡:配置节点卡1和节点卡2的FC_ID路由表,如图4所示,其中,FFFB02是NT9和NT10的组播ID;分别配置用于NC节点检测应用软件是否生成会话的会话描述符读写指针以及用于ASM节点检测应用软件是否生成ASM消息的ASM描述符读写指针,并初始化该会话描述符读写指针、ASM描述符读写指针为0。
步骤2、上位机一次生成多个会话以及一个ASM消息,分别将每个会话的会话描述符、ASM消息的ASM描述符连续写入NC节点的会话描述符缓存以及ASM节点的描述符缓存,然后更新NC节点的会话描述符写指针并通知NC会话状态机开启会话,更新ASM描述符写指针通知ASM状态机开始一次ASM消息的发送。
以本实施例的2个会话为例,步骤2具体操作如下:
(2-1)、上位机一次生成2个会话以及1个ASM消息,将NC节点待发送的数据放入NC节点的发送数据缓存中、将NC节点请求NT节点发送的数据放入NT节点的发送数据缓存、将ASM节点待发送的数据放入ASM发送数据缓存中。会话1、会话2和ASM消息的通信过程如图5所示,其中,
会话1:NC-NT模式(NC1-NT9、NT10),组播,使能NC1节点发送4096B数据,Payload数据按最大2048B切割。
会话2:NT-NC模式(NT9-NC1),单播,使能NC1节点请求NT9节点发送512B数据,Payload数据按最大128B切割,NT9节点已在自己的发送数据缓存中放好数据。ASM消息1:
ASM单播发送(ASM1-ASM2),ASM1发送数据量大小为2048B的数据到ASM2中。
(2-2)、上位机依次将FC-AE-1553会话描述符填入NC节点的会话描述符缓存中,将FC-AE-ASM的ASM描述符填入ASM节点的ASM描述符缓存中。
对于会话1,应用软件向使能NC1节点的发送数据缓存连续放入4096B数据,然后将会话1的会话描述符连续放入使能NC1节点的会话描述符缓存。
对于会话2,NT9节点先在自己的发送数据缓存中放好数据后,应用软件紧接着会话1的会话描述符,将会话2的会话描述符连续放入使能NC1节点的会话描述符缓存中。
对于ASM消息1,应用软件向ASM1节点的发送数据缓存连续放入2048B数据,然后将ASM1节点对应的描述符写入ASM节点描述符缓存中。
(2-3)、在会话1、会话2和ASM消息1的数据和描述符均放入相应数据缓存、描述符缓存后,上位机更新FC-AE-1553会话描述符写指针为2、FC-AE-ASM消息描述符写指针为1,以通知NC节点开启会话、ASM节点开启发送ASM消息。
本实施例中,对于会话1和会话2来说NC1会话状态机的会话描述符读指针为0,而会话描述符写指针为2,二者相差2表示缓存内有2个会话未开启,NC1会话状态机会先从会话描述符缓存读取会话1的会话描述符,然后根据会话描述符信息封装并发送命令帧和数据帧,发送完命令帧和数据帧后,等待NT9节点和NT10节点回复状态帧。
对于ASM消息1来说ASM1状态机的描述符读指针为0,而描述符写指针为1,二者相差1代表软件有1个ASM消息待发送,ASM1状态机会先从缓存中读取ASM1的ASM描述符,然后根据ASM描述符信息封装并发送ASM帧,并在发送端ASM1结束此次ASM消息。
步骤3、对于会话1来说,NC1会话状态机检测到应用软件更新会话描述符写指针后,从会话描述符缓存读取一个会话描述符,按照会话过程完成帧的封装发送与接收处理。根据会话过程和发送数据量/接收数据量,判断是继续封装发送或等待接收处理下一帧,还是当前会话已完成。对于ASM消息1来说,ASM1状态机检测到应用软件更新ASM描述符写指针后,会从相应缓存读取出ASM描述符,按照FC-AE-ASM协议完成ASM帧的封装及发送。
步骤3的具体过程描述如下:
(3-1)、NC1会话状态机检测到自己的会话描述符写指针与会话描述符读指针不一致时,向使能NC1节点的会话描述符缓存发起存储器读请求:NC1会话状态机从会话描述符缓存读取会话1的会话描述符,其过程为上述发送方向数据处理过程的(I-a)~(I-d)。
ASM1状态机检测到ASM1描述符写指针与ASM1描述符读指针不一致时,向ASM1节点的描述符缓存发起存储器读请求:ASM1状态机从ASM1描述符缓存读取ASM1发送描述符缓存的过程为上述发送方向数据处理过程(I-a)~(I-d);
(3-2)、NC1会话状态机从存有会话描述符的完成报文中解析出会话描述符,包括会话模式、D_ID、发送数据量/接收数据量、数据在缓存存放的起始地址,其中,当前会话为NC-NT模式,D_ID为FFFB02,发送数据量/接收数据量为4096B。
ASM1状态机从存有ASM描述符的完成报文中解析出ASM描述符,包括ASM模式,D_ID、发送数据量、数据在数据缓存存放的起始地址,其中,当前ASM消息为ASM单播模式,D_ID为030209,发送数据量为2048B。
(3-3)、NC1会话状态机按照用户设定的最大帧长切割数据,即在封装带Payload数据的命令帧和数据帧时,每次请求从发送数据缓存读取的数据量不超过设定的最大帧长;在封装不带Payload数据的命令帧时,该命令帧的封装在NC1会话状态机内部完成,无需从发送数据缓存读取数据。具体如下:
首先,NC1会话状态机需要从发送数据缓存连续取4096B的数据发送给NT9节点和NT10节点(FFFB02为NT9节点和NT10节点的组播FC_ID),Payload数据按2048B进行切割,即NC1会话状态机按如图5所示的会话过程发送一个带2048B的Payload数据的命令帧和数据帧。
然后,NC1会话状态机封装并发送命令帧和数据帧。首先封装命令帧:基于会话描述符,命令帧帧头在FC-AE-1553会话状态机内部生成,NC1会话状态机需要从使能NC1节点的发送数据缓存读取2048B的数据来填充命令帧的Payload字段,从缓存取数据的具体过程为上述发送方向数据过程的(I-a)~(I-d)。NC1会话状态机收到完成报文后,将完整的一帧(包括SOF、帧头、Payload、CRC、EOF)写入使能NC1节点的帧发送FIFO。命令帧从帧发送FIFO读出到传输到链路的过程为上述发送方向数据处理过程的步骤(I-f)、(I-g)。数据帧的封装及发送过程与上述命令帧类似,不再赘述。
命令帧和数据帧封装好并写入使能NC1节点的帧发送FIFO后,NC1会话状态机跳转到等待NT9节点和NT10节点回复状态帧的状态。NC1会话状态机每封装发送完或接收处理完一帧后,根据会话模式和发送数据量/接收数据量判断是继续封装发送或等待接收处理下一帧,还是当前会话结束。
ASM1状态机在封装带Payload数据的ASM帧时,会从发送缓存中读取出相应长度的Payload数据并填充进ASM帧的负载中;在封装不带Payload数据的ASM帧时,该ASM帧的封装在ASM1状态机内部完成,无需从发送缓存中读取数据。具体如下:
首先,ASM1状态机需要从发送数据缓存读取2048B的数据并放入ASM1状态机中,从缓存取数据的具体过程为上述发送方向数据过程的(I-a)~(I-d)。
其次,在封装ASM帧时,ASM帧的帧头在ASM1状态机内部生成,ASM帧的Payload由从发送缓存读取的2048B的数据填充。然后依次将完整的一帧(包括SOF、帧头、Payload、CRC、EOF)写入ASM1节点的帧发送FIFO。ASM1帧从帧发送FIFO读出到传输到链路的过程为上述发送方向数据处理过程的步骤(I-f)、(I-g)。
最后,ASM1状态机在发送完成ASM帧后,已经算完成此次ASM1消息,等待进行下一个ASM消息的接收或发送。
FC交换机按FC_ID路由表对端口2发出的命令帧、数据帧和ASM帧进行转发,其中FC-AE-1553的两帧的D_ID(0xFFFB02)是NT9节点和NT10节点的组播路由,而FC-AE-ASM的一帧的D_ID(0x030209)是ASM2节点的单播路由,故FC交换机会将命令帧和数据帧以及ASM帧转发到端口10。
步骤4:对于会话1来说NC1会话状态机开启会话后,本地或对端的NT会话状态机从NC1会话状态机发送的命令帧中提取会话模式和发送数据量/接收数据量信息,并按照会话过程完成帧的封装发送与接收处理。NT会话状态机每封装发送完或接收处理完一帧后,根据会话模式和NC指定的发送数据量/接收数据量判断是继续封装发送或等待接收处理下一帧,还是当前会话已完成。对于ASM消息1来说ASM1状态机发送完成ASM消息后,对端的ASM2状态机会从接收到的ASM帧中将有效Payload提取出来写入缓存中,并更新ASM2描述符以及ASM2指针结束此次ASM消息。
步骤4的具体过程描述如下:
(4-1)、NT会话状态机接收命令帧并解析命令帧的相关信息,包括会话模式、发送数据量/接收数据量。
ASM2状态机接收ASM帧并解析ASM帧的相关信息,包括帧类型、接收数据量。
(4-2)、NT会话状态机按用户设定或者NC请求的最大帧长切割数据,即在封装带Payload数据的命令帧、状态帧和数据帧时,每次请求从发送数据缓存读取的数据量不超过设定的最大帧长;当用户设置命令帧、状态帧不带Payload数据或当前NT会话状态机对应的NT节点的发送数据缓存无有效数据时,命令帧、状态帧的封装均在状态机内部完成,不需要从发送数据缓存读取数据。具体为:节点卡2的NT9节点和NT10节点接收处理命令帧和数据帧,首先处理命令帧,然后再处理数据帧,数据帧的处理过程与命令帧相似,本实施例中不再赘述。命令帧的处理过程如下:
首先,从光纤通道收发模块到FC-AE-1553会话状态机之间的处理过程见上述接收方向数据处理过程的步骤(II-a)和(II-b);其中,帧接收处理模块提取命令帧的FC_ID为FFFB02,按如图4所示的路由表查表得到路由01100_0000,即需要将命令帧写入NT9和NT10的帧接收FIFO;同时考虑到NC2节点作为监控节点,帧接收处理模块还会将命令帧写入NC2节点的帧接收FIFO。
然后,NT9会话状态机和NT10会话状态机从帧接收FIFO中读出命令帧的帧头并提取会话信息:当前会话模式为NC-NT模式,使能NC1节点共需要发送4096B的数据。同时,当前已接收的命令帧带2048B的Payload数据,NT9会话状态机和NT10会话状态机需要将2048B的Payload数据分别存储到NT9节点和NT10节点的接收数据缓存,具体过程见上述接收方向数据处理过程的步骤(II-d)、(II-e)。此外,NC2会话状态机在监控模式下也会将NC2节点的帧接收FIFO的命令帧写入到NC2节点的接收数据缓存,具体过程见上述接收方向数据处理过程的步骤(II-d)、(II-e)。与非监控模式不同的是,监控模式下NC2节点往接收数据缓存写入的是完整一帧而不只是帧的Payload数据,NC2节点的会话描述符和会话描述符指针也不是用来描述一次会话,而是描述一帧,每写完一帧后会写一个会话描述符并更新一次自己的会话描述符指针。
再次,处理完命令帧和数据帧后,NT9会话状态机、NT10会话状态机已接收完NC指定接收的4096B数据,根据会话过程,NT9会话状态机、NT10会话状态机内部还会封装一个状态帧并将其写入NT9节点和NT10节点的帧发送FIFO,用于向NC回复状态帧,状态帧的发送过程见上述发送方向数据处理过程中的步骤(I-f)、(I-g)。对于NT9节点和NT10节点来说,会话1已完成。
最后,NT9节点和NT10节点完成会话后,NT9会话状态机和NT10会话状态机分别向NT9节点、NT10节点的会话描述符缓存写入此次会话的会话描述符,包括数据在缓存存放的起始地址、发送数据量/接收数据量、OX_ID、会话状态信息;然后更新NT9节点、NT10节点的会话描述符写指针为1。
FC-AE-ASM节点将接收到的ASM消息的有效Payload数据提取出来即可。处理过程如下:
首先从光纤通道收发模块到ASM状态机之间的处理过程见上述接收方向数据处理过程的步骤(II-a)和(II-b);其中,帧接收处理模块提取帧的FC_ID为030209。按照如图4所示的路由表查表得到路由00_0000_0001,那么只需要将接收到的ASM帧写入ASM2的帧接收FIFO;
其次ASM2状态机从对应ASM2节点的帧接收FIFO中取出完整的ASM帧,并提取出ASM中的2048B有效Payload,然后通过向读写请求调度模块发送写请求把有效Payload数据存储到ASM2的ASM接收数据缓存区中,具体过程见上述接收方向处理过程的步骤(II-d)、(II-e)。
最后,ASM2状态机向ASM2节点的描述符缓存写入此次ASM消息的ASM描述符,包括存放在缓存区的有效Payload数据存放的起始地址、接收数据量、OX_ID、ASM消息状态信息。接下来,ASM2状态机更新ASM2节点的ASM描述符写指针为1,以此通知软件完成一次ASM消息的接收。
步骤5:NC会话状态机和NT会话状态机发送完所有帧或接收完所有帧或会话超时结束后,向自己的会话描述缓存中写入此次会话生成的会话描述符,会话描述符包括数据在缓存存放的起始地址、发送数据量/接收数据量、OX_ID、会话状态信息。写入会话描述符之后,NC会话状态机和NT会话状态机更新自己的会话描述符写指针,以通知应用软件当前会话已完成。
FC交换机将NT9节点和NT10节点回复的状态帧从端口10转发到端口2,同时,FC交换机将这两个状态帧又转发到端口10,并将这两个状态帧按上述接收方向数据处理过程送往NC2节点的接收数据缓存。
节点卡1对NT9节点和NT10节点回复的状态帧的处理过程见上述接收数据处理过程的步骤(II-a)~(II-c),当NC1会话状态机处理完NT9节点和NT10节点回复的状态帧时,对于NC1会话状态机来讲,会话1已完成,NC1会话状态机会向会话描述符缓存写入会话描述符,并更新会话描述符写指针为1。
对于ASM消息1来说在步骤4已经完成此次ASM消息,故无此步骤。
步骤6:应用软件检测到NC节点和NT节点的会话描述符写指针更新时,会从对应节点的缓存空间中提取相应的会话描述符和会话数据并送往后级处理。
具体如下:
对于FC-AE-1553节点来说,节点卡1和节点卡2的应用软件中存储着使能NC1节点、NT1~NT8节点、NC2节点和NT9~NT16节点的会话描述符读指针。会话1完成后,节点卡1的应用软件检测到使能NC1节点的会话描述符读指针(为0)比使能NC1节点的会话描述符写指针(为1)差1时,知道当前使能NC1节点完成一次会话,则会先读取一个会话描述符,再根据会话描述符提取会话状态信息并送后级处理,如在界面实时显示。
节点卡2的应用软件在会话1完成后的处理过程和节点卡1相似,稍有不同的是:节点卡2的NT9节点和NT10节点将接收到的命令帧和数据帧的Payload数据也写入接收数据缓存,因此应用软件在读取会话描述符时,除了会提取会话描述符中的会话状态信息外,还会根据数据在缓存存放的起始地址和接收数据量提取会话数据,并将会话状态信息和会话数据送后级处理,如在界面实时显示。此外,由于NC2节点作为网络的监控节点,NC2节点每接收一帧会写一个会话描述符,在会话1完成后,NC2节点的会话描述符写指针更新为4,应用软件会根据会话描述符中的数据在缓存存放的起始地址和接收数据量字段读取完整的命令帧、数据帧以及NT9节点、NT10节点回复的状态帧,并送后级处理。
而从FC-AE-ASM节点来看,当ASM帧接收完成后,节点卡2的软件检测到ASM2节点的完成描述符读指针(为0)与ASM2节点的完成描述符写指针(为1)比较差1时,知道当前ASM2完成一次ASM消息的接收,因此会先读取ASM2描述符缓存区的ASM描述符,再根据ASM描述符提供的有效Payload数据存放地址,长度等信息提取存放在接收数据缓存区的有效Payload数据并将相关信息并送入后级处理,如在界面实时显示。
会话2的实现过程与步骤3~8相似,待会话2也完成后,使能NC1节点的会话描述符写指针更新为2,表示当前应用软件生成的两个会话均已完成。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (5)
1.一种FC-AE-1553和FC-AE-ASM的混合网络系统,其特征在于,包括:上位机和节点卡;
所述节点卡包括接口模块、多通道收发模块和光模块;
所述接口模块为PCI-E接口模块,用于连接上位机和收发模块,进行上位机和收发模块之间的数据传输交换;
所述光模块用于连接所述多通道收发模块与光纤网络,进行数据的光电转换;
所述多通道收发模块,包括独立并行的1个通道的NC节点、k个通道的NT节点和1个通道的FC-AE-ASM节点;在所述上位机的控制下,在对应的节点通道中,将发送数据组成与节点类型对应的FC帧,通过光模块发送到光纤网络中;或者通过所述光模块从光纤网络中接收FC帧数据,在对应的节点通道中对FC帧数据进行解析后发送到上位机;
当存在多个节点同时发送数据或接收数据时,所述节点卡通过轮询调度,按照优先级从所述多个节点中仲裁出数据发送的顺序,逐个节点进行数据发送或数据接收;
所述轮询调度包括两轮轮询:
第一轮轮询:从多个FC-AE-1553节点的会话状态机以及FC-AE-ASM节点的ASM状态机中检测是否同时有写数据请求和/或读数据请求,如果有,则挑选优先级最高的节点的写数据请求和/或读数据请求发送到上位机进行数据操作,发送后,将该节点的写数据请求或者读数据请求的优先级降为最低,依此轮询所有同时有写数据请求或者读数据请求的节点,仲裁出当前服务节点;
第二轮轮询:按读写优先级从当前服务节点的读数据请求和/或写数据请求中挑选一个请求发送到上位机;
所述第一轮轮询中优先级的顺序由高到低依此为NC节点、NT节点和FC-AE-ASM节点;所述第二轮轮询中优先级中读数据请求优先级高于写数据请求;
所述多通道收发模块包括FC-AE-1553会话状态机、FC-AE-ASM状态机、读写请求调度模块、寄存器模块、完成报文处理模块、帧发送调度模块、帧接收处理模块、帧发送FIFO、帧接收FIFO和光纤通道收发模块;
FC-AE-1553会话状态机,包括1个用于实现NC节点功能的NC会话状态机和k个用于实现NT节点功能的NT1~NTk会话状态机,用于开启会话时读取会话描述符、帧封装发送与接收处理、完成会话时生成并存储会话描述符;
FC-AE-ASM状态机,包括1个用于实现ASM节点功能的ASM状态机,用于开启ASM消息发送时读取ASM描述符、ASM待发送帧数据,实现帧封装发送以及接收ASM帧处理、完成接收ASM帧处理后生成并存储ASM描述符;
读写请求调度模块,用于轮询调度来自NC会话状态机、NT1~NTk会话状态机以及ASM状态机的读数据请求和写数据请求,仲裁出一个读数据请求或写数据请求作为当前服务的请求,并通知接口模块将仲裁出的请求组成对应的报文发送到与接口模块连接的总线上;
寄存器模块,用于存储上位机对节点卡节点的配置信息,包括NC节点、NT节点、ASM节点各自的FC_ID和若干个组播FC_ID构成的FC_ID路由表、NC节点开启会话的会话描述符写指针、ASM节点的描述符写指针、NC节点、NT节点和ASM节点各自缓存空间中的各类缓存的基地址、NC会话状态机的工作模式;
所述NC节点的NC会话状态机的工作模式为监控模式或非监控模式,在非监控模式下,NC会话状态机发挥网络控制的功能;在监控模式下,NC会话状态机作为网络中的监控节点,监听网络所有流量;
完成报文处理模块,用于从总线上获取读写请求调度模块完成的报文送往对应的NC会话状态机、NT会话状态机或ASM状态机;
帧发送调度模块,用于从NC会话状态机和NT1~NTk会话状态机以及ASM消息状态机的帧发送FIFO中轮询仲裁出一个作为当前服务的FIFO,并从该FIFO中读取一帧送往光纤通道收发模块;
帧接收处理模块,用于存储上位机配置的NC节点、NT1~NTk节点和ASM节点的FC_ID和若干个组播FC_ID构成的FC_ID路由表,以及在每接收到一帧后,根据该帧的D_ID查询FC_ID路由表,将此帧写入对应节点的帧接收FIFO或者复制写入多个节点的帧接收FIFO;
帧接收处理模块中,FC_ID路由表由FC_ID及k+2位路由组成,k+2位路由从高到低分别表示是否要将当前接收帧送往NC节点或NT1~NTk节点或ASM节点的帧接收FIFO中;当NC会话状态机处于监控模式时,当前FC-AE-1553帧除了会被帧接收处理模块写入对应节点的帧接收FIFO外,还会复制一份写入NC节点的帧接收FIFO中,而如果当前接收到的帧是FC-AE-ASM帧时,不管NC会话状态机是否处于监控模式,帧接收处理模块都不会复制一份写入NC节点的帧接收FIFO中;当NC会话状态机处于非监控模式时,若当前帧的D_ID不在FC_ID路由表内,则帧接收处理模块丢弃该帧;
帧发送FIFO:用于存储NC会话状态机或NT会话状态机或ASM消息状态机发送的帧,每个节点的状态机均对应有一个帧发送FIFO;每个节点的会话状态机的接口信号与对应的帧发送FIFO的接口信号相连;
帧接收FIFO:用于存储帧接收处理模块接收的帧,每个节点的状态机均对应有一个帧接收FIFO;每个节点的会话状态机的接口信号与对应的帧接收FIFO的接口信号相连;
光纤信道收发模块与光模块连接,用于实现数据的串/并转换、8b/10b编解码和位宽变换;
当所述节点卡如果检测到当前接收到的帧是FC-AE-ASM帧,并且当前处理的ASM帧带有Payload数据,那么ASM状态机会将封装好的FC-AE-ASM的有效Payload数据与帧头字段分离开,然后将该帧有效Payload数据存入对应节点的接收数据缓存中,ASM状态机向读写请求调度模块发起存储器写请求,同时将写入接收数据缓存区的地址和Payload数据的长度送往读写请求调度模块,然后:
读写请求调度模块轮询调度从来自NC会话状态机、NT会话状态机和ASM状态机的存储器写请求中仲裁出一个存储器写请求作为当前服务的存储器写请求,待当前模块处理仲裁出的存储器写请求时,将该存储器写请求的地址和长度送往PCI-E接口模块;
PCI-E接口模块为读写请求调度模块仲裁出的存储器写请求组建存储器写请求TLP报文,其中,Address、Length分别填入读写请求调度模块发送来的地址和长度;同时,PCI-E接口模块从当前服务的节点的帧接收FIFO中读取帧的Payload数据,用于填充存储器写请求TLP报文的负载字段;
如果当前处理的ASM帧不携带Payload数据,那么ASM状态机将接收到的ASM帧在内部完成处理,并不写入接收数据缓存。
2.根据权利要求1所述的混合网络系统,其特征在于,所述上位机包括控制模块和数据缓存模块;
所述控制模块,用于将节点卡中的各节点配置成FC-AE-1553的NC节点、NT节点或FC-AE-ASM节点;
数据缓存模块位于主机内存空间,用于为所述节点卡中的每个节点提供一个独立的驱动缓存空间;
在数据发送时,所述控制模块生成FC-AE-1553会话和/或FC-AE-ASM消息;在生成FC-AE-1553会话时将待发送数据和会话描述符放入数据缓存模块中与FC-AE-1553节点对应的驱动缓存空间,会话结束后所述控制模块从与FC-AE-1553节点对应的驱动缓存空间中提取会话数据和会话描述符;在生成FC-AE-ASM消息时,所述控制模块将待发送数据以及ASM描述符放入与FC-AE-ASM节点对应的驱动缓存空间,在接收完成FC-AE-ASM消息后,所述控制模块从与FC-AE-ASM节点对应的驱动缓存空间中提取ASM帧有效数据和ASM描述符。
3.根据权利要求2所述的混合网络系统,其特征在于,所述与FC-AE-1553节点对应的驱动缓存空间中包括1553发送数据缓存、1553接收数据缓存、会话描述符缓存和会话描述符指针缓存;
所述1553发送数据缓存,用于封装FC-AE-1553帧时填充帧的Payload数据;
所述1553接收数据缓存,用于接收处理FC-AE-1553帧时存储帧的Payload数据;
会话描述符缓存,用于存储每个FC-AE-1553会话的会话描述符;
会话描述符指针缓存,用于存储完成FC-AE-1553会话后更新的会话描述符写指针;
所述与FC-AE-ASM节点对应的驱动缓存空间中包括ASM发送数据缓存、ASM接收数据缓存、ASM描述符缓存和ASM描述符指针缓存;
所述ASM发送数据缓存,用于封装FC-AE-ASM帧时填充帧的Payload数据;
所述ASM接收数据缓存,用于接收处理FC-AE-ASM帧时存储帧的Payload数据;
所述ASM描述符缓存,用于存储每个ASM帧的信息;
ASM描述符指针缓存:用于存储判断ASM消息是否完成的ASM描述符写指针。
4.根据权利要求1所述的混合网络系统,其特征在于,所述接口模块为PCI-E接口,用于为轮询仲裁出的写数据请求或者读数据请求组建对应的驱动缓存空间的读请求TLP报文或写请求TLP报文,并将组成的读请求TLP报文或写请求TLP报文送往PCI-E总线,同时,PCI-E接口模块从PCI-E总线提取完成报文送往完成报文处理模块。
5.根据权利要求4所述的混合网络系统,其特征在于,PCI-E接口模块为读写请求调度模块轮询仲裁出的读数据请求组建读数据请求TLP报文时,将对应的读数据请求TLP报文的Tag字段填为对应的节点的编号;完成报文处理模块从接收到的完成报文中提取Tag字段时,根据当前完成报文的Tag字段值,将完成报文送往与Tag字段值对应的NC会话状态机或NT会话状态机;读写请求调度模块输出写数据请求时,通过不同的写数据请求地址对应不同的驱动缓存空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010128747.0A CN113328926B (zh) | 2020-02-28 | 2020-02-28 | 一种fc-ae-1553和fc-ae-asm的混合网络系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010128747.0A CN113328926B (zh) | 2020-02-28 | 2020-02-28 | 一种fc-ae-1553和fc-ae-asm的混合网络系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113328926A CN113328926A (zh) | 2021-08-31 |
CN113328926B true CN113328926B (zh) | 2023-02-24 |
Family
ID=77412645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010128747.0A Active CN113328926B (zh) | 2020-02-28 | 2020-02-28 | 一种fc-ae-1553和fc-ae-asm的混合网络系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113328926B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114221986B (zh) * | 2022-02-21 | 2022-07-22 | 北京国科天迅科技有限公司 | 融合网络通信系统、通信方法、电子设备及存储介质 |
CN115529275B (zh) * | 2022-11-28 | 2023-04-07 | 中国人民解放军国防科技大学 | 一种报文处理系统及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185620B1 (en) * | 1998-04-03 | 2001-02-06 | Lsi Logic Corporation | Single chip protocol engine and data formatter apparatus for off chip host memory to local memory transfer and conversion |
US6542512B1 (en) * | 1999-07-02 | 2003-04-01 | Jenny Liu Fischer | Architecture and method for flushing non-transmitted portions of a data frame from a transmitted FIFO buffer |
CN104618207A (zh) * | 2015-01-08 | 2015-05-13 | 中国科学院空间应用工程与技术中心 | 一种异构型的fc-ae-1553网络系统及交换方法 |
CN104980224A (zh) * | 2015-05-05 | 2015-10-14 | 电子科技大学 | Fc-ae-1553数据交换模式设计、网络控制及节能方法 |
CN106790104A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院空间应用工程与技术中心 | 多协议融合系统、节点之间的ip通信及fc‑ae‑1553通信方法 |
CN110086865A (zh) * | 2019-04-23 | 2019-08-02 | 成都光航信科技有限公司 | 一种支持多个fc-ae-1553节点并行工作的节点卡及其实现方法 |
-
2020
- 2020-02-28 CN CN202010128747.0A patent/CN113328926B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185620B1 (en) * | 1998-04-03 | 2001-02-06 | Lsi Logic Corporation | Single chip protocol engine and data formatter apparatus for off chip host memory to local memory transfer and conversion |
US6542512B1 (en) * | 1999-07-02 | 2003-04-01 | Jenny Liu Fischer | Architecture and method for flushing non-transmitted portions of a data frame from a transmitted FIFO buffer |
CN104618207A (zh) * | 2015-01-08 | 2015-05-13 | 中国科学院空间应用工程与技术中心 | 一种异构型的fc-ae-1553网络系统及交换方法 |
CN104980224A (zh) * | 2015-05-05 | 2015-10-14 | 电子科技大学 | Fc-ae-1553数据交换模式设计、网络控制及节能方法 |
CN106790104A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院空间应用工程与技术中心 | 多协议融合系统、节点之间的ip通信及fc‑ae‑1553通信方法 |
CN110086865A (zh) * | 2019-04-23 | 2019-08-02 | 成都光航信科技有限公司 | 一种支持多个fc-ae-1553节点并行工作的节点卡及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113328926A (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110086865B (zh) | 一种支持多个fc-ae-1553节点并行工作的节点卡及其实现方法 | |
CN113328870B (zh) | 一种多协议混合网络的多节点并行工作方法 | |
EP0752802B1 (en) | An apparatus and method for packetizing and segmenting MPEG packets | |
US5768530A (en) | High speed integrated circuit interface for fibre channel communications | |
US5619497A (en) | Method and apparatus for reordering frames | |
US5247626A (en) | Fddi controller having flexible buffer management | |
EP0308449B1 (en) | Transfer of messages in a multiplexed system | |
US5187708A (en) | Communication device for layered protocols | |
CN107483370B (zh) | 一种在fc网络上传输ip和can业务的方法 | |
EP0772323A2 (en) | Method and apparatus for tracking buffer availability | |
CN102185833B (zh) | 一种基于fpga的fc i/o并行处理方法 | |
Hall et al. | The Rainbow-II gigabit optical network | |
CN113328926B (zh) | 一种fc-ae-1553和fc-ae-asm的混合网络系统 | |
US6449655B1 (en) | Method and apparatus for communication between network devices operating at different frequencies | |
JPS61212940A (ja) | マルチネツトワ−クシステムのデ−タ伝送方法 | |
WO1999011037A1 (en) | Protocol for communicating data between packet forwarding devices via an intermediate network interconnect device | |
US6909717B1 (en) | Real time ethernet protocol | |
CN112019440B (zh) | 基于标识符复用的can总线组播方法 | |
CN112261618B (zh) | 一种基于ZigBee的多四旋翼飞行器间的通信方法 | |
CN1738224B (zh) | Tdm数据与帧格式转换的电路及方法、传输交换系统及方法 | |
CN112491620B (zh) | 一种基于srio的多通道数据传输控制器及调整方法 | |
US20050117604A1 (en) | Transport layer protocol for a peripheral module for a communication device | |
JP2656755B2 (ja) | Isdnターミナルアダプタ | |
CN112291256B (zh) | Uart网关数据传输方法 | |
CN114513523B (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 |