CN113051204B - Serial backboard bus communication method and system - Google Patents

Serial backboard bus communication method and system Download PDF

Info

Publication number
CN113051204B
CN113051204B CN201911379710.9A CN201911379710A CN113051204B CN 113051204 B CN113051204 B CN 113051204B CN 201911379710 A CN201911379710 A CN 201911379710A CN 113051204 B CN113051204 B CN 113051204B
Authority
CN
China
Prior art keywords
data
slave
unit
message
backboard
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911379710.9A
Other languages
Chinese (zh)
Other versions
CN113051204A (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.)
CRRC Dalian R&D Co Ltd
Original Assignee
CRRC Dalian R&D 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 CRRC Dalian R&D Co Ltd filed Critical CRRC Dalian R&D Co Ltd
Priority to CN201911379710.9A priority Critical patent/CN113051204B/en
Publication of CN113051204A publication Critical patent/CN113051204A/en
Application granted granted Critical
Publication of CN113051204B publication Critical patent/CN113051204B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

According to the serial backboard bus communication method and system, whether each slave backboard unit is in a data state to be sent or not is sequentially traversed through the main backboard unit; if yes, the main backboard unit sends a first message to the serial bus, other backboard units receive the first message through the serial bus, whether the data sent by the backboard unit in a data state to be sent is received is determined according to the first message, and if yes, the corresponding backboard unit is in a data receiving state; the slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent; the slave backplane unit in a receive data state receives the second message. The invention realizes that the communication among the slave devices is completed through the scheduling of the main back board unit by the double-message mode, and has the advantages of good real-time performance, strong processing performance, simple hardware structure and easy realization.

Description

