CN110086865A - A kind of node card and its implementation for supporting multiple FC-AE-1553 nodal parallel work - Google Patents

A kind of node card and its implementation for supporting multiple FC-AE-1553 nodal parallel work Download PDF

Info

Publication number
CN110086865A
CN110086865A CN201910331371.0A CN201910331371A CN110086865A CN 110086865 A CN110086865 A CN 110086865A CN 201910331371 A CN201910331371 A CN 201910331371A CN 110086865 A CN110086865 A CN 110086865A
Authority
CN
China
Prior art keywords
session
node
frame
descriptor
status machine
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
Application number
CN201910331371.0A
Other languages
Chinese (zh)
Other versions
CN110086865B (en
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.)
Chengdu Aisino Optical Technology Co Ltd
Original Assignee
Chengdu Aisino Optical Technology Co Ltd
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 Chengdu Aisino Optical Technology Co Ltd filed Critical Chengdu Aisino Optical Technology Co Ltd
Priority to CN201910331371.0A priority Critical patent/CN110086865B/en
Publication of CN110086865A publication Critical patent/CN110086865A/en
Application granted granted Critical
Publication of CN110086865B publication Critical patent/CN110086865B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/25Arrangements specific to fibre transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention discloses a kind of node cards and its implementation for supporting multiple FC-AE-1553 nodal parallel work, it is related to FC-AE-1553 field of communication technology, 1 NC node and k NT node are integrated in node card, and k+1 FC-AE-1553 node can independently concurrent working.Node card includes optical module and the FPGA for supporting PCI-E bus interface, and node card is communicated by PCI-E interface with main frame, and driving and application software, FPGA connection application software and optical module are equipped in main frame.FPGA includes FC-AE-1553 session status machine, read-write requests scheduler module, PCI-E interface module, register module, completes message processing module (MPM), frame transmission scheduler module, frame receiving processing module, frame transmission FIFO, frame reception FIFO, optical-fibre channel transceiver module.It is big, at high cost with the FC-AE-1553 complicated network structure, volume that the present invention solves the problems, such as that tradition FC-AE-1553 nodes card is only used as having a single function caused by NC node or NT node.

Description

A kind of node card that supporting the work of multiple FC-AE-1553 nodal parallels and its realization Method
Technical field
The present invention relates to FC-AE-1553 fields of communication technology, and in particular to a kind of to support multiple FC-AE-1553 nodes simultaneously The node card and its implementation of row work.
Background technique
Optical-fibre channel (Fiber Channel, FC) be by the international information technical standard committee, the U.S. (INCITS) in A kind of high-speed serial communication agreement formulated in 1998.MIL-STD-1553B bus is to be announced by U.S. Department of Defense in 1978 Military command/response formula multiplexed data bus.As FC-AE (Fiber Channel Avionics Environment, optical-fibre channel aviation electronics environment) a member in protocol family, FC-AE-1553 agreement is by MIL-STD- 1553B bus protocol is mapped to a kind of command/response formula network communication protocol suitable for FC network of fiber channel protocol, tool There is the features such as high reliability, high bandwidth, hard real-time, strong compatibility, is widely used in the military electronics environment such as aerospace The technical fields such as data transmission and command and control between communication equipment.
The network that FC-AE-1553 network is made of the equipment such as FC-AE-1553 node card and FC interchanger, traditional In FC-AE-1553 network, a FC-AE-1553 node card is only used as a node in FC-AE-1553 network, and each FC-AE-1553 node can only be used as NC (Network Controller, network controller) or NT (Network Terminal, the network terminal) node.Currently, proposing a kind of interchangeable node card design method for realizing NC or NT, but node NC the and NT function of card is mutual exclusion, i.e., synchronization node card can only be used as NC node or NT node, and user is needed to switch section NC the and NT function of point card, is equivalent to or the corresponding node of node card, a node card cannot have it is multiple can be with The node of concurrent working simultaneously.
However, in a large size FC-AE-1553 network, as FC-AE-1553 number of nodes increases, FC-AE-1553 Network structure is more complicated, and monitoring and the management work of network become more cumbersome;Meanwhile with node card and number of switches Increase, the cost for building FC-AE-1553 network can also increase therewith, while physics needed for building whole network system is empty Between can also increased dramatically, it is higher to volume, weight demands that this also hinders military small drone etc. to a certain extent Military flight control system develops to small light direction.
Summary of the invention
It is an object of the invention to: NC node or NT node are only used as to solve tradition FC-AE-1553 nodes card It is caused have a single function with the FC-AE-1553 complicated network structure, the problem that volume is big, at high cost, the invention proposes a kind of Hold the node card and its implementation of multiple FC-AE-1553 nodal parallel work.
The technical solution adopted by the invention is as follows:
A kind of node card for supporting multiple FC-AE-1553 nodal parallel work, including optical module, further include supporting PCI-E Bus interface and the FPGA connecting with optical module are integrated with 1 NC node and k NT node, and k+1 FC- in node card AE-1553 node can independently concurrent working.
Further, the node card is communicated by PCI-E interface with main frame, and drive is equipped in main frame Dynamic and application software, FPGA connection application software and optical module;Wherein:
Driving, for in node card NC node and k NT node distribute an independent spatial cache, Mei Gejie The assigned spatial cache of point includes sending data buffer storage, reception data buffer storage, session descriptor caching and session descriptor to refer to Needle caching, in which:
Send data buffer storage, the Payload data of infilled frame when for encapsulated frame;
Data buffer storage being received, the Payload data of frame are stored when for receiving processing frame;
Session descriptor caching will for storing the session descriptor of each session: an application software session of every generation The session descriptor caching of the session descriptor filling NC node of the session, notifies NC session status is machine-readable to take session descriptor simultaneously Open session;After NC session status machine or NT session status machine complete a session, the session descriptor of current sessions is generated simultaneously The session descriptor caching of corresponding node is written;Each node possesses a set of for judging whether session is completed and using soft Part and the known session descriptor of FPGA read and write pointer, and it includes session descriptor write pointer and meeting that session descriptor, which reads and writes pointer, Talk about descriptor read pointer;Application software generate session descriptor by conversation modes, D_ID, send data volume/reception data volume, Initial address composition of the data in caching storage;The session descriptor that NC session status machine or NT session status machine generate is by data In the initial address of caching storage, transmission data volume/reception data volume, OX_ID and session state information composition;
Session descriptor pointer caching: the conversation description updated after session is completed for storing NC node and k NT node Write pointer is accorded with, to notify application software current sessions to be completed;
Data to be sent and session descriptor are put into driving caching, conversation end when for generating session by application software Session data and session descriptor are extracted from driving caching afterwards.
Further, the FPGA includes FC-AE-1553 session status machine, read-write requests scheduler module, PCI-E interface Module, register module complete message processing module (MPM), frame transmission scheduler module, frame receiving processing module, frame transmission FIFO, frame Receive FIFO, optical-fibre channel transceiver module, in which:
FC-AE-1553 session status machine, including the NC session status machine for realizing NC nodal function and for realizing NT The NT session status machine of nodal function reads session descriptor when for opening session, frame encapsulation sends and receives processing, completes It is generated when session and stores session descriptor, wherein frame includes command frame, data frame and status frames;
Read-write requests scheduler module, memory of the polling dispatching from NC session status machine and NT1~NTk session status machine Read request and memory write request arbitrate out the request of a read request or memory write request as current service, And notify PCI-E interface module that the request arbitrated out is formed corresponding TLP message and is sent to PCI-E bus;
PCI-E interface module, read request or memory for being arbitrated out for read-write requests scheduler module poll Write request sets up corresponding read request TLP message or memory write request TLP message, and the reading of the memory of composition is asked TLP message or memory write request TLP message is asked to be sent to PCI-E bus, meanwhile, PCI-E interface module is from the total line drawing of PCI-E Completion message, which is sent to, completes message processing module (MPM);
Register module, for storing the configurable register of application software, FC_ID including NC node and NT node and Session descriptor write pointer, NC node and the NT of FC_ID routing table, the unlatching session of NC node that several multicasts FC_ID is constituted Node respectively the base address of all kinds of cachings in spatial cache, NC session status machine operating mode;
Message processing module (MPM) is completed, the completion message for sending PCI-E interface module is sent to corresponding NC session shape State machine or NT session status machine;
Frame sends scheduler module, for sending poll in FIFO from the frame of NC session status machine and k NT session status machine A FIFO as current service is arbitrated out, and reads a frame from the FIFO and is sent to optical-fibre channel transceiver module;
Frame receiving processing module, for store application software configuration NC node and k NT node FC_ID and several The FC_ID routing table that multicast FC_ID is constituted, and after often receiving a frame, FC_ID routing is inquired according to the D_ID of the frame The frame that some corresponding node is written in this frame is received FIFO or the frame reception FIFO of multiple nodes is written in duplication by table;Wherein, FC_ID routing table is made of FC_ID and k+1 routing, and whether k+1 routings are respectively indicated from high to low by current received frame The frame for being sent to NC node or NT1~NTk node receives in FIFO;When NC session status machine is in monitoring mode, present frame is removed It can be received outside FIFO by the frame of frame receiving processing module write-in corresponding node, the frame that can also replicate a write-in NC node receives In FIFO;When NC session status machine is in non-monitor mode, if the D_ID of present frame is not in FC_ID routing table, frame is connect It receives processing module and abandons the frame;
Frame sends FIFO: the frame sent for storing NC session status machine or NT session status machine, the session of each node State machine is corresponding with a frame and sends FIFO;
Frame receives FIFO: for storing the received frame of frame receiving processing module, the session status machine of each node is corresponding There is a frame to receive FIFO;
Fiber channel transceiver module: for realizing the transformation of the serial/parallel conversion of data, 8b/10b encoding and decoding and bit wide.
Further, the operating mode of the NC session status machine is monitoring mode or non-monitor mode, in non-supervised mould Under formula, NC session status machine plays the function of network-control as NC node;In the monitoring mode, NC session status machine conduct Monitoring node in network monitors all flows of network.
A kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work, comprising the following steps:
Step 1, initialization node card: for the NC node and the k independent spatial cache of NT node distribution of every node card, Enabled NC node is selected, and configures unicast FC_ID and multicast FC_ID and its routing for enabled NC node and each NT node;
Step 2, application software once generate multiple sessions, and the session descriptor of each session and session data are connected respectively It continues the session descriptor caching into NC node and sends data buffer storage, update the session descriptor write pointer of NC node and notify NC session status machine opens session;Wherein, session descriptor include conversation modes, D_ID, send data volume/reception data volume, Initial address of the data in caching storage;
Step 3, NC session status machine read and parse session descriptor from the session descriptor of NC node caching, according to The encapsulation that conversation procedure completes frame sends and receives processing;According to conversation procedure and data volume/reception data volume is sent, judgement is Continuing encapsulation sends or waits reception processing next frame or current sessions to be completed;
Step 4, NT session status machine extract session information, including session mould from the command frame that NC session status machine is sent Formula and transmission data volume/reception data volume, and processing is sent and received according to the encapsulation that conversation procedure completes frame;NT session status After machine every encapsulation has sent or has received and handled a frame, the transmission data volume specified according to conversation modes and enabled NC node/connect Receipts data volume judgement is to continue with encapsulation and sends or wait reception processing next frame or current sessions to be completed;
Step 5, NC session status machine and NT session status machine have sent all frames or have received all frames or session timeout After, the session descriptor that this session generates is written into the conversation description of oneself caching, including data are stored in caching Initial address, send data volume/reception data volume, OX_ID and session state information, meanwhile, NC session status machine and NT meeting Speech phase machine updates the session descriptor write pointer of oneself, to notify application software current sessions to be completed and can next time Words;
Step 6, application software are mentioned from the spatial cache for having the NC node for updating session descriptor write pointer and NT node Corresponding session descriptor and session data are taken, and is sent to rear class processing.
Further, implementation method is completed based on a kind of conversation informing mechanism of dialogue-based descriptor read-write pointer, tool Body are as follows:
According to conversation informing direction, it includes following two that session descriptor, which reads and writes pointer:
The first: opening the session descriptor write pointer of session for application software notice FPGA and session descriptor reading refer to After needle, i.e. application software generate session, the session descriptor write pointer of NC node is updated to notify the NC node in FPGA to open Session, NC nodal test to oneself session descriptor read pointer and when session descriptor write pointer difference, indicate session not It opens;
Second: the session descriptor for NC node and the notice application software session completion of NT node in FPGA writes finger It will be updated the session descriptor write pointer of oneself after the completion session of needle and session descriptor read pointer, i.e. some node, application is soft When part detects the session descriptor read pointer and session descriptor write pointer difference of the node, then it represents that the node has had session It completes;
Conversation informing direction includes that application software notice FPGA opens conversation direction and FPGA notice application software session knot Shu Fangxiang.
Further, the FC-AE-1553 session status machine is in the internal encapsulation for completing the frame without Payload data It sends and reception is handled;It, be to the FC-AE-1553 meeting when frame of FC-AE-1553 session status machine packaging belt Payload data The transmission data buffer storage of the corresponding node of speech phase machine initiates read request, and fills out from extraction payload in message is completed Fill the Payload field of the frame;It, be to the FC-AE-1553 session status machine pair when receiving frame of the processing with Payload data The reception data buffer storage for the node answered initiates memory write request, and Payload data are stored in the reception data of the corresponding node Caching.
Further, the use polling dispatching algorithm of the read-write requests scheduler module is to from FC-AE-1553 session shape The read request and memory write request of state machine are scheduled, including two-wheeled poll:
First round poll: it is write from the read request and memory of NC session status machine and NT1~NTk session status machine A read request and memory write request are selected in request respectively;
Second wheel poll: a kind of request is selected from the read request and memory write request that first round poll is selected As the request of current service, and notify that PCI-E interface module forms corresponding read request TLP message or memory is write Request TLP message:
For read request, read-write requests scheduler module will mark upper node for the read request of current service Number notifies PCI-E interface module when forming read request TLP message, Tag field is filled with to the volume of corresponding node Number value, to distinguish the read request TLP message of different nodes.
Further, it is right respectively to follow 0~k of Tag field value for the completion message processing module (MPM) and PCI-E interface module Answer NC node, NT1 node ..., the rule of NTk node, specifically: PCI-E interface module is read-write requests scheduler module poll It, can be by corresponding read request TLP message when the read request arbitrated out sets up read request TLP message Tag field is filled out as the number of corresponding node;It completes message processing module (MPM) and extracts Tag field from the completion message received When, according to the current Tag field value for completing message, corresponding NC session status machine or NT are sent to by message is completed by above-mentioned rule Session status machine.
In conclusion by adopting the above-described technical solution, the beneficial effects of the present invention are:
1, in the present invention, k+1 are integrated in every node card to solve with the FC-AE-1553 node of concurrent working Traditional each FC-AE-1553 node card is only used as a NC or causes nodal function single as a NT node Problem simplifies FC-AE-1553 network structure, reduces the volume of FC-AE-1553 network system, reduces FC-AE-1553 Cost needed for network.
2, in the present invention, in the case where the NC node or certain NT number of nodes that FC-AE-1553 network needs, when When one node card may include more NC nodes and NT node, the quantity of node card and interchanger in whole network also can It reduces therewith, so as to the monitoring and the efficiency of management for reaching simplified network structure, improving FC-AE-1553 network.
3, in the present invention, comprising network equipments such as less node card and interchangers in FC-AE-1553 network, greatly The cost for building entire FC-AE-1553 network system is reduced, network in FC-AE-1553 network is also greatly saved The gross space that equipment occupies.
Detailed description of the invention
In order to illustrate the technical solution of the embodiments of the present invention more clearly, below will be to needed in the embodiment attached Figure is briefly described, it should be understood that the following drawings illustrates only certain embodiments of the present invention, therefore is not construed as pair The restriction of range for those of ordinary skill in the art without creative efforts, can also be according to this A little attached drawings obtain other relevant attached drawings.
Fig. 1 is whole design block diagram of the invention;
Fig. 2 is read request, memory write request and completion message format;
Fig. 3 is the FC-AE-1553 network structure of embodiment one;
The FC_ID routing table that Fig. 4 is one interior joint card 1 of embodiment, is configured inside node card 2;
Fig. 5 is the conversation procedure schematic diagram of session 1 and session 2 in embodiment one.
Specific embodiment
In order to keep the objectives, technical solutions, and advantages of the present invention more clear bright from reference to the accompanying drawings and embodiments, right The present invention is further elaborated.It should be appreciated that described herein, specific examples are only used to explain the present invention, not For limiting the present invention, i.e., described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is logical The component for the embodiment of the present invention being often described and illustrated herein in the accompanying drawings can be arranged and be designed with a variety of different configurations. Therefore, claimed invention is not intended to limit to the detailed description of the embodiment of the present invention provided in the accompanying drawings below Range, but be merely representative of selected embodiment of the invention.Based on the embodiment of the present invention, those skilled in the art are not having Every other embodiment obtained under the premise of creative work is made, shall fall within the protection scope of the present invention.
It should be noted that the relational terms of term " first " and " second " or the like be used merely to an entity or Operation is distinguished with another entity or operation, and without necessarily requiring or implying between these entities or operation, there are any This actual relationship or sequence.Moreover, the terms "include", "comprise" or its any other variant be intended to it is non-exclusive Property include so that include a series of elements process, method, article or equipment not only include those elements, but also Further include other elements that are not explicitly listed, or further include for this process, method, article or equipment it is intrinsic Element.In the absence of more restrictions, the element limited by sentence " including one ... ", it is not excluded that including institute State in the process, method, article or equipment of element that there is also other identical elements.
Feature and performance of the invention are described in further detail with reference to embodiments.
Embodiment 1
A kind of node card for supporting the work of multiple FC-AE-1553 nodal parallels that present pre-ferred embodiments provide and its Implementation method a, wherein node card is integrated with 1 NC node and k NT node, and k+1 FC-AE-1553 node can be with Independently concurrent working.As shown in Figure 1, node card includes optical module and the FPGA for supporting PCI-E bus interface, node card passes through PCI-E interface is communicated with main frame, is equipped with driving and application software in main frame, FPGA connection application software and Optical module.Application software is for being put into (the i.e. unlatching meeting of driving caching for data to be sent and session descriptor when generating session Words), session data and session descriptor (terminating session) are extracted after conversation end from driving caching, driving is for being node NC node and k NT node in card distribute an independent spatial cache.Wherein, driving for the NC in node card for saving Point and k NT node distribute an independent spatial cache, and the assigned spatial cache of each node includes that transmission data are slow It deposits, receive data buffer storage, session descriptor caching and session descriptor pointer caching, in which:
Send data buffer storage, the Payload data of infilled frame when for encapsulated frame.
Data buffer storage being received, the Payload data of frame are stored when for receiving processing frame.
Session descriptor caching will for storing the session descriptor of each session: an application software session of every generation The session descriptor caching of the session descriptor filling NC node of the session, notifies NC session status is machine-readable to take session descriptor simultaneously Open session;After NC session status machine or NT session status machine complete a session, the session descriptor of current sessions is generated simultaneously The session descriptor caching of corresponding node is written.Each node possesses a set of for judging whether session is completed and using soft Part and the known session descriptor of FPGA read and write pointer, and it includes session descriptor write pointer and meeting that session descriptor, which reads and writes pointer, Talk about descriptor read pointer.Application software generate session descriptor by conversation modes, D_ID, send data volume/reception data volume, Initial address composition of the data in caching storage;The session descriptor that NC session status machine or NT session status machine generate is by data In the initial address of caching storage, transmission data volume/reception data volume, OX_ID and session state information composition.
Session descriptor pointer caching: the conversation description updated after session is completed for storing NC node and k NT node Write pointer is accorded with, to notify application software current sessions to be completed.
Application software is for being put into (the i.e. unlatching meeting of driving caching for data to be sent and session descriptor when generating session Words), extract session data and session descriptor (terminating session) from driving caching after conversation end.
FPGA includes FC-AE-1553 session status machine, read-write requests scheduler module, PCI-E interface module, register mould Block completes message processing module (MPM), frame transmission scheduler module, frame receiving processing module, frame transmission FIFO, frame reception FIFO, optical fiber Channel transceiver module.Wherein:
FC-AE-1553 session status machine: including the NC session status machine for realizing NC nodal function and for realizing NT The NT session status machine of nodal function reads session descriptor when for opening session, frame encapsulation sends and receives processing, completes It is generated when session and stores session descriptor.In the present invention, " frame " is the general designation of command frame, data frame and status frames, i.e., pending Give or received frame can be these three frames any one, command frame, data frame and status frames include SOF, frame head, Payload data (can be 0 byte), CRC, EOF, frame head includes D_ID, OX_ID etc..For the frame without Payload data Encapsulation is sent and reception processing, FC-AE-1553 session status machine are completed in inside.FC-AE-1553 session status machine packaging belt When the frame of Payload data, to initiate to store to the transmission data buffer storage of the corresponding node of FC-AE-1553 session status machine Device read request, and the Payload field that payload fills the frame is extracted from message is completed;Receive processing band Payload data Frame when, to the reception data buffer storage of the corresponding node of FC-AE-1553 session status machine initiate memory write request, and Payload data are stored in the reception data buffer storage of the node.Wherein, NC session status machine can be configured to monitoring mode or non-prison Control mode, under non-monitor mode, NC session status machine plays the function of network-control as NC node;In the monitoring mode, NC session status machine monitors all flows of network as the monitoring node in network.
Read-write requests scheduler module: memory of the polling dispatching from NC session status machine and NT1~NTk session status machine Read request and memory write request arbitrate out the request of a read request or memory write request as current service, And notify PCI-E interface module that the request arbitrated out is formed corresponding TLP message and is sent to PCI-E bus.Read-write requests scheduling Module is for solving multiple NC session status machines or NT session status machine while initiating read request and memory write request And PCI-E module can only serial process read request or the problem of memory write request, include two-wheeled poll:
First round poll: it is write from the read request and memory of NC session status machine and NT1~NTk session status machine A read request and memory write request are selected in request respectively.
Second wheel poll: a kind of request is selected from the read request and memory write request that first round poll is selected As the request of current service, and notify that PCI-E interface module forms corresponding read request TLP message or memory is write Request TLP message.
Particularly, for read request, read-write requests scheduler module can be the read request mark of current service Node serial number (NC node, NT1~NTk node respectively correspond 0~k of number) on note, notice PCI-E interface module are stored in composition When device read request TLP message, Tag field is filled with to the number value of corresponding node, with distinguish different nodes (NC node and NT1~NTk node) read request TLP message.
PCI-E interface module: read request or memory for being arbitrated out for read-write requests scheduler module poll Write request sets up corresponding read request TLP message or memory write request TLP message, and the reading of the memory of composition is asked TLP message or memory write request TLP message is asked to be sent to PCI-E bus, meanwhile, PCI-E interface module is from the total line drawing of PCI-E Completion message, which is sent to, completes message processing module (MPM).Wherein, the Tag field filling corresponding node of read request TLP message is compiled Number 0~k, to distinguish the read request TLP message of different NC nodes and NT node.
Register module: for storing the configurable register of application software, FC_ID including NC node and NT node and Session descriptor write pointer, NC node and the NT of FC_ID routing table, the unlatching session of NC node that several multicasts FC_ID is constituted Node respectively the base address of all kinds of cachings in spatial cache, NC session status machine operating mode (listening mode or non-snoop Mode).
Complete message processing module (MPM): the completion message for sending PCI-E interface module is sent to corresponding NC session shape State machine or NT session status machine.It completes message processing module (MPM) and PCI-E interface module follows 0~k of Tag field value and respectively corresponds NC node, NT1 node ..., the rule of NTk node.PCI-E interface module is what read-write requests scheduler module poll was arbitrated out When read request TLP message, the Tag field of corresponding read request TLP message can be filled out as corresponding node Number;Tag field can be extracted from the completion message received by completing message processing module (MPM), according to the current Tag for completing message Field value is sent to corresponding NC session status machine or NT session status machine for message is completed by above-mentioned rule.
Frame sends scheduler module: with the transmission FIFO of k+1 frame corresponding to NC session status machine and k NT state machine and Optical-fibre channel transceiver module is connected, and sends poll in FIFO from the frame of NC session status machine and k NT session status machine and arbitrates out One FIFO as current service, and read a frame from the FIFO and be sent to optical-fibre channel transceiver module.
Frame receiving processing module: for store application software configuration NC node and k NT node FC_ID and several The FC_ID routing table that multicast FC_ID is constituted, and after often receiving a frame, FC_ID routing is inquired according to the D_ID of the frame Then the frame that some corresponding node is written in this frame is received FIFO (unicast) or the frame reception of multiple nodes is written in duplication by table FIFO (multicast or broadcast).In frame receiving processing module, FC_ID routing table is made of FC_ID and k+1 routing, wherein k+1 Position routing respectively indicates the frame reception FIFO whether current received frame is sent to NC node or NT1~NTk node from high to low In, such as: the corresponding routing of the multicast FC_ID of NT1 node and NT2 node is 0110...0.Particularly, when NC session status machine When in monitoring mode, present frame can also replicate a write-in NC node other than the frame that corresponding node can be written receives FIFO Frame receive FIFO in.When NC session status machine is in non-monitor mode, if the D_ID of present frame is not in FC_ID routing table It is interior, then it can be abandoned by frame receiving processing module.
Frame sends FIFO: the frame sent for storing NC session status machine or NT session status machine, the session of each node State machine is corresponding with a frame and sends FIFO, and the interface signal of the session status machine of each node sends FIFO with corresponding frame Interface signal be connected.
Frame receives FIFO: for storing the received frame of frame receiving processing module, the session status machine of each node is corresponding There is a frame to receive FIFO, the interface signal of the session status machine of each node receives the interface signal phase of FIFO with corresponding frame Even.
Fiber channel transceiver module: for realizing the transformation of the serial/parallel conversion of data, 8b/10b encoding and decoding and bit wide, specifically Are as follows: on sending direction: by frame to be sent from parallel signal through bit wide transformation, 8b/10b coding and it is parallel/serial be converted into serially Electric signal is sent to optical module.In receiving direction: the serial electric signal that optical module is sent is through serioparallel exchange, 8b/10b decoding and position Width transformation, which is converted to parallel signal and therefrom extracts complete frame, is sent to frame receiving processing module.
A kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work proposed by the present invention, includes one The conversation informing mechanism of kind dialogue-based descriptor read-write pointer, according to conversation informing direction, (including application software notifies FPGA Open conversation direction and FPGA notify application software conversation end direction), session descriptor read-write pointer is divided into two kinds: the first It is a set of session descriptor read-write pointer for opening session just possessed as enabled NC node, that is, is used for application software It notifies FPGA to open the session descriptor write pointer and session descriptor read pointer of session, after application software generates session, updates The session descriptor write pointer of enabled NC node to notify the NC node in FPGA to open session, enable NC nodal test to oneself Session descriptor read pointer and when session descriptor write pointer difference, then it represents that there is session not open.Second is node card All nodes for inside including possess a set of for judging whether session is completed and the known meeting of application software and FPGA It talks about descriptor and reads and writes pointer, when a side updates session descriptor write pointer or session descriptor read pointer, be notified that another party Update corresponding pointer, the as session descriptor for NC node and the notice application software session completion of NT node in FPGA Write pointer and session descriptor read pointer will be updated the session descriptor write pointer of oneself, application after the completion session of some node Software detection is to the session descriptor read pointer of the node and when session descriptor write pointer difference, then it represents that the node has session It is completed.
On sending direction, FC-AE-1553 session status machine is to command frame, data frame and the state for having Payload data The encapsulation of frame needs to read data from the transmission data buffer storage of the corresponding node of FC-AE-1553 session status machine with infilled frame Payload field, it is to the command frame and status frames without Payload data, then complete inside FC-AE-1553 session status machine At encapsulation.In receiving direction, FC-AE-1553 session status machine is in command frame of the processing with Payload data, data frame and shape When state frame, need the reception data buffer storage of the corresponding node of Payload data write-in FC-AE-1553 session status machine of frame In, to the command frame and status frames without Payload, then completed in FC-AE-1553 session status machine inter-process.It ties below Close the treatment process that modules introduce node card sending direction and receiving direction data.
The data handling procedure of node card in a transmit direction is as follows:
(I-a), FC-AE-1553 session status machine processing application software once generates the conversation description of multiple session compositions Symbol group, and according to the encapsulation of the session descriptor of session each in session descriptor group completion command frame, data frame and status frames, if Current frame to be sent needs to read session descriptor, FC-AE-1553 with Payload data or current NC session status machine Session status machine initiates read request to read-write requests scheduler module, at the same by the address of spatial cache for needing to read and Length is sent to read-write requests scheduler module.Conversely, if current frame to be sent is machine-readable without Payload data or NC session status It gets and does not include session descriptor in frame to be sent, the encapsulation of frame is completed inside FC-AE-1553 session status machine, not to reading Write request scheduler module initiates read request, and after the completion of frame encapsulation, the frame for being written into corresponding node sends FIFO, jumps To step (I-f).In addition, data and the initial address of session descriptor storage from register module obtain (be directed to NT node) or It is extracted from session descriptor and (is directed to NC node), the session status machine internal accounting of each node, which calculates from spatial cache, reads number According to address, length determines by the data volume received or sent.
(I-b), read-write requests scheduler module is deposited using polling dispatching algorithm to from FC-AE-1553 session status machine Reservoir read request is scheduled, and arbitrates out read request the depositing as current service that a NC node or NT node are initiated Reservoir read request, and upper node serial number (NC node, NT1~NTk node respectively correspond 0~k of number) is marked for it, it is asked wait read and write When scheduler module being asked to handle read request, by the address for the read request arbitrated out and length and its corresponding node Number is sent to PCI-E interface module.
(I-c), PCI-E interface module is that the read request that read-write requests scheduler module is arbitrated out sets up memory reading TLP message is requested, read request TLP message format is as shown in Figure 2, wherein Address, Length and Tag field difference Address, length and the node serial number for the read request that filling read-write requests scheduler module is sent.Meanwhile PCI-E interface Module is extracted from PCI-E bus completes message, and completion message is sent to and completes message processing module (MPM).Wherein, total from PCI-E The message of completing extracted on line is specially the message for responding read request, i.e., PCI-E bus often receives primary memory reading Request will be encapsulated in from the data for sending data buffer storage reading and complete in message and return to FPGA.
(I-d), it completes message processing module (MPM) and extracts the Tag field for completing message, respectively correspond NC section according to 0~k of Tag value Point, NT1 node ..., the rule of NTk node, message will be completed and be sent to corresponding NC session status machine or NT session status machine.
(I-e), FC-AE-1553 session status machine finishes receiving message, if the payload storage for completing message is meeting Descriptor is talked about, then FC-AE-1553 session status machine is handled in internal completion, i.e., session descriptor is extracted from payload, no It is sent in FIFO toward frame and any data is written;Otherwise, FC-AE-1553 session status machine extracts payload from message is completed The Payload field of infilled frame, and SOF, frame head, Payload data, CRC, EOF frame that oneself is written are sent into FIFO, In, SOF, frame head, CRC, EOF are generated inside FC-AE-1553 session status machine.
(I-f), frame sends scheduler module using polling dispatching algorithm to NC session status machine and k NT session status machine Frame sends FIFO and is polled scheduling, and the frame for arbitrating out a node sends FIFO of the FIFO as current service, and therefrom reads A frame is taken to be sent to optical-fibre channel transceiver module.
(I-g), optical-fibre channel transceiver module by the frame frame that sends of transmission scheduler module by parallel signal through bit wide transformation, 8b/10b coding is converted to serial electric signal and is sent to optical module with parallel/serial.
The data handling procedure of node card in a receive direction is as follows:
(II-a), the serial electric signal that optical-fibre channel transceiver module sends optical module is solved through serial/parallel conversion, 8b/10b Code and bit wide transformation are converted to parallel data, and extract frame from parallel data and be sent to frame receiving processing module.
(II-b), frame receiving processing module extracts D_ID field value from the frame that optical-fibre channel transceiver module is sent, and It tables look-up by FC_ID routing table, FIFO (unicast) is received according to the frame that some corresponding node is sent in the routing tabled look-up Or the frame of certain nodes receives FIFO (multicast or broadcast).When monitoring node as network of NC node in node card, frame The frame that the NC session status machine of the NC node can be also written in the frame received by receiving processing module receives in FIFO.
(II-c), NC session status machine or NT session status machine examination measure corresponding frame and receive FIFO when not being sky, It is just received in FIFO from frame and reads frame: if currently processed frame need to be sent to prison with Payload data or currently processed frame NC session status machine under control mode, then by the Payload data of the frame or the reception data of complete frame deposit corresponding node In caching, NC session status machine or NT session status machine will be write to read-write requests scheduler module initiation memory write request The length of the address and Payload data that enter to receive data buffer storage is sent to read-write requests scheduler module, then executes step (II- And (II-e) d);Conversely, received frame is disposed by NC session status machine or NT session status machine in therein, it is not written into Data buffer storage is received, also without step (II-d) and (II-e).
(II-d), read-write requests scheduler module is using polling dispatching algorithm from from NC session status machine and NT session status Memory write request of the memory write request as current service is arbitrated out in the memory write request of machine, to current block When handling the memory write request arbitrated out, PCI-E interface module is sent in the address of the memory write request and length.
(II-e), PCI-E interface module is that the memory write request that read-write requests scheduler module is arbitrated out sets up memory Write request TLP message, memory write request TLP message format are as shown in Figure 2, wherein Address, Length are respectively filled in reading The address and length that write request scheduler module is sent;Meanwhile PCI-E interface module is received from the frame of the node of current service The Payload data that frame is read in FIFO, for filling the Load field of memory write request TLP message.
As shown in figure 3, the present embodiment is with one by two FC-AE-1553 node cards (node card 1 and node card 2) and one Platform FC exchange mechanism at FC-AE-1553 network for, further illustrate and proposed by the present invention a kind of support multiple FC-AE- The node card implementation method of 1553 nodal parallels work.It include 1 NC node and 8 NT inside node card 1 and node card 2 Node, the node in node card 1 are respectively designated as NC1, NT1~NT8, the node in node card 2 be respectively designated as NC2, NT9~ NT16, FC interchanger configure the routing between port 2 and port 10, and node card 1, node card 2 are separately connected FC interchanger Port 2, port 10.Specific step is as follows for node card 1 and 2 concurrent working of node card:
Step 1, initialization node card, concrete operations are as follows:
(1-1), application software select enabled NC1 node, NT1~NT8 node, NT9~NT16 node according to user configuration And not enabling NC2 node, i.e., configuration NC1 node configures the conduct of NC2 node as FC-AE-1553 network-based control node The monitoring node of FC-AE-1553 network.
(1-2), initialization node card driving: an independent caching is randomly assigned for 2 NC nodes and 16 NT nodes Space, and unicast FC_ID and multicast FC_ID and its routing are configured for enabled NC1 node, NT1~NT16 node, it is configured to answer Pointer is read and write with the session descriptor whether software detection NC node and NT node complete session, and initializes the session descriptor Reading and writing pointer is 0.
(1-3), initialization node card FPGA portion: the FC_ID routing table of configuration node card 1 and node card 2, such as Fig. 4 institute Show, wherein FFFB02 is the multicast ID of NT9 and NT10;It is configured to the meeting whether NC nodal test application software generates session It talks about descriptor and reads and writes pointer, and initializing session descriptor read-write pointer is 0.
Step 2, application software once generate multiple sessions, and the session descriptor of each session is continuously written into NC node Session descriptor caching updates the session descriptor write pointer of NC node and NC session status machine is notified to open session.With this reality For 2 sessions for applying example, step 2 concrete operations are as follows:
(2-1), application software once generate 2 sessions, and NC node data to be sent are put into the transmission number of NC node According to the transmission data buffer storage for being put into NT node in caching or by the data that NC node request NT node is sent.Session 1 and session 2 Conversation procedure is as shown in Figure 5, wherein session 1:NC-NT mode (NC1-NT9, NT10), multicast enable NC1 node and send 4096B data, Payload data are cut by maximum 2048B.Session 2:NT-NC mode (NT9-NC1), unicast enable NC1 section Point request NT9 node sends 512B data, and Payload data are cut by maximum 128B, and NT9 node is in the transmission data of oneself Put data in caching well.
(2-2), application software will be in the session descriptor cachings of session descriptor filling NC node.For session 1, application Software is continuously put into 4096B data to the transmission data buffer storage of enabled NC1 node, then that the session descriptor of session 1 is continuous It is put into the session descriptor caching of enabled NC1 node.For session 2, NT9 node is first put well in the transmission data buffer storage of oneself After data, the session descriptor of application software and then session 1, it will the session descriptor for talking about 2 is continuously put into enabled NC1 node Session descriptor caching in.
(2-3), after the session descriptor of session 1 and session 2 is put into the session descriptor caching of enabled NC1 node, The session descriptor write pointer that application software updates enabled NC1 node is 2, to notify enabled NC1 node to open session.
In the present embodiment, the session descriptor read pointer of NC1 session status machine is 0, and session descriptor write pointer is 2, The two difference 2 indicates have 2 sessions not open in caching, and NC1 session status chance first caches from session descriptor and reads session 1 Session descriptor, then according to session descriptor Information encapsulation and send command frame and data frame, sent command frame sum number After frame, NT9 node and NT10 node reverts back status frames are waited.
Step 3~8 mainly illustrate the conversation procedure of session 1, and the realization process of session 2 will briefly describe later.
After step 3, NC1 session status machine examination measure application software update session descriptor write pointer, from session descriptor Caching reads a session descriptor, sends and receives processing according to the encapsulation that conversation procedure completes frame.According to conversation procedure and Data volume/reception data volume is sent, judgement is to continue with encapsulation transmission or waiting receives processing next frame or current sessions are complete At.
The detailed process of step 3 is described as follows:
(3-1), NC1 session status machine examination measure oneself session descriptor write pointer and session descriptor read pointer it is different When cause, cache to the session descriptor of enabled NC1 node and initiate read request: NC1 session status machine is from session descriptor Caching reads the session descriptor of session 1, and process is (I-a)~(I-d) of above-mentioned sending direction data handling procedure.
(3-2), NC1 session status machine parse session descriptor from the completion message for having session descriptor, including Conversation modes, D_ID, send data volume/reception data volume, data caching storage initial address, wherein current sessions are NC-NT mode, D_ID FFFB02, transmission data volume/reception data volume are 4096B.
(3-3), NC1 session status machine are according to maximum frame length cutting data set by user, i.e., in packaging belt Payload number According to command frame and data frame when, every time request from send data buffer storage read data volume be no more than setting maximum frame length; In command frame of the encapsulation without Payload data, being encapsulated in inside NC1 session status machine for the command frame is completed, without from It sends data buffer storage and reads data.It is specific as follows:
Firstly, NC1 session status machine need from send data buffer storage continuously take 4096B data be sent to NT9 node and NT10 node (the multicast FC_ID that FFFB02 is NT9 node and NT10 node), Payload data are cut by 2048B, i.e., NC1 session status machine is sent the command frame and data of the Payload data with 2048B by conversation procedure as shown in Figure 5 Frame.
Then, NC1 session status machine encapsulates and sends command frame and data frame.Envelope command frame first: dialogue-based to retouch Symbol is stated, command frame frame head generates inside FC-AE-1553 session status machine, and NC1 session status machine is needed from enabled NC1 node Transmission data buffer storage read the data of 2048B to fill the Payload field of command frame, postpone and access the detailed process of data For (I-a)~(I-d) of above-mentioned sending direction data procedures.After NC1 session status machine receives completion message, by a complete frame The frame that enabled NC1 node is written in (including SOF, frame head, Payload, CRC, EOF) sends FIFO.Command frame sends FIFO from frame It reads into and is transferred to the step of process of link is above-mentioned sending direction data handling procedure (I-f), (I-g).The envelope of data frame Dress and transmission process are similar with mentioned order frame, repeat no more.
Command frame and data frame are packaged and be written after the frame of enabled NC1 node sends FIFO, and NC1 session status machine jumps To the state for waiting NT9 node and NT10 node reverts back status frames.The every encapsulation of NC1 session status machine, which has sent or received, have been handled After one frame, under being to continue with encapsulation transmission according to conversation modes and transmission data volume/reception data volume judgement or reception waited to handle One frame or current sessions terminate.
The command frame and data frame that FC interchanger issues port 2 by FC_ID routing table are forwarded, the D_ID of this two frame (0xFFFB02) is the Multicast Routing of NT9 node and NT10 node, and command frame and data frame are forwarded to port by FC exchange opportunity 10。
After step 4:NC1 session status machine opens session, the NT session status machine of local or opposite end is from NC1 session status machine Conversation modes are extracted in the command frame of transmission and send data volume/reception data amount information, and complete frame according to conversation procedure Encapsulation sends and receives processing.After the every encapsulation of NT session status machine has sent or has received and handled a frame, according to conversation modes with NC specified transmission data volume/reception data volume judgement, which is to continue with encapsulation transmission or waits, receives processing next frame, or current Session is completed.The detailed process of step 4 is described as follows:
(4-1), NT session status machine receive the relevant information of command frame and resolve command frame, including conversation modes, transmission Data volume/reception data volume.
(4-2), NT session status machine are set by user or the maximum frame length cutting data of NC request, i.e., in packaging belt When the command frames of Payload data, status frames and data frame, request is no more than from the data volume that data buffer storage is read is sent every time The maximum frame length of setting;When user setting command frame, status frames are corresponding without Payload data or current NT session status machine When the transmission data buffer storage of NT node is without valid data, the encapsulation of command frame, status frames is completed inside state machine, is not needed Data are read from data buffer storage is sent.Specifically: the NT9 node and NT10 node of node card 2 receive processing command frame and data Then frame, first processing command frame reprocess data frame, the treatment process of data frame is similar to command frame, in the present embodiment not It repeats again.The treatment process of command frame is as follows:
Firstly, seeing above-mentioned reception from optical-fibre channel transceiver module to the treatment process FC-AE-1553 session status machine The step of bearing data treatment process (II-a) and (II-b);Wherein, the FC_ID of frame receiving processing module extraction command frame is FFFB02 is tabled look-up to obtain routing 01100_0000 by routing table as shown in Figure 4, that is, is needed command frame NT9 and NT10 is written Frame receive FIFO;Simultaneously in view of NC2 node is as monitoring node, can also NC2 be written in command frame by frame receiving processing module The frame of node receives FIFO.
Then, NT9 session status machine and NT10 session status machine receive the frame head of read-out command frame in FIFO from frame and mention Take session information: current sessions mode is NC-NT mode, and enabled NC1 node needs to send the data of 4096B altogether.Meanwhile currently Payload data of the received command frame with 2048B, NT9 session status machine and NT10 session status machine are needed 2048B's Payload data are respectively stored into the reception data buffer storage of NT9 node and NT10 node, and detailed process is shown in above-mentioned receiving direction number According to (II-d), (II-e) the step for the treatment of process.In addition, NC2 session status machine in the monitoring mode also can be by the frame of NC2 node The command frame for receiving FIFO is written to the reception data buffer storage of NC2 node, and detailed process is shown in above-mentioned receiving direction data processing The step of journey (II-d), (II-e).Unlike non-monitor mode, NC2 node is write toward data buffer storage is received under monitoring mode What is entered is the Payload data of a complete frame and more than frame, and the session descriptor and session descriptor pointer of NC2 node are not yet But to describe a frame for describing a session, often write can write after a frame session descriptor and update it is primary oneself Session descriptor pointer.
Again, after having handled command frame and data frame, NT9 session status machine, NT10 session status machine have received NC and have referred to Fixed received 4096B data can also encapsulate a shape inside NT9 session status machine, NT10 session status machine according to conversation procedure State frame and the frame transmission FIFO for being written into NT9 node and NT10 node, for NC recoil state frame, status frames to be transmitted across Journey is shown in step (I-f) in above-mentioned sending direction data handling procedure, (I-g).For NT9 node and NT10 node, meeting Words 1 are completed.
Finally, after NT9 node and NT10 node complete session, NT9 session status machine and NT10 session status machine respectively to NT9 node, NT10 node session descriptor caching be written this session session descriptor, including data caching storage Initial address sends data volume/reception data volume, OX_ID, session state information;Then NT9 node, NT10 node are updated Session descriptor write pointer is 1.
Step 5:NC session status machine and NT session status machine have sent all frames or have received all frames or session timeout After, the session descriptor that this session generates is written into the conversation description of oneself caching, session descriptor includes data Initial address, transmission data volume/reception data volume, OX_ID, session state information in caching storage.Session descriptor is written Later, NC session status machine and NT session status machine update the session descriptor write pointer of oneself, to notify that application software is current Session is completed.
The status frames of NT9 node and NT10 node reverts back are forwarded to port 2 from port 10 by FC interchanger, meanwhile, FC is handed over It changes planes and the two status frames is forwarded to port 10 again, and the two status frames are sent by above-mentioned receiving direction data handling procedure Toward the reception data buffer storage of NC2 node.
Node card 1 is shown in above-mentioned reception data processing to the treatment process of the status frames of NT9 node and NT10 node reverts back The step of journey (II-a)~(II-c), when NC1 session status machine has handled the status frames of NT9 node and NT10 node reverts back, For NC1 session status machine, session 1 is completed, and NC1 session status chance caches write-in conversation description to session descriptor Symbol, and updating session descriptor write pointer is 1.
Step 6: when application software detects that the session descriptor write pointer of NC node and NT node updates, can be saved from corresponding Corresponding session descriptor and session data are extracted in the spatial cache of point and are sent to rear class processing.It is specific as follows:
Store in the application software of node card 1 and node card 2 enabled NC1 node, NT1~NT8 node, NC2 node and The session descriptor read pointer of NT9~NT16 node.After the completion of session 1, the application software of node card 1 detects enabled NC1 section Point session descriptor read pointer (for 0) than enabled NC1 node session descriptor write pointer (for 1) poor 1 when, it is known that currently make Energy NC1 node completes a session, then can first read a session descriptor, extracts session status letter further according to session descriptor It ceases and rear class is sent to handle, such as in interface real-time display.
Treatment process and node card 1 of the application software of node card 2 after the completion of session 1 are similar, slightly different: section The Payload data of the command frame received and data frame are also written reception data and delayed by the NT9 node and NT10 node of point card 2 It deposits, therefore application software other than it can extract the session state information in session descriptor, can also when reading session descriptor It in the initial address of caching storage and receives data volume according to data and extracts session data, and by session state information and session number According to sending rear class to handle, such as in interface real-time display.Further, since monitoring node of the NC2 node as network, NC2 node often connect A session descriptor can be write by receiving a frame, and after the completion of session 1, the session descriptor write pointer of NC2 node is updated to 4, application Software in the initial address of caching storage and can receive the complete life of data volume field reading according to the data in session descriptor The status frames of frame, data frame and NT9 node, NT10 node reverts back are enabled, and rear class is sent to handle.
The realization process of session 2 is similar to step 3~8, after the completion of session 2 also, enables the session descriptor of NC1 node Write pointer is updated to 2, indicates that two sessions of current application Software Create are completed.
The foregoing is merely illustrative of the preferred embodiments of the present invention, is not intended to limit the invention, all in essence of the invention Made any modifications, equivalent replacements, and improvements etc., should all be included in the protection scope of the present invention within mind and principle.