Serial backboard bus communication method and system
Technical Field
The present invention relates to the field of electronic communications technologies, and in particular, to a serial backplane bus communication method and system.
Background
With the development of electronic communication technology, data exchange between devices, between control units or between boards in a chassis is more and more frequent, so that the requirements on the access efficiency and reliability of the data transmission of the backboard are also higher and higher.
In the prior art, common serial backboard buses are a Rapid IO bus and a CAN bus. Although serial Rapid IO solves the problem of high-speed transmission of signals between devices or boards through a switching network, rapid IO is a point-to-point communication bus, data exchange among a plurality of boards is realized, each board must be connected with a switching chip in a point-to-point mode through a special Rapid IO switching chip, so that the application range of the Rapid IO is limited, the chip with the Rapid IO bus function is expensive, and the development cost of hardware is increased. The highest communication rate of the CAN bus is only 1Mbps, and a single frame message CAN only transmit 8 bytes of effective data at most, so that the transmission efficiency is low, and the CAN bus is not suitable for large-data-volume communication.
Therefore, a need exists for a new serial backplane bus communication method and system to improve access rate and reliability between individual boards or devices.
Disclosure of Invention
The invention provides a serial backboard bus communication method and a serial backboard bus communication system aiming at the problems.
In a first aspect, the present invention provides a serial backplane bus communication method, adapted to a serial backplane bus communication system, the serial backplane bus communication system comprising a master backplane unit and at least two slave backplane units, the master backplane unit and each slave backplane unit being connected to a serial bus; the method comprises the following steps:
The master backboard unit sequentially traverses whether each slave backboard unit is in a state of data to be sent;
If yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent;
The other slave backboard units receive the first message through the serial bus, determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if so, the corresponding slave backboard units are in the data receiving state, and the other slave backboard units refer to slave backboard units except the slave backboard unit in the data state to be sent;
The slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent;
the slave backplane unit in a receive data state receives the second message.
As a further alternative embodiment, the method further comprises:
When the main backboard unit is in a data state to be transmitted, the main backboard unit transmits a third message to the serial bus, wherein the third message comprises a main backboard unit identifier;
each slave backboard unit receives a third message through the serial bus, determines whether to receive data sent by the main backboard unit according to the third message, and if yes, the corresponding slave backboard unit is in a data receiving state;
The main back board unit sends a fourth message to the serial bus, wherein the fourth message comprises data to be sent;
the slave backplane unit in the receive data state receives the fourth message.
As another optional implementation manner, before the master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, the method further includes:
Receiving a first configuration instruction to configure one of the backboard units as a main backboard unit, wherein at least two backboard units are slave backboard units;
receiving a second configuration instruction, and storing each slave backboard unit identifier into a traversal list of the master backboard unit;
The master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, including:
and traversing whether each slave backboard unit is in a data state to be transmitted according to the sequence of the traversing list.
As another optional implementation manner, before the receiving the second configuration instruction stores each slave backplane unit identifier in the traversal list of the master backplane unit, the method further includes:
receiving a third configuration instruction to set the priority of each slave backboard unit, and storing each slave backboard unit identifier with the priority higher than a preset threshold value into a priority traversal list of the master backboard unit;
The receiving a second configuration instruction stores each slave backplane unit identifier into a traversal list of the master backplane unit, including:
storing each slave backboard unit identifier with the priority lower than a preset threshold value into a traversal list of the master backboard unit;
The master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, including:
And traversing whether each slave backboard unit is in a data state to be transmitted according to the sequence of the priority traversing list and the sequence of the traversing list.
As another optional implementation manner, before the master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, the method further includes:
Receiving a fourth configuration instruction to configure the interrupt receiving information of each slave backboard unit;
The other slave backboard units receive the first message through the serial bus, and determine whether to receive the data sent by the slave backboard units in the data state to be sent according to the first message, including:
each slave backboard unit determines whether to receive the data sent by the slave backboard unit in the data state to be sent or not according to the receiving interruption information and the first message;
or each slave backboard unit receives the third message through the serial bus, and determines whether to receive the data sent by the master backboard unit according to the third message, including:
And each slave backboard unit determines whether to receive the data sent by the main backboard unit according to the receiving interrupt information and the third message.
As other optional embodiments, the master back plane unit and the slave back plane unit each include a transceiver and a controller, where the controller includes a codec, a communication module, an interrupt module, and a control module;
the primary backplane unit sending a first message onto a serial bus comprising:
the control module of the main backboard unit controls the first data stored in the communication module to be encoded and packaged through a coder and decoder so as to obtain a first message, and the first message is sent to the serial bus through the transceiver, wherein the first data comprises a secondary backboard unit identifier of a data state to be sent;
The sending, from the back board unit to the serial bus, the second message in the data state to be sent includes:
The control module of the slave backboard unit in a data state to be transmitted controls second data stored in the communication module to be encoded and packaged through the encoder and decoder so as to obtain a second message, and the second message is transmitted to the serial bus through the transceiver, wherein the second data comprises data to be transmitted;
the receiving the second message from the backplane unit in the receive data state includes:
The slave backplane unit in the receive data state receives a second message from the serial bus via the transceiver, decodes the second message into Feng Chengdi data via the codec, and stores the second data in the communication module for reading by the host computer.
As another optional implementation manner, the master back plane unit and the slave back plane unit each further include a backup controller with the same attribute as the controller, and the method further includes:
judging whether the serial backboard communication process is in error or not by comparing whether the output messages of the controller and the backup controller are the same or not;
if yes, determining whether to resend the data according to error interrupt information pre-stored in an interrupt module.
As another alternative embodiment, the codec uses a 4B5B codec.
In a second aspect, the present invention provides a serial backplane bus communication system comprising: a master back board unit and at least two slave back board units, wherein the master back board unit and the slave back board units are connected to a serial bus; the serial backplane bus communication system performs the serial bus communication method of any of the preceding claims.
As other optional embodiments, the master back plane unit and the slave back plane unit each include a transceiver and a controller, where the controller includes a codec, a communication module, a configuration module, an interrupt module, and a control module;
the transceiver is used for receiving the information sent by the coder or the serial bus;
The coder is used for coding and packaging the data stored by the communication module to obtain a message, or decoding and deblocking the message sent by the transceiver to obtain the data;
the communication module is used for storing data;
the configuration module is used for storing configuration information;
The interrupt module is used for storing receiving interrupt information or error interrupt information, the receiving interrupt information is used for judging whether messages are received from the backboard unit or not, and the error interrupt information is used for judging whether data are retransmitted or not when the serial bus communication process is in error.
The control module is used for controlling the transceiver, the codec, the communication module, the configuration module and the interrupt module to execute the serial bus communication method.
As another optional embodiment, the controller is an FPGA master controller.
As other optional embodiments, the communication module includes a transmit data queue and a receive data queue; the transmission data queue is used for storing data to be transmitted, and the receiving data queue is used for storing received data.
As another optional implementation manner, the sending data queue includes a sending data priority queue and a sending data standard queue, where the sending data priority queue has a higher priority than the sending data standard queue;
the receiving data queues comprise receiving data priority queues and receiving data standard queues, wherein the receiving data priority queues have higher priority than the receiving data standard queues.
As other optional embodiments, the configuration module includes a status register, a control register, a configuration register, and a discovery register;
The state register is used for storing state information of the master backboard unit or the slave backboard unit, and the state information comprises an idle state, a data sending state, a data receiving state, a judging state and an upper computer access state;
the control register is used for storing a working control mode;
The configuration register is used for storing master-slave configuration information, and the master-slave configuration information is used for indicating that the corresponding backboard unit is a master backboard unit or a slave backboard unit;
The discovery register is used for storing slave backboard unit identification responding to the first message;
the receiving data queue comprises a receiving header register and a receiving data register, wherein the receiving header register is used for storing a message header of received data, and the receiving data register is used for storing a message of the received data;
The transmission data queue comprises a transmission header register and a transmission data register, wherein the transmission header register is used for storing a message header of data to be transmitted, and the reception data register is used for storing a message of the data to be transmitted;
The interrupt module comprises a receiving interrupt register and an error interrupt register, wherein the interrupt register is used for storing receiving interrupt information, and the error interrupt register is used for storing error interrupt information.
As another optional implementation manner, the master back plane unit and the slave back plane unit each further comprise a backup controller with the same attribute as the controller.
According to the serial backboard bus communication method provided by the invention, whether each slave backboard unit is in a data state to be sent or not is sequentially traversed through the main backboard unit; if yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent; the other slave backboard units receive the first message through the serial bus, determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if so, the corresponding slave backboard units are in the data receiving state, and the other slave backboard units refer to slave backboard units except the slave backboard unit in the data state to be sent; the slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent; the slave backplane unit in a receive data state receives the second message. The first message is sent by the main backboard unit, the second message is sent by the secondary backboard unit, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
Drawings
FIG. 1 is a schematic diagram of a serial backplane bus communication system according to the present invention;
FIG. 2 is a schematic flow chart of a serial backplane bus communication method provided by the invention;
FIG. 3A is a diagram of a message initiator according to the present invention;
FIG. 3B is a diagram of a message terminator according to the present invention;
FIG. 3C is a schematic diagram illustrating a message transmission according to the present invention;
FIG. 4 is a flow chart of another serial backplane bus communication method provided by the invention;
FIG. 5 is a flow chart of another method for serial backplane bus communication according to the present invention;
FIG. 6 is a flow chart of another method for serial backplane bus communication according to the present invention;
FIG. 7 is a schematic structural diagram of a back board unit according to the present invention;
FIG. 8 is a schematic diagram illustrating a status information conversion process of a backplane unit according to the present disclosure;
FIG. 9 is a schematic diagram of information interaction between a master backplane unit and a slave backplane unit on which the present invention is based.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the technical solutions in the present invention will be clearly and completely described below with reference to the accompanying drawings in the present invention examples.
With the development of electronic communication technology, data exchange between devices, between control units or between boards in a chassis is more and more frequent, so that the requirements on access efficiency and reliability of data transmission of a backboard are also gradually higher and higher.
The conventional solutions mostly adopt ethernet communication or PCI bus communication, etc. to solve the communication problem between devices or boards. However, the ethernet is a point-to-point communication, and has various unstable factors such as network delay, network blocking, etc., which cannot well solve the real-time communication problem between multiple devices or multiple boards; the PCI is a parallel bus structure, the parallel bus has the defects of more hardware connection lines, poor anti-interference and the like, and the serial bus becomes an ideal choice of the back board bus due to the advantages of less back board connection lines, simple design, strong anti-interference capability and the like.
In the prior art, common serial backboard buses are a Rapid IO bus and a CAN bus. Although serial Rapid IO solves the problem of high-speed transmission of signals between devices or boards through a switching network, rapid IO is a point-to-point communication bus, data exchange among a plurality of boards is realized, each board must be connected with a switching chip in a point-to-point mode through a special Rapid IO switching chip, so that the application range of the Rapid IO is limited, the chip with the Rapid IO bus function is expensive, and the development cost of hardware is increased. The highest communication rate of the CAN bus is only 1Mbps, and a single frame message CAN only transmit 8 bytes of effective data at most, so that the transmission efficiency is low, and the CAN bus is not suitable for large-data-volume communication.
In order to solve the problem, the invention provides a serial backboard bus communication method and a serial backboard bus communication system, so as to improve the access rate and reliability between various boards or devices.
Fig. 1 is a schematic structural diagram of a serial backplane bus communication system according to the present invention, where, as shown in fig. 1, the serial backplane bus communication system according to the present invention includes a master backplane unit 11, a slave backplane unit 21, a slave backplane unit 22, and a slave backplane unit 23, and the master backplane unit 11, the slave backplane unit 21, the slave backplane unit 22, and the slave backplane unit 23 are all connected to a serial bus 24, where the master backplane unit 11 is connected to a master device a, the slave backplane unit 21 is connected to a slave device B, the slave backplane unit 22 is connected to a slave device C, and the slave backplane unit 23 is connected to a device D; alternatively, the master back plane unit 11 may be provided on device a, the slave back plane unit 21 may be provided on device B, the slave back plane unit 22 may be provided on device C, and the slave back plane unit 23 may be provided on device D.
The serial communication system may be used to perform the communication methods described in the embodiments below when information interaction between the master device and the slave device, or between the slave device and the slave device, is required.
In addition, it should be noted that the device may also be different boards in the chassis, for example, the master device is a CPU board, and the slave devices are sound cards, video cards, etc., so as to implement information interaction between the boards. The invention can also be applied to rail transit industries such as locomotives, high-speed rails, motor cars, subways and the like.
In a first aspect, an example of the present invention provides a serial backplane bus communication method, which is applicable to a serial backplane bus communication system, and can be shown with reference to fig. 1, where the serial backplane bus communication system includes a master backplane unit and at least two slave backplane units, where the master backplane unit and each slave backplane unit are connected to a serial bus; fig. 2 is a schematic flow chart of a serial backboard bus communication method provided by the invention.
Step 101, the master back board unit sequentially traverses whether each slave back board unit is in a state of data to be sent.
Specifically, the master back board unit sequentially traverses the status information of each slave back board unit, and when the current status information of a certain slave back board unit is the data to be sent, step 102 is executed, otherwise, whether the next slave back board unit is in the data to be sent is continuously determined.
Taking fig. 1 as an example, the master back plane unit 11 sequentially traverses whether the slave back plane unit 21, the slave back plane unit 22 and the slave back plane unit 23 are in a data state to be transmitted, and when traversing to the slave back plane unit 21, the slave back plane unit finds that the slave back plane unit is in the data state to be transmitted, steps 102-105 are executed, and the process ends. Then go through the slave back plane unit 22 again, if yes, go to step 102-105, if no, continue to judge whether the slave back plane unit 23 is in the state of data to be sent.
Step 102, the master back plane unit sends a first message to the serial bus, wherein the first message includes the slave back plane unit identifier in a data state to be sent.
Taking fig. 1 as an example, when the master back plane unit 11 knows that the slave back plane unit 21 needs to send data, the master back plane unit 21 sends a first message to the serial bus, where the first message includes an identifier of the slave back plane unit 21, preferably, the identifier of the slave back plane unit 21 may be an address of the slave back plane unit 21, to inform other slave back plane units 22, 23, and the slave back plane unit 21 that the data is to be sent.
Step 103, the other slave backboard units receive the first message through the serial bus, and determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if yes, the corresponding slave backboard unit is in the data receiving state.
The other slave back plane units refer to slave back plane units except the slave back plane unit in a state of data to be transmitted.
Specifically, except for the slave back panel units to send data, the other slave back panel units can receive the first message from the serial bus, determine which slave back panel unit is to send the data according to the slave back panel unit identification in the first message, further judge whether the slave back panel unit needs to receive the data, if yes, the corresponding slave back panel unit is in a data receiving state, and otherwise, the slave back panel unit is kept in an idle state.
Taking fig. 1 as an example, when the first message sent by the master backplane unit 11 includes the identifier of the slave backplane unit 21, the slave backplane unit 22 and the slave backplane unit 23 learn from the first message that the slave backplane unit 21 is about to send data, at this time, the slave backplane unit 21 and the slave backplane unit 23 can determine whether to receive the data according to their own related configuration information, and if the slave backplane unit 22 determines that the slave backplane unit 22 needs to receive, the slave backplane unit 22 is in a data receiving state, and if the slave backplane unit 23 does not need to receive, the slave backplane unit 23 remains in an idle state.
Step 104, the slave back board unit in the state of data to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent.
Step 105, the slave backplane unit in the receive data state receives the second message.
Taking fig. 1 as an example, the slave back unit 21 that is to send data sends a second message to the serial bus, where the second message includes the data to be sent, and the slave back unit 22 in the data receiving state receives the second message.
In addition, the working mode of the serial communication system may be set, for example, the second message mode is different, for example, when the master back board unit knows that a certain slave back board unit needs to send data, the master back board unit will send a first message, the first message includes the slave back board unit identifier of the slave back board unit needing to send data, each slave back board unit (including the slave back board unit needing to send data) receives the first message, each slave back board unit determines whether to request itself to send data or receive data according to the first message, if the slave back board unit needs to send data, the slave back board unit needing to send data sends the second message, if the slave back board unit needs to receive data, the slave back board unit waits to receive data. Or when the master back board unit traverses whether each slave back board unit needs to send data in sequence, if so, the corresponding slave back board unit directly sends the second message. For another example, the first message may be sent as a point-to-point message or as a broadcast message.
In addition, the first message is obviously a message sent by a master to a slave, so the first message can also be called a master message, the second message is a message that the slave back board unit responds to the master back board unit, and therefore the second message can also be called a slave message, namely the invention example is based on a double message mode, and the master message or the slave message is composed of a message header and data content of the message, wherein the message header comprises: message tags, slave backplane unit identifications, and message lengths; the message tag defines the type of message and the slave backplane unit identifies the address of the slave backplane unit from which the data is to be sent; the message length defines the data length of the message, which is at most 32 words, at least 0, and the data content of the message, including the specific content of the data to be transmitted. In addition, the master message contains a user-defined ID (Identification number), and the slave message will put the ID into the data entity, so that the master back plane unit will determine which slave back plane unit responded in turn.
FIG. 3A is a schematic diagram of a message initiator according to the present invention, as shown in FIG. 3A, the message starts to be synchronized with 4 consecutive '1's, followed by a fixed format initiator (11110) and then followed by a link control message (i.e., the header of the message) and data; FIG. 3B is a schematic diagram of a message terminator according to the present invention, as shown in FIG. 3B, after a link control message (i.e. header of message) and data, is a fixed format message terminator (H0000); wherein, when the level is changed, the level is represented by 1, and when the level is not changed, the level is represented by 0; fig. 3C is a schematic diagram of message transmission according to the present invention, as shown in fig. 3C, after the transmission of the previous frame data, that is, after the message terminator of the previous frame, the present frame data is transmitted, and after the transmission of the present frame data is completed, the next frame data is continuously transmitted.
According to the serial backboard bus communication method provided by the invention, whether each slave backboard unit is in a data state to be sent or not is sequentially traversed through the main backboard unit; if yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent; the other slave backboard units receive the first message through the serial bus, determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if so, the corresponding slave backboard units are in the data receiving state, and the other slave backboard units refer to slave backboard units except the slave backboard unit in the data state to be sent; the slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent; the slave backplane unit in a receive data state receives the second message. The first message is sent through the main backboard unit, the secondary backboard unit which needs to send data sends the second message, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
With reference to the foregoing implementations, fig. 4 is a schematic flow chart of another serial backplane bus communication method provided by the present invention, as shown in fig. 4, where the serial backplane bus communication method includes:
step 201, determining whether the main backboard unit is in a data state to be transmitted.
If yes, go to step 202-step 205; if not, go to step 206.
Step 202, the main back board unit sends a third message to the serial bus, where the third message includes the main back board unit identifier.
Step 203, each slave backboard unit receives the third message through the serial bus, and determines whether to receive the data sent by the main backboard unit according to the third message, if yes, the corresponding slave backboard unit is in a data receiving state.
Step 204, the main backplane unit sends a fourth message to the serial bus, where the fourth message includes data to be sent.
Step 205, the slave backplane unit in the receive data state receives the fourth message.
Step 206, the master back board unit sequentially traverses whether each slave back board unit is in a state of data to be transmitted.
When the current status information of a certain slave back-plane unit is the data to be sent, step 102 is executed, otherwise, whether the next slave back-plane unit is in the data to be sent is continuously judged.
Step 207, the master backplane unit sends a first message to the serial bus, the first message including the slave backplane unit identification in the data to be sent state.
Step 208, the other slave back board units receive the first message through the serial bus, and determine whether to receive the data sent by the slave back board units in the data state to be sent according to the first message, if yes, the corresponding slave back board units are in the data receiving state.
Step 209, the slave back plane unit in the data to be sent sends a second message to the serial bus, where the second message includes the data to be sent.
Step 210, the slave backplane unit in the receive data state receives the second message.
It should be noted that, after step 205 is performed, step 206 may be performed continuously. In addition, step 201 and step 206 have no sequence, or step 206 may be executed first, if step 206 is no, steps 201 to 205 may be executed, and if step 206 is yes, steps 201 to 205 may be executed after steps 207 to 210 are executed.
Steps 206 to 210 in this embodiment are similar to the implementation manners of steps 101 to 105 in the foregoing embodiment, respectively, and are not described here in detail.
Unlike the foregoing embodiment, in this embodiment, considering the information interaction scenario between the master device and the slave device, when the master backplane unit is in the data state to be sent, the master backplane unit sends a third message to the serial bus, where the third message includes the master backplane unit identifier; each slave backboard unit receives a third message through the serial bus, determines whether to receive data sent by the main backboard unit according to the third message, and if yes, the corresponding slave backboard unit is in a data receiving state; the main back board unit sends a fourth message to the serial bus, wherein the fourth message comprises data to be sent; the slave backplane unit in the receive data state receives the fourth message.
Specifically, the information interaction process between the master device and the slave device is similar to the inventive concept between the slave device and the slave device in the foregoing embodiment, that is, the master backplane unit first sends a third message to the serial bus to inform each slave backplane unit that the master backplane unit needs to send data, then each slave backplane unit determines whether to receive the data sent by the master backplane unit according to the configuration information related to itself, if so, the slave backplane unit is in a data receiving state, and waits for the master backplane unit to send a fourth message.
In addition, before step 201 or before performing step 206, it may further include: and receiving a fourth configuration instruction to configure the interrupt receiving information of each slave backboard unit.
One implementation of step 203 is as follows: and each slave backboard unit determines whether to receive the data sent by the main backboard unit according to the receiving interrupt information and the third message.
One implementation of step 207 is as follows: and the other slave backboard units determine whether to receive the data sent by the slave backboard units in the state of data to be sent according to the receiving interrupt information and the first message.
Specifically, before judging whether the master back board unit or each slave back board unit is in a data state to be sent, a user can write in receiving interrupt information corresponding to each slave back board unit through an application interface function, each slave back board unit can determine whether to receive data sent by the master back board unit or other slave back board units according to the receiving interrupt information, that is, whether each slave device receives the data can be configured by itself according to application requirements, and the data can be completed through software, hardware is not required to be changed, flexibility is high, and integration is convenient.
According to the serial backboard bus communication method provided by the invention, when the main backboard unit is in a data state to be transmitted, the main backboard unit transmits a third message to the serial bus, wherein the third message comprises a main backboard unit identifier; each slave backboard unit receives a third message through the serial bus, determines whether to receive data sent by the main backboard unit according to the third message, and if yes, the corresponding slave backboard unit is in a data receiving state; the main back board unit sends a fourth message to the serial bus, wherein the fourth message comprises data to be sent; the slave backplane unit in the receive data state receives the fourth message. The method and the device realize information interaction between the master device and the slave device through the first message sent by the master back board unit and the second message sent by the second back board unit, and are good in instantaneity, strong in processing performance, simple in hardware structure and easy to realize.
With reference to the foregoing implementations, fig. 5 is a schematic flow chart of another serial backplane bus communication method provided by the present invention, as shown in fig. 5, where the serial backplane bus communication method includes:
Step 301, receiving a first configuration instruction to configure one of the back board units as a master back board unit, wherein at least two back board units are slave back board units.
Step 302, receiving a second configuration instruction, and storing each slave backboard unit identifier into a traversal list of the master backboard unit.
Step 303, traversing whether each slave backboard unit is in a state of data to be sent according to the sequence of the traversing list.
Step 304, the master back plane unit sends a first message to the serial bus, where the first message includes the slave back plane unit identifier in a data state to be sent.
Step 305, the other slave back plane units receive the first message through the serial bus, and determine whether to receive the data sent by the slave back plane units in the data state to be sent according to the first message, if yes, the corresponding slave back plane units are in the data receiving state.
Step 306, the slave back plane unit in the state of data to be sent sends a second message to the serial bus, where the second message includes the data to be sent.
Step 307, the slave backplane unit in the receive data state receives the second message.
Steps 304 to 307 in this embodiment are similar to the implementation manners of steps 102 to 105 in the foregoing embodiment, respectively, and are not described here in detail.
Unlike the foregoing embodiment, the present embodiment further defines the arrangement of the master backplane unit and the slave backplane units, in this embodiment, one of the backplane units is configured to be the master backplane unit by receiving the first configuration instruction, where at least two of the backplane units are the slave backplane units; receiving a second configuration instruction, and storing each slave backboard unit identifier into a traversal list of the master backboard unit; and traversing whether each slave backboard unit is in a data state to be transmitted according to the sequence of the traversing list.
Specifically, after the initial back plane unit has no master back plane unit and no slave unit, and is connected to the master device and the slave device, respectively, the user may configure each back plane unit by applying an interface function, for example, the back plane unit connected to the master device may be set as the master back plane unit, the back plane unit connected to the slave device may be set as the slave back plane unit, when the configuration is completed, the back plane unit connected to the master device a may be set as the master back plane unit 11, the back plane unit connected to the slave device B may be set as the slave back plane unit 21, the back plane unit connected to the slave device C may be set as the slave back plane unit 22, and the back plane unit connected to the slave device D may be set as the slave back plane unit 23, as shown in fig. 1. Further, the user may also write the identifier of each slave backplane unit into the traversal list in the master backplane unit by applying the interface function, so that the master backplane unit performs the subsequent steps according to the sequence of the traversal list, and as illustrated in fig. 1, the user may store the addresses of the slave backplane units 21, 22 and 23 into the traversal list of the master backplane unit 11.
In addition, in consideration of the fact that the user may desire to have a sequential execution order for different devices, that is, different priorities, before step 302, a third configuration instruction may also be received to set the priorities of the slave back plane units, and each slave back plane unit identifier with a priority higher than the preset threshold may be stored in the priority traversal list of the master back plane unit. That is, the invention has the function of automatic configuration, can be automatically configured according to the application requirement of a user, can be completed only by applying configuration changing software, does not need to change hardware, and has strong flexibility and convenient integration.
One implementation of step 302 is as follows: storing each slave backboard unit identifier with the priority lower than a preset threshold value into a traversal list of the master backboard unit.
Accordingly, one implementation of step 303 is as follows: and traversing whether each slave backboard unit is in a data state to be transmitted according to the sequence of the priority traversing list and the sequence of the traversing list.
Specifically, when the master backplane unit traverses whether each slave backplane unit is in a state of data to be transmitted, each slave backplane unit stored in the priority traversal list may be traversed preferentially, and then each backplane unit stored in the traversal list is traversed again.
According to the serial backboard bus communication method provided by the invention, one backboard unit is configured to be a main backboard unit by receiving a first configuration instruction, wherein at least two backboard units are slave backboard units; receiving a second configuration instruction, and storing each slave backboard unit identifier into a traversal list of the master backboard unit; sequentially traversing whether each slave backboard unit is in a state of data to be transmitted according to the sequence of the traversing list; if yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent; the other slave backboard units receive the first message through the serial bus, determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if so, the corresponding slave backboard units are in the data receiving state, and the other slave backboard units refer to slave backboard units except the slave backboard unit in the data state to be sent; the slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent; the slave backplane unit in a receive data state receives the second message. The first message is sent through the main backboard unit, the secondary backboard unit which needs to send data sends the second message, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
With reference to the foregoing implementations, fig. 6 is a schematic flow chart of another serial backplane bus communication method provided by the present invention, where each of the master backplane unit and the slave backplane unit includes a transceiver and a controller, and the controller includes a codec, a communication module, a configuration module, an interrupt module, and a control module;
as shown in fig. 6, the serial backplane bus communication method includes:
step 401, the master back board unit sequentially traverses whether each slave back board unit is in a state of data to be sent.
Specifically, the master back plane unit or each slave back plane unit stores current state information in the configuration module thereof, in this step, the master back plane unit sequentially traverses the current state information stored in the configuration module of each slave back plane unit under the control of the control module, and when the state information is a data state to be transmitted, step 402 is executed.
Step 402, the control module of the master back plane unit controls the first data stored in the communication module to be encoded and packaged through the encoder and decoder so as to obtain a first message, and sends the first message to the serial bus through the transceiver, wherein the first data comprises the identification of the slave back plane unit of the data state to be sent.
Step 403, the other slave back plane units receive the first message through the serial bus, and determine whether to receive the data sent by the slave back plane units in the data state to be sent according to the first message, if yes, the corresponding slave back plane units are in the data receiving state.
Specifically, the other slave back-plane units receive the first message from the serial bus through the transceiver, then determine whether to receive the data sent from the back-plane units in the data state to be sent according to the first message and the receiving interrupt information configured in the interrupt module, and if yes, change the state information stored in the configuration module of the corresponding slave back-plane units into the receiving data state information.
Step 404, the control module of the slave back plane unit in the state of data to be transmitted controls the second data stored in the communication module to be encapsulated by the codec code to obtain a second message, and sends the second message to the serial bus through the transceiver, wherein the second data includes the data to be transmitted.
Step 405, the slave backplane unit in the data receiving state receives the second message from the serial bus through the transceiver, decodes Feng Chengdi the second message through the codec, and stores the second data in the communication module for reading by the host computer.
Unlike the foregoing embodiments, the present embodiment further defines a specific procedure of serial bus communication. In addition, the state information of the master back plate unit and the slave back plate unit includes a judging state, an idle state and an access state of the upper computer besides the data state to be transmitted and the data state to be received, for example, when the other slave back plate units receive the first message through the serial bus and determine whether to receive the data transmitted by the slave back plate unit in the data state to be transmitted according to the first message, the other slave back plate units are in the judging state; after the master and slave back plate units are configured, the master and slave back plate units may be in an idle state, and when the master and slave back plate units are in the idle state, the upper computer may access each device, and then enter an upper computer access state.
As an optional example, the back plane unit and the slave back plane unit each further include a backup controller having the same attribute as the controller, and the method further includes: judging whether the serial backboard communication process is in error or not by comparing whether the output messages of the controller and the backup controller are the same or not; if yes, determining whether to resend the data according to error interrupt information pre-stored in an interrupt module.
Specifically, the user can write error interrupt information by applying an interface function, so as to set which errors need to be retransmitted or discarded; when the output results of the backup controller and the controller are consistent, no error exists in the data interaction process, and when the output results of the backup controller and the overall controller are inconsistent, an error may exist in the output results of the controller, and at the moment, data retransmission or discarding can be required. In other words, the present invention messaging has two link channels: a process data channel and a diagnostic channel; the properties of the two channels are the same; the process data channel is a channel for real-time data transmission among various devices; the diagnosis channel is a channel for monitoring and fault judgment between devices, and improves the reliability of communication.
As an optional example, the codec adopts a 4B5B codec mode, that is, a 4bit binary number is represented by adopting a 5bit binary number, so that enough code stream hopping is realized, the coding efficiency is improved, and the data transmission efficiency is further improved.
In addition, when information is exchanged between the master device and the slave device, the process is similar to the process of exchanging information between the slave device, and will not be described herein.
According to the serial backboard bus communication method provided by the invention, whether each slave backboard unit is in a data state to be sent or not is sequentially traversed through the main backboard unit; the control module of the main backboard unit controls the first data stored in the communication module to be encoded and packaged through a coder and decoder so as to obtain a first message, and the first message is sent to the serial bus through the transceiver, wherein the first data comprises a secondary backboard unit identifier of a data state to be sent; the slave backboard unit receives the first message through the serial bus, determines whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, and if yes, the corresponding slave backboard unit is in the data receiving state; the control module of the slave backboard unit in a data state to be transmitted controls second data stored in the communication module to be encoded and packaged through the encoder and decoder so as to obtain a second message, and the second message is transmitted to the serial bus through the transceiver, wherein the second data comprises data to be transmitted; the slave backboard unit in a data receiving state receives a second message from the serial bus through the transceiver, decodes Feng Chengdi the second message through the codec, and stores the second data into the communication module for reading by the upper computer; the first message is sent through the main backboard unit, the secondary backboard unit which needs to send data sends the second message, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
In a second aspect, an example of the present invention provides a serial backplane bus communication system, as shown with reference to fig. 1, comprising: a master back board unit and at least two slave back board units, wherein the master back board unit and the slave back board units are connected to a serial bus; the serial backplane bus communication system performs any of the serial bus communication methods described in the preceding.
It will be clear to those skilled in the art that, for convenience and brevity of description, the specific working process and corresponding beneficial effects of the control device described above may refer to the corresponding process in the foregoing method example, which is not described herein again.
The serial backboard bus communication system provided by the invention comprises a main backboard unit and at least two auxiliary backboard units, wherein the main backboard unit and the auxiliary backboard units are connected to a serial bus; traversing whether each slave backboard unit is in a state of data to be sent or not through the master backboard unit in sequence; if yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent; each slave backboard unit determines whether to receive the data sent by the slave backboard unit in the data state to be sent according to the received first message, if so, the corresponding slave backboard unit is in the data receiving state; the slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent; the slave backplane unit in a receive data state receives the second message. The first message is sent through the main backboard unit, the secondary backboard unit which needs to send data sends the second message, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
In other alternative embodiments, fig. 7 is a schematic structural diagram of a back board unit provided in the present invention, as shown in fig. 7, where each of the master back board unit and the slave back board unit includes a transceiver 31 and a controller 32, and the controller 32 includes a codec 321, a communication module 322, a configuration module 323, an interrupt module 324, and a control module 325;
wherein, the transceiver 31 is configured to receive a message sent by the codec 321 or the serial bus 326;
The codec 321 is configured to encode and encapsulate the data stored in the communication module 322 to obtain a message, or decode and decapsulate the message sent by the transceiver 31 to obtain data;
the communication module 322 is configured to store data;
the configuration module 323 is configured to store configuration information;
The interrupt module 324 is configured to store receive interrupt information or error interrupt information, where the receive interrupt information is used to determine whether to receive a message from a back plane unit, and the error interrupt information is used to determine whether to retransmit data when the serial bus communication process is in error.
The control module 325 is configured to control the transceiver 31, the codec 321, the communication module 322, the configuration module 323, and the interrupt module 324 to execute the serial bus communication method according to any one of the preceding claims.
Specifically, the transceiver 31 is connected to the serial bus 33, and performs level conversion of data on the serial bus 33; the codec 321 encodes the data to be transmitted in the communication module 322, encapsulates the data into a specific message format, and transmits the specific message format, and can also parse the received message, decode the data and transmit the data to the communication module 322; the communication module 322 is a storage unit for communication data, and all data to be transmitted or received are placed in the communication module 322; the configuration module 323 is a channel accessed by the upper computer interface software, and can access state information, configuration information, control information, identification information and the like; the interrupt module 324 is programmable and mainly includes a receiving interrupt and an error interrupt, wherein the receiving interrupt can filter some useful data according to application needs and judge which needs to be received and which does not need to be received; the error interrupt may set which errors need to be retransmitted or discarded; the control module 325 can realize control of protocol states, is a core control module of the whole control protocol, mainly completes state conversion of each control mechanism, coordinates work among each module, and comprises an idle state, a sending state, a receiving state, a judging state and an upper computer access state.
In other optional embodiments, the controller is an FPGA master controller, which is used for implementing high-speed serial bus protocol control, and the protocol control function is implemented by an FPGA, and compared with a conventional backplane bus, the present example CAN be implemented by only a common FPGA, and no dedicated bus chip or bus protocol is required, so that the cost is low, the design is simple and flexible, and in addition, the minimum communication rate is 20Mbps, and the highest communication rate CAN be 100Mbps, compared with a CAN bus, the communication rate is greatly improved.
In other alternative embodiments, the communication module 322 includes a transmit data queue and a receive data queue; the transmission data queue is used for storing data to be transmitted, and the receiving data queue is used for storing received data.
In other optional embodiments, the transmit data queue includes a transmit data priority queue and a transmit data standard queue, where the transmit data priority queue has a higher priority than the transmit data standard queue;
the receiving data queues comprise receiving data priority queues and receiving data standard queues, wherein the receiving data priority queues have higher priority than the receiving data standard queues.
Specifically, when implemented in the FPGA, two first-in-first-out queues (FIFO queues for short) will be set, one is a standard sequential queue, and one is a priority queue, and messages in the priority queue will be sent and received before messages in the standard queue, where the priority is set by the application.
In other alternative embodiments, the configuration module may include a status register (qBusStat), a control register (qBusControl), a configuration register ((qBusConfig), discovery register ((qBusAck)), as described with continued reference to fig. 7.
The state register is used for storing state information of the master backboard unit or the slave backboard unit, and the state information comprises an idle state, a data sending state, a data receiving state, a judging state and an upper computer access state.
The control register is used for storing the working control mode. Such as controlling the main backplane unit to perform single point communication or broadcast communication, etc.
The configuration register is used for storing master-slave configuration information and a traversal list, and the master-slave configuration information is used for indicating that the corresponding backboard unit is a master backboard unit or a slave backboard unit.
The discovery register is for storing slave backplane unit identifications in response to a first message. Specifically, after the master back board unit sends the first message, each slave back board unit determines whether to respond to the first message according to the first message, if so, the information such as the identification of the responding slave back board unit is stored in the discovery register, and whether to initialize each slave back board unit stored in the discovery register, namely, reset operation, is written by a user through an application interface, so that the subsequent normal data transmission is facilitated, and the handshake function is realized.
The receive data queue includes a receive header register (RxHeader) for storing a message header of received data and a receive data register (RxData) for storing a message of received data.
The transmit data queue comprises a transmit header register (TxHeader) for storing a message header of data to be transmitted and a transmit data register (TxData) for storing a message of data to be transmitted.
The interrupt module includes a receive interrupt register (qBusRxIRQ) for storing receive interrupt information and an error interrupt register (qBusRrrorIRQ) for storing error interrupt information.
Wherein table 1 defines and details a portion of the registers.
Table 1 definition and description of part of the registers
In other optional embodiments, the master back board unit and the slave back board unit each further include a backup controller with the same attribute as the controller, in other words, the message communication has two link channels, a process data channel and a diagnostic channel, and the two channels have the same attribute, and whether the output results are the same or not is judged by the two channels, so that whether the data interaction process is in error or not is judged. When equipment on the bus fails, the main equipment obtains corresponding failure information by inquiring and stores the failure information into the communication module, and the upper computer can tell the application which equipment fails when accessing.
In other optional embodiments, the two ends of the serial bus are provided with terminal matching resistors, and the serial bus can be a differential transmission line, and the two ends of the differential transmission line are provided with terminal matching resistors, so as to prevent the emission of physical waveforms of the bus, and cause waveform superposition and distortion.
For example, the process of executing the serial backplane bus communication method in this example is as follows:
Fig. 8 is a schematic diagram of a status information conversion process of a back board unit according to the present invention, where status information of the back board unit includes an idle status, a sending status, a receiving status, a judging status, and an access status of a host computer, and if the status information is a host device, the sending status is further divided into two statuses, namely, sending a host message and sending a slave message. FIG. 9 is a schematic diagram of information interaction between a master backplane unit and a slave backplane unit according to the present invention, as shown in FIG. 9, when an upper computer performs initial configuration on an FPGA master controller, configuration data will be stored in a configuration register, and the content of the configuration information will determine whether an FPGA protocol controller is a master backplane unit (corresponding to a master device) or a slave backplane unit (corresponding to a slave device), if the FPGA protocol controller is a master backplane unit, a corresponding traversal list will be also provided in the corresponding configuration register for sequential traversal of the master backplane unit; after the initialization configuration is finished, the FPGA protocol controller starts to work, firstly enters a main message sending state, reads data from a data sending queue, encodes and packages the data through an encoder, and then converts the data into a differential signal through a transceiver to be transmitted to a serial bus; other slave devices on the serial bus receive the master message through the decoder and enter a judging master message state, if the slave message is to be sent by the slave back plate unit, the slave message state is entered, the sending queue data in the communication module of the slave back plate unit is ready, and the data are coded and packaged through the coder and sent out; if the slave back board unit determines that the slave message is to be received after judging the master message, the slave back board unit enters a receiving state and waits for receiving slave messages which are ready to be sent by other slave devices. When other slave devices send out slave messages, the slave messages are parsed and decoded by the codec, and the data are stored in a receiving queue in the communication module for reading by a host computer.
The invention provides a serial backboard bus communication system, wherein a main backboard unit and a secondary backboard unit respectively comprise a transceiver and a controller, and the controller comprises a coder-decoder, a communication module, a configuration module, an interrupt module and a control module; the transceiver is used for receiving the information sent by the coder or the serial bus; the coder is used for coding and packaging the data stored by the communication module to obtain a message, or decoding and deblocking the message sent by the transceiver to obtain the data; the communication module is used for storing data; the configuration module is used for storing configuration information; the interrupt module is used for storing received interrupt information or error interrupt information, the received interrupt information is used for judging whether messages are received or not by each slave backboard unit, and the error interrupt information is used for judging whether data are resent or not when the serial bus communication process is in error; the control module is used for controlling the transceiver, the codec, the communication module, the configuration module and the interrupt module to execute the serial bus communication method. The first message is sent through the main backboard unit, the secondary backboard unit which needs to send data sends the second message, namely, the communication among the secondary devices is completed through the dispatching of the main backboard unit by the double message mode, and the method has the advantages of good real-time performance, strong processing performance, simple hardware structure and easiness in implementation.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and not for limiting the same; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some or all of the technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the invention.

Claims (12)

1. The serial backboard bus communication method is characterized by being suitable for a serial backboard bus communication system, wherein the serial backboard bus communication system comprises a main backboard unit and at least two slave backboard units, and the main backboard unit and each slave backboard unit are connected to a serial bus; the method comprises the following steps:
The master backboard unit sequentially traverses whether each slave backboard unit is in a state of data to be sent;
If yes, the main backboard unit sends a first message to the serial bus, wherein the first message comprises a backboard unit identification in a data state to be sent;
The other slave backboard units receive the first message through the serial bus, determine whether to receive the data sent by the slave backboard unit in the data state to be sent according to the first message, if so, the corresponding slave backboard units are in the data receiving state, and the other slave backboard units refer to slave backboard units except the slave backboard unit in the data state to be sent;
The slave back board unit in the data state to be sent sends a second message to the serial bus, wherein the second message comprises the data to be sent;
the slave backplane unit in a data receiving state receives the second message;
Before the master back board unit traverses whether each slave back board unit is in a state of data to be sent in sequence, the method further comprises:
Receiving a first configuration instruction to configure one of the backboard units as a main backboard unit, wherein at least two backboard units are slave backboard units;
receiving a second configuration instruction, and storing each slave backboard unit identifier into a traversal list of the master backboard unit;
The master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, including:
sequentially traversing whether each slave backboard unit is in a state of data to be transmitted according to the sequence of the traversing list;
Before the receiving the second configuration instruction stores each slave backplane unit identifier into the traversal list of the master backplane unit, the method further comprises:
receiving a third configuration instruction to set the priority of each slave backboard unit, and storing each slave backboard unit identifier with the priority higher than a preset threshold value into a priority traversal list of the master backboard unit;
The receiving a second configuration instruction stores each slave backplane unit identifier into a traversal list of the master backplane unit, including:
storing each slave backboard unit identifier with the priority lower than a preset threshold value into a traversal list of the master backboard unit;
The master back plane unit sequentially traverses whether each slave back plane unit is in a state of data to be sent, including:
Sequentially traversing whether each slave backboard unit is in a data state to be transmitted according to the sequence of the priority traversing list and the sequence of the traversing list;
Before the master back board unit traverses whether each slave back board unit is in a state of data to be sent in sequence, the method further comprises:
Receiving a fourth configuration instruction to configure the interrupt receiving information of each slave backboard unit;
The other slave backboard units receive the first message through the serial bus, and determine whether to receive the data sent by the slave backboard units in the data state to be sent according to the first message, including:
the other slave backboard units determine whether to receive the data sent by the slave backboard units in the data state to be sent according to the receiving interrupt information and the first message;
or each slave backboard unit receives the third message through the serial bus, and determines whether to receive the data sent by the master backboard unit according to the third message, including:
And each slave backboard unit determines whether to receive the data sent by the main backboard unit according to the receiving interrupt information and the third message.
2. The serial backplane bus communication method of claim 1, further comprising:
When the main backboard unit is in a data state to be transmitted, the main backboard unit transmits a third message to the serial bus, wherein the third message comprises a main backboard unit identifier;
each slave backboard unit receives a third message through the serial bus, determines whether to receive data sent by the main backboard unit according to the third message, and if yes, the corresponding slave backboard unit is in a data receiving state;
The main back board unit sends a fourth message to the serial bus, wherein the fourth message comprises data to be sent;
the slave backplane unit in the receive data state receives the fourth message.
3. The serial backplane bus communication method of claim 1, wherein the master and slave backplane units each comprise a transceiver and a controller, the controller comprising a codec, a communication module, a configuration module, an interrupt module, and a control module;
the primary backplane unit sending a first message onto a serial bus comprising:
the control module of the main backboard unit controls the first data stored in the communication module to be encoded and packaged through a coder and decoder so as to obtain a first message, and the first message is sent to the serial bus through the transceiver, wherein the first data comprises a secondary backboard unit identifier of a data state to be sent;
The sending, from the back board unit to the serial bus, the second message in the data state to be sent includes:
The control module of the slave backboard unit in a data state to be transmitted controls second data stored in the communication module to be encoded and packaged through the encoder and decoder so as to obtain a second message, and the second message is transmitted to the serial bus through the transceiver, wherein the second data comprises data to be transmitted;
the receiving the second message from the backplane unit in the receive data state includes:
The slave backplane unit in the receive data state receives a second message from the serial bus via the transceiver, decodes the second message into Feng Chengdi data via the codec, and stores the second data in the communication module for reading by the host computer.
4. The serial backplane bus communication method of claim 3, wherein the master and slave backplane units each further comprise a backup controller having the same attribute as the controller, the method further comprising:
judging whether the serial backboard communication process is in error or not by comparing whether the output messages of the controller and the backup controller are the same or not;
if yes, determining whether to resend the data according to error interrupt information pre-stored in an interrupt module.
5. The serial backplane bus communication method according to claim 3 or 4, wherein the codec uses a 4B5B codec scheme.
6. A serial backplane bus communication system, comprising: a master back board unit and at least two slave back board units, wherein the master back board unit and the slave back board units are connected to a serial bus; the serial backplane bus communication system performs the serial bus communication method of any of claims 1-5.
7. The serial backplane bus communication system of claim 6, wherein the master and slave backplane units each comprise a transceiver and a controller, the controller comprising a codec, a communication module, a configuration module, an interrupt module, and a control module;
the transceiver is used for receiving the information sent by the coder or the serial bus;
The coder is used for coding and packaging the data stored by the communication module to obtain a message, or decoding and deblocking the message sent by the transceiver to obtain the data;
the communication module is used for storing data;
the configuration module is used for storing configuration information;
The interrupt module is used for storing received interrupt information or error interrupt information, the received interrupt information is used for judging whether messages are received or not by each slave backboard unit, and the error interrupt information is used for judging whether data are resent or not when the serial bus communication process is in error;
The control module is configured to control the transceiver, the codec, the communication module, the configuration module, and the interrupt module to perform the serial bus communication method according to any one of claims 1 to 5.
8. The serial backplane bus communication system of claim 7, wherein the controller is an FPGA master controller.
9. The serial backplane bus communication system of claim 7 or 8, wherein the communication module comprises a transmit data queue and a receive data queue; the transmission data queue is used for storing data to be transmitted, and the receiving data queue is used for storing received data.
10. The serial backplane bus communication system of claim 9, wherein the transmit data queues include a transmit data priority queue and a transmit data standard queue, wherein the transmit data priority queue has a higher priority than the transmit data standard queue;
the receiving data queues comprise receiving data priority queues and receiving data standard queues, wherein the receiving data priority queues have higher priority than the receiving data standard queues.
11. The serial backplane bus communication system of claim 9, wherein the configuration module comprises a status register, a control register, a configuration register, and a discovery register;
The state register is used for storing state information of the master backboard unit or the slave backboard unit, and the state information comprises an idle state, a data sending state, a data receiving state, a judging state and an upper computer access state;
the control register is used for storing a working control mode;
the configuration register is used for storing master-slave configuration information and a traversal list, and the master-slave configuration information is used for indicating that the corresponding backboard unit is a master backboard unit or a slave backboard unit;
The discovery register is used for storing slave backboard unit identification responding to the first message;
the receiving data queue comprises a receiving header register and a receiving data register, wherein the receiving header register is used for storing a message header of received data, and the receiving data register is used for storing a message of the received data;
The transmission data queue comprises a transmission header register and a transmission data register, wherein the transmission header register is used for storing a message header of data to be transmitted, and the reception data register is used for storing a message of the data to be transmitted;
The interrupt module comprises a receiving interrupt register and an error interrupt register, wherein the interrupt register is used for storing receiving interrupt information, and the error interrupt register is used for storing error interrupt information.
12. The serial backplane bus communication system of claim 7, wherein the master and slave backplane units each further comprise a backup controller having the same attributes as the controller.
CN201911379710.9A 2019-12-27 2019-12-27 Serial backboard bus communication method and system Active CN113051204B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911379710.9A CN113051204B (en) 2019-12-27 2019-12-27 Serial backboard bus communication method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911379710.9A CN113051204B (en) 2019-12-27 2019-12-27 Serial backboard bus communication method and system

Publications (2)

Publication Number Publication Date
CN113051204A CN113051204A (en) 2021-06-29
CN113051204B true CN113051204B (en) 2024-06-21

Family

ID=76506690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911379710.9A Active CN113051204B (en) 2019-12-27 2019-12-27 Serial backboard bus communication method and system

Country Status (1)

Country Link
CN (1) CN113051204B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114896187A (en) * 2021-12-24 2022-08-12 上海御渡半导体科技有限公司 ATE tester frame type equipment and method for uniformly collecting serial ports thereof
CN114356517B (en) * 2021-12-24 2023-08-04 苏州浪潮智能科技有限公司 Method, system, electronic equipment and storage medium for managing serial bus resources
CN114978798B (en) * 2022-05-23 2024-02-27 重庆奥普泰通信技术有限公司 Serial communication method, device and board card

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671141A (en) * 2005-02-28 2005-09-21 邹润民 Multi-host communication system
CN108920394A (en) * 2018-05-28 2018-11-30 许继集团有限公司 A kind of backboard serial bus communication method and system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674751B1 (en) * 1999-06-03 2004-01-06 Fujitsu Network Communications, Inc. Serialized bus communication and control architecture
KR20030094750A (en) * 2002-06-07 2003-12-18 엘지전자 주식회사 Apparatus for board test of master and slave in communication system
JP2004242031A (en) * 2003-02-05 2004-08-26 Fuji Electric Fa Components & Systems Co Ltd Communication system
KR100461596B1 (en) * 2003-02-24 2004-12-18 삼성전자주식회사 Image forming device using I2C bus and control method thereof
US7676621B2 (en) * 2003-09-12 2010-03-09 Hewlett-Packard Development Company, L.P. Communications bus transceiver
CN100414465C (en) * 2005-06-29 2008-08-27 沈阳中科博微自动化技术有限公司 Multi-serial bus passive backplane
CN104618208A (en) * 2015-01-26 2015-05-13 国电南瑞科技股份有限公司 Elastic data interaction comprehensive bus system
CN104731007A (en) * 2015-03-13 2015-06-24 沈阳中科博微自动化技术有限公司 Backboard communication assembly and communication method for function security PLC
CN106250340A (en) * 2016-07-27 2016-12-21 杭州宏杉科技有限公司 A kind of hardware control circuit and control method thereof
CN208432681U (en) * 2018-08-03 2019-01-25 中车大连电力牵引研发中心有限公司 Cable detection system
CN109753122B (en) * 2018-11-27 2022-06-14 湖南铁路科技职业技术学院 Integrated train control back plate
CN110213143B (en) * 2019-05-21 2021-04-09 中国科学院国家空间科学中心 1553B bus IP core and monitoring system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671141A (en) * 2005-02-28 2005-09-21 邹润民 Multi-host communication system
CN108920394A (en) * 2018-05-28 2018-11-30 许继集团有限公司 A kind of backboard serial bus communication method and system

Also Published As

Publication number Publication date
CN113051204A (en) 2021-06-29

Similar Documents

Publication Publication Date Title
CN113051204B (en) Serial backboard bus communication method and system
CN100366029C (en) Communication controller, host-side controller, communication equipment, communication system and method
US10452504B2 (en) Controller area network (CAN) device and method for emulating classic CAN error management
CN103218331B (en) Synchronous mode is adopted to switch and the self-adjusting bus unit of frame priority and method
US6651107B1 (en) Reduced hardware network adapter and communication
CN108199941B (en) CAN bus communication method based on CAN2.0B
CN201717878U (en) Vehicle communication network data conversion gateway
JPH0795767B2 (en) Optimized method of data communication and system using the method
RU2678715C2 (en) Data transmission protocol with protocol exception state
US6741566B1 (en) Remote management ethernet network and device
CN107579894B (en) FPGA-based EBR1553 bus protocol implementation device
US20240202158A1 (en) SYSTEM COMMUNICATION TECHNIQUE OVER PCIe (PERIPHERAL COMPONENT INTERCONNECT EXPRESS) LINK
CN113676386B (en) FC-AE-1553 bus protocol message communication system
JPS5992651A (en) Polling system
CN109450651A (en) A kind of implementation method and device of virtual ethernet card
CN101848062A (en) Analogue quantity output module based on MVB (Multifunction Vehicle Bus) interface and MVB device
JP2003198572A (en) Deterministic field bas and process for management of such a bus
CN1917519B (en) Method and system for parallel transmitting serial data according to high level data link control
CN102438335B (en) Medium-long range wireless sensor network networking system
CN113259395B (en) Data communication device and method in embedded environment
CN115967752A (en) Communication protocol implementation method and communication system
CN111836024A (en) Hybrid network system design based on video transmission
CN108614786B (en) Channel management circuit based on message service type
CN116094867B (en) Time-sensitive network control protocol design method based on MLVDS bus
CN106254349B (en) Method for field real-time communication on bus

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