Claims (9)

1. a kind of node card for supporting multiple FC-AE-1553 nodal parallel work, including optical module, which is characterized in that further include It supports PCI-E bus interface and the FPGA that connect with optical module, is integrated with 1 NC node and k NT node in node card, and K+1 FC-AE-1553 node can independently concurrent working.
2. a kind of node card for supporting multiple FC-AE-1553 nodal parallel work according to claim 1, feature exist In, the node card is communicated by PCI-E interface with main frame, driving and application software are installed in main frame, FPGA connection application software and optical module;Wherein:
Driving, for in node card NC node and k NT node distribute an independent spatial cache, each node quilt The spatial cache of distribution includes sending data buffer storage, reception data buffer storage, session descriptor caching and session descriptor pointer to delay It deposits, in which:
Send data buffer storage, the Payload data of infilled frame when for encapsulated frame;
Data buffer storage being received, the Payload data of frame are stored when for receiving processing frame;
Session descriptor caching, for storing the session descriptor of each session: an application software session of every generation, by the meeting The session descriptor caching of the session descriptor filling NC node of words, notifies NC session status is machine-readable to take session descriptor and open Session;After NC session status machine or NT session status machine complete a session, the session descriptor of current sessions and write-in are generated The session descriptor of corresponding node caches;Each node possess it is a set of for judge session whether complete and application software and The known session descriptor of FPGA reads and writes pointer, and it includes that session descriptor write pointer and session are retouched that session descriptor, which reads and writes pointer, State symbol read pointer;The session descriptor that application software generates is by conversation modes, D_ID, transmission data volume/reception data volume, data In the initial address composition of caching storage;The session descriptor that NC session status machine or NT session status machine generate is by data slow The initial address of storage sends data volume/reception data volume, OX_ID and session state information composition;
Session descriptor pointer caching: it is write for storing the session descriptor that NC node and k NT node are completed to update after session Pointer, to notify application software current sessions to be completed;
Application software, when for generating session by data to be sent and session descriptor be put into driving caching, after conversation end from Session data and session descriptor are extracted in driving caching.
3. a kind of node card for supporting multiple FC-AE-1553 nodal parallel work according to claim 1, feature exist In the FPGA includes FC-AE-1553 session status machine, read-write requests scheduler module, PCI-E interface module, register mould Block completes message processing module (MPM), frame transmission scheduler module, frame receiving processing module, frame transmission FIFO, frame reception FIFO, optical fiber Channel transceiver module, in which:
FC-AE-1553 session status machine.Including the NC session status machine for realizing NC nodal function and for realizing NT node The NT session status machine of function reads session descriptor when for opening session, frame encapsulation sends and receives processing, completes session Shi Shengcheng simultaneously stores session descriptor, wherein frame includes command frame, data frame and status frames;
Read-write requests scheduler module, polling dispatching are asked from the reading of the memory of NC session status machine and NT1~NTk session status machine Sigma memory write request is arbitrated out the request of a read request or memory write request as current service, and is led to Know that the request arbitrated out is formed corresponding TLP message and is sent to PCI-E bus by PCI-E interface module;
PCI-E interface module, read request or memory for arbitrating out for read-write requests scheduler module poll are write and are asked It asks and sets up corresponding read request TLP message or memory write request TLP message, and by the read request of composition TLP message or memory write request TLP message are sent to PCI-E bus, meanwhile, PCI-E interface module is complete from the total line drawing of PCI-E It is sent at message and completes message processing module (MPM);
Register module, for storing the configurable register of application software, FC_ID including NC node and NT node and several Session descriptor write pointer, NC node and the NT node of FC_ID routing table, the unlatching session of NC node that a multicast FC_ID is constituted The base address of all kinds of cachings in respective spatial cache, NC session status machine operating mode;
Message processing module (MPM) is completed, the completion message for sending PCI-E interface module is sent to corresponding NC session status machine Or NT session status machine;
Frame sends scheduler module, for sending poll arbitration in FIFO from the frame of NC session status machine and k NT session status machine A FIFO as current service out, and read a frame from the FIFO and be sent to optical-fibre channel transceiver module;
Frame receiving processing module, for storing the NC node of application software configuration and the FC_ID and several multicasts of k NT node The FC_ID routing table that FC_ID is constituted, and after often receiving a frame, FC_ID routing table is inquired according to the D_ID of the frame, it will The frame that some corresponding node is written in this frame receives FIFO or the frame reception FIFO of multiple nodes is written in duplication;Wherein, FC_ID Routing table is made of FC_ID and k+1 routing, and whether k+1 routings respectively indicate be sent to current received frame from high to low The frame of NC node or NT1~NTk node receives in FIFO;When NC session status machine is in monitoring mode, present frame is in addition to meeting It is received outside FIFO by the frame of frame receiving processing module write-in corresponding node, the frame that can also replicate a write-in NC node receives FIFO In;When NC session status machine is in non-monitor mode, if the D_ID of present frame not in FC_ID routing table, the receiving area Ze Zheng Reason module abandons the frame;
Frame sends FIFO: the frame sent for storing NC session status machine or NT session status machine, the session status of each node Machine is corresponding with a frame and sends FIFO;
Frame receives FIFO: for storing the received frame of frame receiving processing module, the session status machine of each node is corresponding with one A frame receives FIFO;
Fiber channel transceiver module: for realizing the transformation of the serial/parallel conversion of data, 8b/10b encoding and decoding and bit wide.
4. a kind of node card for supporting multiple FC-AE-1553 nodal parallel work according to claim 3, feature exist In, the operating mode of the NC session status machine is monitoring mode or non-monitor mode, under non-monitor mode, NC session status Machine plays the function of network-control as NC node;In the monitoring mode, NC session status machine is as the monitoring section in network Point monitors all flows of network.
5. a kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work, which is characterized in that including following Step:
Step 1, initialization node card: for the NC node and the k independent spatial cache of NT node distribution of every node card, selection Enabled NC node, and unicast FC_ID and multicast FC_ID and its routing are configured for enabled NC node and each NT node;
Step 2, application software once generate multiple sessions, and the session descriptor of each session and session data are continuously write respectively Enter the session descriptor caching of NC node and sends data buffer storage, update the session descriptor write pointer of NC node and notify NC meeting Speech phase machine opens session;Wherein, session descriptor includes conversation modes, D_ID, sends data volume/reception data volume, data In the initial address of caching storage;
Step 3, NC session status machine read and parse session descriptor from the session descriptor of NC node caching, according to session The encapsulation that process completes frame sends and receives processing;According to conversation procedure and data volume/reception data volume is sent, judgement is to continue with Encapsulation sends or waits reception processing next frame or current sessions to be completed;
Step 4, NT session status machine extract session information from the command frame that NC session status machine is sent, including conversation modes and Data volume/reception data volume is sent, and sends and receives processing according to the encapsulation that conversation procedure completes frame;NT session status machine is every After encapsulation has sent or has received and handled a frame, transmission data volume/reception number for being specified according to conversation modes and enabled NC node Encapsulation transmission is to continue with according to amount judgement or waiting receives processing next frame or current sessions are completed;
Step 5, NC session status machine and NT session status machine, which have sent all frames or received all frames or session timeout, to be terminated Afterwards, the session descriptor that this session generates is written into the conversation description of oneself caching, including data rising in caching storage Beginning address, send data volume/reception data volume, OX_ID and session state information, meanwhile, NC session status machine and NT session shape State machine updates the session descriptor write pointer of oneself, to notify application software current sessions to be completed and carry out session next time;
Step 6, application software extract phase from the spatial cache for having the NC node for updating session descriptor write pointer and NT node The session descriptor and session data answered, and it is sent to rear class processing.
6. a kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work according to claim 5, It is characterized in that, implementation method is completed based on a kind of conversation informing mechanism of dialogue-based descriptor read-write pointer, specifically:
According to conversation informing direction, it includes following two that session descriptor, which reads and writes pointer:
The first: opening the session descriptor write pointer and session descriptor read pointer of session for application software notice FPGA, After i.e. application software generates session, the session descriptor write pointer of NC node is updated to notify the NC node in FPGA to open meeting Words indicate that session is not opened when NC nodal test is to oneself session descriptor read pointer and session descriptor write pointer difference It opens;
Second: in FPGA NC node and NT node notice application software session complete session descriptor write pointer and It will be updated the session descriptor write pointer of oneself, application software inspection after the completion session of session descriptor read pointer, i.e. some node When measuring the session descriptor read pointer and session descriptor write pointer difference of the node, then it represents that the node has session complete At;
Conversation informing direction includes that application software notice FPGA opens conversation direction and FPGA notice application software conversation end side To.
7. a kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work according to claim 5, It is characterized in that, the FC-AE-1553 session status machine complete to send without the encapsulation of the frame of Payload data internal and Reception processing;It, be to the FC-AE-1553 session status when frame of FC-AE-1553 session status machine packaging belt Payload data The transmission data buffer storage of the corresponding node of machine initiates read request, and fills the frame from extraction payload in message is completed Payload field;It, be to the corresponding section of FC-AE-1553 session status machine when receiving frame of the processing with Payload data The reception data buffer storage of point initiates memory write request, and Payload data are stored in the reception data buffer storage of the corresponding node.
8. a kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work according to claim 5, It is characterized in that, the read-write requests scheduler module using polling dispatching algorithm to from FC-AE-1553 session status machine Read request and memory write request are scheduled, including two-wheeled poll:
First round poll: from the read request and memory write request of NC session status machine and NT1~NTk session status machine It is middle to select a read request and memory write request respectively;
Second wheel poll: a kind of request conduct is selected from the read request and memory write request that first round poll is selected The request of current service, and PCI-E interface module is notified to form corresponding read request TLP message or memory write request TLP message:
For read request, read-write requests scheduler module will mark upper node for the read request of current service and compile Number, it notifies PCI-E interface module when forming read request TLP message, Tag field is filled with to the number of corresponding node Value, to distinguish the read request TLP message of different nodes.
9. a kind of node card implementation method for supporting multiple FC-AE-1553 nodal parallel work according to claim 5, It is characterized in that, the completion message processing module (MPM) and PCI-E interface module, which follow 0~k of Tag field value, respectively corresponds NC section Point, NT1 node ..., the rule of NTk node, specifically: PCI-E interface module is that read-write requests scheduler module poll is arbitrated out Read request set up read request TLP message when, can be by the Tag word of corresponding read request TLP message Section is filled out as the number of corresponding node;When completion message processing module (MPM) extracts Tag field from the completion message received, according to The current Tag field value for completing message is sent to corresponding NC session status machine or NT session shape for message is completed by above-mentioned rule State machine.
CN201910331371.0A 2019-04-23 2019-04-23 Node card supporting parallel work of multiple FC-AE-1553 nodes and implementation method thereof Active CN110086865B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910331371.0A CN110086865B (en) 2019-04-23 2019-04-23 Node card supporting parallel work of multiple FC-AE-1553 nodes and implementation method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910331371.0A CN110086865B (en) 2019-04-23 2019-04-23 Node card supporting parallel work of multiple FC-AE-1553 nodes and implementation method thereof

Publications (2)

Publication Number Publication Date
CN110086865A true CN110086865A (en) 2019-08-02
CN110086865B CN110086865B (en) 2021-01-29

Family

ID=67416359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910331371.0A Active CN110086865B (en) 2019-04-23 2019-04-23 Node card supporting parallel work of multiple FC-AE-1553 nodes and implementation method thereof

Country Status (1)

Country Link
CN (1) CN110086865B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708119A (en) * 2019-09-20 2020-01-17 天津津航计算技术研究所 Multi-path 1553B bus optical fiber relay device and method
CN111309640A (en) * 2020-01-17 2020-06-19 北京国科天迅科技有限公司 FC-AE-1553 communication system
CN112463655A (en) * 2020-11-14 2021-03-09 武汉汇迪森信息技术有限公司 Data storage and reading method of high-speed data acquisition and storage system
CN113328870A (en) * 2020-02-28 2021-08-31 北京机械设备研究所 Multi-node parallel working method of multi-protocol hybrid network
CN113328926A (en) * 2020-02-28 2021-08-31 北京机械设备研究所 FC-AE-1553 and FC-AE-ASM hybrid network system
US20210328944A1 (en) * 2021-06-25 2021-10-21 Intel Corporation Methods, apparatus, and articles of manufacture to dynamically allocate cache
WO2021253800A1 (en) * 2020-06-15 2021-12-23 北京国科天迅科技有限公司 Fc-ae-1553 network system employing coaxial cables for data transmission
CN114221986A (en) * 2022-02-21 2022-03-22 北京国科天迅科技有限公司 Converged network communication system, communication method, electronic device, and storage medium
CN114244442A (en) * 2021-12-10 2022-03-25 武汉电信器件有限公司 Q-packaged high-speed parallel optical interconnection module and implementation method
CN114390379A (en) * 2021-12-29 2022-04-22 北京航天自动控制研究所 Command response type optical fiber network one-master-to-many-slave concurrent communication method

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162811A1 (en) * 2003-01-13 2008-07-03 Emulex Design And Manufacturing Corporation Alignment-unit-based virtual formatting methods and devices employing the methods
CN103414174A (en) * 2013-08-21 2013-11-27 成都成电光信科技有限责任公司 Electrostatic protection type interface circuit
CN203398776U (en) * 2013-08-21 2014-01-15 成都成电光信科技有限责任公司 FC network port electrostatic protection circuit
CN103888293A (en) * 2014-02-25 2014-06-25 电子科技大学 Data channel scheduling method of multichannel FC network data simulation system
CN103905281A (en) * 2014-04-29 2014-07-02 哈尔滨工业大学 FC-AE-1553 bus node card capable of interchangeably achieving functions of network controller and network terminal
CN104618207A (en) * 2015-01-08 2015-05-13 中国科学院空间应用工程与技术中心 Heterogeneous FC-AE-1553 network system and exchange method
CN105553765A (en) * 2015-12-11 2016-05-04 中国航空工业集团公司西安航空计算技术研究所 FC-AV protocol processing chip network communication robustness testing method
CN106533872A (en) * 2016-11-17 2017-03-22 天津津航计算技术研究所 System for improving transmission efficiency of FC-AE-1553 bus
CN106612141A (en) * 2016-12-20 2017-05-03 北京旋极信息技术股份有限公司 Optical fiber channel protocol general simulation testing card and data interaction method thereof
CN108880948A (en) * 2018-08-17 2018-11-23 成都成电光信科技股份有限公司 A kind of equipment test verifying system and method based on FC network
CN109474341A (en) * 2018-12-21 2019-03-15 上海赛治信息技术有限公司 A kind of fiber optic network and its network topological method

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162811A1 (en) * 2003-01-13 2008-07-03 Emulex Design And Manufacturing Corporation Alignment-unit-based virtual formatting methods and devices employing the methods
CN103414174A (en) * 2013-08-21 2013-11-27 成都成电光信科技有限责任公司 Electrostatic protection type interface circuit
CN203398776U (en) * 2013-08-21 2014-01-15 成都成电光信科技有限责任公司 FC network port electrostatic protection circuit
CN103888293A (en) * 2014-02-25 2014-06-25 电子科技大学 Data channel scheduling method of multichannel FC network data simulation system
CN103905281A (en) * 2014-04-29 2014-07-02 哈尔滨工业大学 FC-AE-1553 bus node card capable of interchangeably achieving functions of network controller and network terminal
CN104618207A (en) * 2015-01-08 2015-05-13 中国科学院空间应用工程与技术中心 Heterogeneous FC-AE-1553 network system and exchange method
CN105553765A (en) * 2015-12-11 2016-05-04 中国航空工业集团公司西安航空计算技术研究所 FC-AV protocol processing chip network communication robustness testing method
CN106533872A (en) * 2016-11-17 2017-03-22 天津津航计算技术研究所 System for improving transmission efficiency of FC-AE-1553 bus
CN106612141A (en) * 2016-12-20 2017-05-03 北京旋极信息技术股份有限公司 Optical fiber channel protocol general simulation testing card and data interaction method thereof
CN108880948A (en) * 2018-08-17 2018-11-23 成都成电光信科技股份有限公司 A kind of equipment test verifying system and method based on FC network
CN109474341A (en) * 2018-12-21 2019-03-15 上海赛治信息技术有限公司 A kind of fiber optic network and its network topological method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
凤雷等: "FC-AE-1553设备光纤接口电路的设计与实现 ", 《电子测量技术》 *
邓发俊等: "一种基于PCIe交换开关的多路FC节点机设计与实现 ", 《电子技术》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708119A (en) * 2019-09-20 2020-01-17 天津津航计算技术研究所 Multi-path 1553B bus optical fiber relay device and method
CN110708119B (en) * 2019-09-20 2022-10-28 天津津航计算技术研究所 Multi-channel 1553B bus optical fiber relay device
CN111309640A (en) * 2020-01-17 2020-06-19 北京国科天迅科技有限公司 FC-AE-1553 communication system
CN113328926A (en) * 2020-02-28 2021-08-31 北京机械设备研究所 FC-AE-1553 and FC-AE-ASM hybrid network system
CN113328870A (en) * 2020-02-28 2021-08-31 北京机械设备研究所 Multi-node parallel working method of multi-protocol hybrid network
CN113328870B (en) * 2020-02-28 2022-11-29 北京机械设备研究所 Multi-node parallel working method of multi-protocol hybrid network
CN113328926B (en) * 2020-02-28 2023-02-24 北京机械设备研究所 FC-AE-1553 and FC-AE-ASM hybrid network system
WO2021253800A1 (en) * 2020-06-15 2021-12-23 北京国科天迅科技有限公司 Fc-ae-1553 network system employing coaxial cables for data transmission
CN112463655B (en) * 2020-11-14 2022-06-14 武汉汇迪森信息技术有限公司 Data storage and reading method of high-speed data acquisition and storage system
CN112463655A (en) * 2020-11-14 2021-03-09 武汉汇迪森信息技术有限公司 Data storage and reading method of high-speed data acquisition and storage system
US20210328944A1 (en) * 2021-06-25 2021-10-21 Intel Corporation Methods, apparatus, and articles of manufacture to dynamically allocate cache
CN114244442A (en) * 2021-12-10 2022-03-25 武汉电信器件有限公司 Q-packaged high-speed parallel optical interconnection module and implementation method
CN114390379A (en) * 2021-12-29 2022-04-22 北京航天自动控制研究所 Command response type optical fiber network one-master-to-many-slave concurrent communication method
CN114390379B (en) * 2021-12-29 2024-03-08 北京航天自动控制研究所 Command response type optical fiber network one-master-multiple-slave concurrent communication method
CN114221986A (en) * 2022-02-21 2022-03-22 北京国科天迅科技有限公司 Converged network communication system, communication method, electronic device, and storage medium
CN114221986B (en) * 2022-02-21 2022-07-22 北京国科天迅科技有限公司 Converged network communication system, communication method, electronic device, and storage medium

Also Published As

Publication number Publication date
CN110086865B (en) 2021-01-29

Similar Documents

Publication Publication Date Title
CN110086865A (en) A kind of node card and its implementation for supporting multiple FC-AE-1553 nodal parallel work
EP1454440B1 (en) Method and apparatus for providing optimized high speed link utilization
CN106790104B (en) IP communication and FC-AE-1553 communication means between multi-protocols emerging system, node
US5519695A (en) Switch element for fiber channel networks
CA2477668C (en) System and method for operating a packet buffer
US5872822A (en) Method and apparatus for memory sequencing
EP0762797A2 (en) Scalable architecture for ATM segmentation and reassembly
US6347097B1 (en) Method and apparatus for buffering received data from a serial bus
US20090080885A1 (en) Scheduling method and system for optical burst switched networks
CN106209679A (en) For using the method and device of the memorizer list of multiple link
US6262989B1 (en) Apparatus and method for providing different quality of service connections in a tunnel mode
CA2134017A1 (en) Network Bridge
CN102185833B (en) Fiber channel (FC) input/output (I/O) parallel processing method based on field programmable gate array (FPGA)
CN110177013A (en) A kind of EtherCAT master-salve station design and implementation methods based on FPGA
EP1064761A1 (en) Apparatus and method for scheduling multiple and simultaneous connections in a communication system
CN101189843A (en) Electronic device and method of communication resource allocation
US6061358A (en) Data communication system utilizing a scalable, non-blocking, high bandwidth central memory controller and method
US6714562B1 (en) Method and apparatus for segmenting network traffic variable length frames
CN113328870B (en) Multi-node parallel working method of multi-protocol hybrid network
US4845704A (en) Switching system for integrated voice/data communications
CN109947390B (en) Buffer system and method of operation thereof
CN109040868A (en) The method and system of ONU end uplink framing in a kind of XGSPON
CN113328926B (en) FC-AE-1553 and FC-AE-ASM hybrid network system
CN1507285A (en) Method of realizing router chip of group exchange network with FPGA device
JPH0697769B2 (en) Distribution mechanism

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