CN114237945B - Interconnection system message processing method, device and medium based on SRIO interface - Google Patents

Interconnection system message processing method, device and medium based on SRIO interface Download PDF

Info

Publication number
CN114237945B
CN114237945B CN202210175054.6A CN202210175054A CN114237945B CN 114237945 B CN114237945 B CN 114237945B CN 202210175054 A CN202210175054 A CN 202210175054A CN 114237945 B CN114237945 B CN 114237945B
Authority
CN
China
Prior art keywords
descriptor
msg
message
address
space
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
CN202210175054.6A
Other languages
Chinese (zh)
Other versions
CN114237945A (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.)
Sichuan Hongchuang Electronic Technology Co ltd
Original Assignee
Sichuan Hongchuang Electronic 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 Sichuan Hongchuang Electronic Technology Co ltd filed Critical Sichuan Hongchuang Electronic Technology Co ltd
Priority to CN202210175054.6A priority Critical patent/CN114237945B/en
Publication of CN114237945A publication Critical patent/CN114237945A/en
Application granted granted Critical
Publication of CN114237945B publication Critical patent/CN114237945B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Abstract

The invention discloses an interconnection system message processing method, device and medium based on SRIO interface, comprising: distributing a plurality of descriptors for receiving msg messages, and configuring the attributes of the descriptors when SRIO is initialized; the descriptor attribute includes a spatial address of the descriptor; when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if the space address of the last descriptor has data, judging that a descriptor overflow event occurs; when the descriptor overflows, releasing the space of all the descriptors, and respectively resetting the write pointer and the read pointer to realize the data read-write synchronization of the read pointer and the write pointer. The invention has no condition that the message is received but can not be read due to asynchronous read-write pointers, and does not need to continuously send msg message through an external system to synchronize the read-write pointers to generate a large amount of garbage information, thereby improving the real-time property of message processing and ensuring the stable operation of data transmission.

Description

Interconnection system message processing method, device and medium based on SRIO interface
Technical Field
The invention belongs to the technical field of digital signal processing, and particularly relates to an interconnection system message processing method, device and medium based on an SRIO interface.
Background
Digital signal processing techniques have been widely used in the fields of communications, radar, sonar, remote sensing, graphic image processing, and voice processing. For some complex information systems, a strict requirement is provided for the real-time performance of mass data transmission, and high-speed data transmission among multiple DSPs, between the DSPs and a high-speed AD acquisition system, and between the DSPs and an FPGA is one of the main bottlenecks affecting the signal processing flow. With the development of the technology, an interconnection system based on a TMS320C6455 (hereinafter referred to as C6455) high-speed SRIO interface comes along, has high-speed operational capability and integrates high-speed serial interface SRIO, is convenient for data transmission among multiple DSPs and an FPGA, and meets the requirements of high-speed real-time processing and transmission to a certain extent.
However, the existing SRIO interconnection system mainly has the following problems when msg messages are performed: since msg receives messages passively and cannot know the time node of sending external system messages, in some application scenarios, the msg easily generates overflow phenomenon when receiving descriptors. For example, in the debugging process of the interconnection system program, after a breakpoint is added to the program, the program stops running, at this time, the external system still periodically sends msg to the interconnection system, so that 32 descriptors are all occupied, and then the later received message covers 32 descriptor spaces, so that the phenomenon of overflow of the msg received descriptor occurs, and further, the msg received message is received but cannot be read because the read pointer and the write pointer are asynchronous, so that the problem of junk data exists in the descriptor.
Disclosure of Invention
The invention aims to provide an interconnection system message processing method, device and medium based on an SRIO interface, which are used for solving the problems that in the debugging process of an interconnection system program in the prior art, after a breakpoint is added in the program, a message receiving descriptor overflows, a read pointer and a write pointer are asynchronous, so that msg received messages are received but cannot be read, and junk data exist in the descriptor.
In order to achieve the purpose, the invention adopts the following technical scheme:
in a first aspect, the present invention provides an interconnection system message processing method based on SRIO interfaces, including:
distributing a plurality of descriptors for receiving msg messages, and configuring attributes of the descriptors when SRIO is initialized; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if the space address of the last descriptor has data, judging that a descriptor overflow event occurs; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
when the descriptor overflows, releasing the space of all the descriptors, and respectively resetting the write pointer and the read pointer to realize the data read-write synchronization of the read pointer and the write pointer.
In one possible design, accessing the spatial address of the last descriptor first every time the msg message is received, and determining that a descriptor overflow event has occurred if there is data in the spatial address of the last descriptor, including:
receiving and reading a first msg message, and storing a space address of a first descriptor;
receiving a second msg message, accessing the space address of the first descriptor, and judging that a descriptor overflow event occurs when data exists in the space address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
In one possible design, after accessing the spatial address of the first descriptor, the method further includes:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
In one possible design, freeing the space of all descriptors and zeroing out the write pointer and the read pointer, respectively, includes:
sequentially accessing the space addresses of all descriptors, reading data in all descriptor spaces, and releasing the descriptor spaces;
the write pointer and the read pointer are both pointed to the first descriptor, and the msg message is re-received starting from the first descriptor.
In one possible design, the descriptor overflow event occurs during debugging of an interconnected system program.
In one possible design, sequentially accessing the spatial addresses of all descriptors when a breakpoint is opened during debugging of an interconnected system program includes:
the spatial addresses of the 32 descriptors are accessed in sequence starting from the position of the read pointer at the breakpoint.
In a second aspect, the present invention provides an interconnection system message processing apparatus based on SRIO interface, including:
the configuration module is used for distributing a plurality of descriptors for receiving msg messages and configuring the attributes of the descriptors when SRIO is initialized; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
the event judging module is used for firstly accessing the space address of the last descriptor when receiving the msg message every time, and judging that a descriptor overflow event occurs if data exists in the space address of the last descriptor; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
and the read-write synchronization module is used for releasing the spaces of all the descriptors and respectively resetting the write pointer and the read pointer when the descriptor overflow event occurs, so as to realize the data read-write synchronization of the read pointer and the write pointer.
In one possible design, the event determination module includes:
the address storage unit is used for receiving and reading the first msg message and storing the space address of the first descriptor;
an event determining unit, configured to receive a second msg message, access the spatial address of the first descriptor, and determine that a descriptor overflow event occurs when data exists in the spatial address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
In one possible design, after accessing the spatial address of the first descriptor, the event determination unit is further to:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
In one possible design, freeing the space of all descriptors and zeroing out the write pointer and the read pointer, respectively, includes:
sequentially accessing the space addresses of all descriptors, reading data in all descriptor spaces, and releasing the descriptor spaces;
the write pointer and the read pointer are both pointed to the first descriptor, and the msg message is re-received starting from the first descriptor.
In one possible design, the descriptor overflow event occurs during debugging of an interconnected system program.
In one possible design, sequentially accessing the spatial addresses of all descriptors when a breakpoint is opened during debugging of an interconnected system program includes:
the spatial addresses of the 32 descriptors are accessed in sequence starting from the position of the read pointer at the breakpoint.
In a third aspect, the present invention provides a computer-readable storage medium, where one or more programs are stored, and the one or more programs are executable by one or more processors to implement the method for processing an interconnection system message based on an SRIO interface as set forth in any one of possible designs of the first aspect.
In a fourth aspect, the present invention provides a computer device, including a memory, a processor, and a transceiver, which are sequentially connected in a communication manner, where the memory is used to store a computer program, the transceiver is used to transmit and receive a message, and the processor is used to read the computer program and execute a method for processing an interconnection system message based on an SRIO interface as described in any one of possible designs of the first aspect.
In a fifth aspect, the present invention provides a computer program product containing instructions, which when run on a computer, cause the computer to perform a method for processing messages in an interconnection system based on SRIO interfaces as described in any one of the possible designs of the first aspect.
Has the advantages that:
the invention distributes a plurality of descriptors for receiving msg messages, and configures the attributes of the descriptors when SRIO is initialized; then, when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if the space address of the last descriptor has data, judging that a descriptor overflow event occurs; when the descriptor overflows, the space of all the descriptors is released, and the write pointer and the read pointer are respectively reset, so that the data read-write synchronization of the read pointer and the write pointer is realized, the condition that the message is received but cannot be read due to the asynchronous read-write pointer is avoided, and the condition that the msg message is continuously sent by an external system to synchronize the read-write pointer when the read-write pointer is asynchronous is avoided, so that a large amount of garbage information is generated. In addition, after the breakpoint of the interconnection system program debugging is cancelled, when the external system sends the msg message, the msg message receiving of the interconnection system can immediately respond and receive the message, so that the real-time performance of message receiving processing is improved, and the stable operation of system data transmission is ensured.
Drawings
Fig. 1 is a flowchart of an interconnection system message processing method based on an SRIO interface in this embodiment;
fig. 2 is a block diagram of an interconnection system message processing apparatus based on an SRIO interface in this embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present disclosure more clear, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are some, but not all embodiments of the present disclosure. All other embodiments, which can be obtained by a person skilled in the art without inventive step based on the embodiments in the present description, belong to the protection scope of the present invention.
The application scenario of the interconnection system message processing method based on the SRIO interface is mainly used for solving the problem of poor data transmission real-time performance caused by the asynchronous abnormal condition of the read-write pointer in the debugging process of the interconnection system program. The abnormal condition that the read-write pointer is not synchronous mainly comprises the following conditions:
for example, for an interconnection system based on a C6455 high-speed SRIO interface, the condition that the read and write pointers are not synchronized mainly lies in: one is that the read pointer points to the first descriptor space in the 32 descriptor spaces, such as the read pointer points to the 2 nd descriptor space, and the write pointer points to the next descriptor space in the 32 descriptor spaces, such as the write pointer points to the 20 th descriptor space, where the read pointer is before the write pointer; in the first case, when the breakpoint is cancelled and the program runs at full speed, because 32 descriptors are covered, the read pointer reads messages of the 3 rd, 4 th, 32 th and 1 st descriptor spaces in sequence from the 2 nd descriptor space, the read pointer still points to the 2 nd descriptor space after reading a circle before, at this time, when the msg message is sent to the system from the outside, because the read pointer and the write pointer are asynchronous, the write pointer points to the 21 st descriptor space, and the read pointer judges that the 2 nd descriptor space is empty, the msg message cannot be read, and at this time, the phenomenon is that the outer system sends the msg message, and the system does not receive the msg message. It needs to wait for the external system to make 13 rounds of messages, and let the write pointer point to the 22 nd, 23 rd.. 32 th, 1 st and 2 nd in turn from the 21 st descriptor, at this time, the read and write pointers are synchronized to read out the data, but the messages read out from the 3 rd descriptor to the 32 nd, 1 st to 2 nd descriptor space are old data before, and have no real-time property. Second, the write pointer points to the front descriptor space in the 32 descriptor spaces, for example, the write pointer points to the 2 nd descriptor space, the read pointer points to the back descriptor space in the 32 descriptor spaces, for example, the read pointer points to the 20 th descriptor space, and at this time, the write pointer is behind the front read pointer; the second case is the same as the first case, when the program breakpoint is cancelled, the read pointer reads 32 descriptor spaces once, then points to the 20 th descriptor space, the write pointer stays in the 2 nd descriptor space, the external system needs to send 18 msg more times to synchronize the read and write pointers, and during the 18 msg sending process, the system considers that no data is received.
Of course, it is understood that the present invention is not limited to an application scenario of interconnection system program debugging, and the present invention is applicable to any abnormal situation where read and write pointers in an interconnection system based on SRIO interfaces are not synchronous. For the sake of easy understanding, the following description will explain the embodiments of the present invention by way of specific examples.
Examples
As shown in fig. 1, in a first aspect, the present invention provides an interconnection system message processing method based on an SRIO interface, including but not limited to steps S101 to S103:
s101, distributing a plurality of descriptors for receiving msg messages, and configuring attributes of the descriptors during SRIO initialization; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
it should be noted that, in this embodiment, an SRIO (Serial Rapid I/O) interface is a Serial RapidIO interface facing a Serial backplane, a DSP, and a related Serial data plane connection application. The serial RapidIO comprises a 3-layer structure protocol, namely a physical layer, a transmission layer and a logic layer. Physical layer definition electrical characteristics, link control, low level error management, underlying flow control data; the transport layer defines packet switching, routing and addressing mechanisms; the logical layer defines the overall protocol and packet format. The minimum pin number can be realized, DMA transmission is adopted, and complex extensible topology and multipoint transmission are supported; the optional four speeds of 1.25 Gbps, 2.5 Gbps, 3.125 Gbps and 5Gbps can meet different application requirements.
It should be noted that the attribute of the descriptor includes, but is not limited to, a spatial address of the descriptor, a type of the descriptor, a right of the descriptor, a length of the descriptor, and the like, and is not limited herein.
For example, for an interconnection system based on a C6455 high-speed SRIO interface, the system allocates 32 descriptors for msg reception of SRIO, the 32 descriptors are configured when SRIO is initialized, a 1 st descriptor pointer points to a second descriptor, a 2 nd descriptor pointer points to a 3 rd descriptor, and so on, a pointer of each descriptor points to a next descriptor sequentially, and a 32 nd descriptor pointer points to a 1 st descriptor, thereby realizing cyclic use of descriptors. When the msg receives a message sent by an external system for the first time, the detailed information of the received message is written into a 1 st descriptor space, a pointer (hereinafter referred to as a write pointer) written into the descriptor space points to the 1 st descriptor space, msg receiving interruption is triggered, the 1 st descriptor space is cleared after the message is processed, the write pointer points to a 2 nd descriptor space, a pointer (hereinafter referred to as a read pointer) reading the 1 st descriptor space also points to the 2 nd descriptor space, whether the 2 nd descriptor space has the message is checked, and all messages are received at one time. Therefore, one descriptor is cleared every time a message is received, and the other 32 descriptors are circularly used, so that infinite circular reception is realized.
Preferably, the descriptor overflow event occurs in the debugging process of the interconnected system program; of course, it can be understood that the present embodiment is not limited to an application scenario of interconnection system program debugging, and the present embodiment is applicable to any abnormal situation where read and write pointers in an interconnection system based on an SRIO interface are not synchronous.
S102, when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if data exists in the space address of the last descriptor, judging that a descriptor overflow event occurs; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
in a specific implementation manner of step S102, in each time the msg message is received, first accessing the spatial address of the previous descriptor, and if there is data in the spatial address of the previous descriptor, determining that a descriptor overflow event has occurred includes:
step S1021, receiving and reading a first msg message, storing the space address of the first descriptor, and accessing the space address of the descriptor stored last time when a new msg message is received next time, namely accessing the space address of the first descriptor in the implementation;
step S1022, receiving a second msg message, accessing a space address of a first descriptor, and judging that a descriptor overflow event occurs when data exists in the space address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
It should be noted that, the working principle of the descriptors in this embodiment is as follows: when a message sent by an external system is received for the first time, the detailed information of the received message is written into a space address of a 1 st descriptor, a write pointer written into the 1 st descriptor space address points to the 1 st descriptor space address at the moment, msg message receiving interruption is triggered, the 1 st descriptor space address is cleared after a read pointer processes the message, then the write pointer points to a 2 nd descriptor space address, the read pointer also points to the 2 nd descriptor space address, whether the second descriptor space has the message is checked, and all the messages are received at one time. Therefore, each time a message is received, a descriptor is cleared, and cyclic use of a plurality of descriptors is realized. Therefore, if a new msg message is received, there should be no data in the spatial address of the last descriptor, and if there is data in the spatial address of the last descriptor, it is considered that a descriptor overflow event has occurred.
In a specific embodiment, after accessing the spatial address of the first descriptor, the method further includes:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
It should be noted that, when there is no data in the spatial address of the first descriptor, and the descriptor at the msg receiving end does not have an abnormal condition, the spatial address of the corresponding descriptor is stored after receiving the msg message each time, so that the spatial address of the previous descriptor is accessed when receiving the msg message next time, and so on, so as to implement sequential access of a plurality of descriptor spatial addresses.
And S103, when the descriptor overflow event occurs, releasing the spaces of all the descriptors, and respectively resetting the write pointer and the read pointer to realize the data read-write synchronization of the read pointer and the write pointer.
In a specific implementation manner of step S103, releasing the space of all descriptors, and clearing the write pointer and the read pointer respectively includes:
step S1031, sequentially accessing the space addresses of all the descriptors, reading the data in all the descriptor spaces, and releasing the descriptor spaces;
for example, for an interconnection system based on a C6455 high-speed SRIO interface, 32 descriptors are configured at an msg receiving end, and when a write pointer and a read pointer are cleared, 32 descriptor space addresses need to be sequentially accessed, preferably, the 32 descriptor space addresses are sequentially accessed from a read pointer position at an interrupt point in a program debugging process, and data in the 32 descriptor spaces are read, so that all descriptor spaces are released.
And S1032, pointing the write pointer and the read pointer to the first descriptor, and re-receiving the msg message from the first descriptor so as to realize the synchronization of the read pointer and the read pointer.
Based on the above disclosure, in this embodiment, a plurality of descriptors are allocated for receiving msg messages, and the attributes of the descriptors are configured when SRIO is initialized; then, when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if the space address of the last descriptor has data, judging that a descriptor overflow event occurs; when the descriptor overflows, the space of all the descriptors is released, and the write pointer and the read pointer are respectively reset, so that the data read-write synchronization of the read pointer and the write pointer is realized, the condition that the message is received but cannot be read due to the asynchronous read-write pointer is avoided, and the condition that the msg message is continuously sent by an external system to synchronize the read-write pointer when the read-write pointer is asynchronous is avoided, so that a large amount of garbage information is generated. In addition, after the breakpoint of the interconnection system program debugging is cancelled, when the external system sends the msg message, the msg message receiving of the interconnection system can immediately respond and receive the message, so that the real-time performance of message receiving processing is improved, and the stable operation of system data transmission is ensured.
As shown in fig. 2, in a second aspect, the present invention provides an interconnection system message processing apparatus based on an SRIO interface, including:
the configuration module is used for distributing a plurality of descriptors for receiving msg messages and configuring the attributes of the descriptors when SRIO is initialized; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
the event judging module is used for firstly accessing the space address of the last descriptor when receiving the msg message every time, and judging that a descriptor overflow event occurs if data exists in the space address of the last descriptor; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
and the read-write synchronization module is used for releasing the spaces of all the descriptors and respectively resetting the write pointer and the read pointer when the descriptor overflow event occurs, so as to realize the data read-write synchronization of the read pointer and the write pointer.
In one possible design, the event determination module includes:
the address storage unit is used for receiving and reading the first msg message and storing the space address of the first descriptor;
an event determining unit, configured to receive a second msg message, access the spatial address of the first descriptor, and determine that a descriptor overflow event occurs when data exists in the spatial address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
In one possible design, after accessing the spatial address of the first descriptor, the event determination unit is further to:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
In one possible design, freeing the space of all descriptors and zeroing out the write pointer and the read pointer, respectively, includes:
sequentially accessing the space addresses of all descriptors, reading data in all descriptor spaces, and releasing the descriptor spaces;
the write pointer and the read pointer are both pointed to the first descriptor, and the msg message is re-received starting from the first descriptor.
In one possible design, the descriptor overflow event occurs during debugging of an interconnected system program.
In one possible design, sequentially accessing the spatial addresses of all descriptors when a breakpoint is opened during debugging of an interconnected system program includes:
the spatial addresses of the 32 descriptors are accessed in sequence starting from the position of the read pointer at the breakpoint.
Based on the above disclosure, in this example, a configuration module allocates a plurality of descriptors for receiving msg messages, and configures attributes of the descriptors when SRIO is initialized; when the msg message is received each time through the event judging module, firstly accessing the space address of the last descriptor, and if data exists in the space address of the last descriptor, judging that a descriptor overflow event occurs; when a descriptor overflow event occurs, the read-write synchronization module releases the space of all descriptors and respectively clears the write pointer and the read pointer to realize the data read-write synchronization of the read pointer and the write pointer, so that the situation that the message is received but cannot be read due to the asynchronous read-write pointer is avoided, and the situation that the read-write pointer is synchronized by continuously sending msg message through an external system to generate a large amount of garbage information when the read-write pointer is asynchronous is avoided. In addition, after the breakpoint of the interconnection system program debugging is cancelled, when the external system sends the msg message, the msg message receiving of the interconnection system can immediately respond and receive the message, so that the real-time performance of message receiving processing is improved, and the stable operation of system data transmission is ensured.
In a third aspect, the present invention provides a computer-readable storage medium, where one or more programs are stored, and the one or more programs are executable by one or more processors to implement the method for processing an interconnection system message based on an SRIO interface as set forth in any one of possible designs of the first aspect.
The readable storage medium refers to a carrier for storing data, and may include, but is not limited to, a floppy disk, an optical disk, a hard disk, a flash Memory, a flash disk and/or a Memory Stick (Memory Stick), etc., and the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
In a fourth aspect, the present invention provides a computer device, including a memory, a processor, and a transceiver, which are sequentially connected in a communication manner, where the memory is used to store a computer program, the transceiver is used to transmit and receive a message, and the processor is used to read the computer program and execute a method for processing an interconnection system message based on an SRIO interface as described in any one of possible designs of the first aspect.
For example, the Memory may include, but is not limited to, a Random-Access Memory (RAM), a Read-Only Memory (ROM), a Flash Memory (Flash Memory), a First-in First-out (FIFO), and/or a First-in Last-out (FILO), and the like; the transceiver may be, but is not limited to, a WiFi (wireless fidelity) wireless transceiver, a bluetooth wireless transceiver, a GPRS (General Packet Radio Service) wireless transceiver, and/or a ZigBee (ZigBee protocol, low power consumption local area network protocol based on ieee802.15.4 standard) wireless transceiver, etc.; the processor may not be limited to the use of a microprocessor of the model number STM32F105 family. In addition, the gateway device may also include, but is not limited to, a power module, a display screen, and other necessary components.
In a fifth aspect, the present invention provides a computer program product containing instructions, which when run on a computer, cause the computer to perform a method for processing messages in an interconnection system based on SRIO interfaces as described in any one of the possible designs of the first aspect.
The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable devices.
Finally, it should be noted that: the above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. An interconnection system message processing method based on SRIO interface is characterized by comprising the following steps:
distributing a plurality of descriptors for receiving msg messages, and configuring attributes of the descriptors when SRIO is initialized; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
when receiving the msg message each time, firstly accessing the space address of the last descriptor, and if the space address of the last descriptor has data, judging that a descriptor overflow event occurs; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
when the descriptor overflows, releasing the space of all the descriptors, and respectively clearing the write pointer and the read pointer to realize the data read-write synchronization of the read pointer and the write pointer.
2. The SRIO interface-based message processing method for an interconnection system according to claim 1, wherein each time an msg message is received, the spatial address of the previous descriptor is accessed first, and if there is data in the spatial address of the previous descriptor, it is determined that a descriptor overflow event has occurred, the method includes:
receiving and reading a first msg message, and storing a space address of a first descriptor;
receiving a second msg message, accessing the space address of the first descriptor, and judging that a descriptor overflow event occurs when data exists in the space address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
3. The SRIO interface-based interconnect system message processing method according to claim 2, wherein after accessing the spatial address of the first descriptor, the method further comprises:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
4. The interconnected system message processing method based on SRIO interface of claim 2, wherein the releasing the space of all descriptors and clearing the write pointer and the read pointer respectively comprises:
sequentially accessing the space addresses of all descriptors, reading data in all descriptor spaces, and releasing the descriptor spaces;
the write pointer and the read pointer are both pointed to the first descriptor, and the msg message is re-received starting from the first descriptor.
5. The interconnected system message processing method based on SRIO interface of claim 4, wherein the descriptor overflow event occurs in the process of interconnected system program debugging.
6. The interconnected system message processing method based on SRIO interface of claim 5, wherein when the breakpoint is opened in the program debugging process of the interconnected system, sequentially accessing the space addresses of all descriptors comprises:
the spatial addresses of the 32 descriptors are accessed in sequence starting from the position of the read pointer at the breakpoint.
7. An interconnection system message processing device based on an SRIO interface is characterized by comprising:
the configuration module is used for distributing a plurality of descriptors for receiving msg messages and configuring the attributes of the descriptors when SRIO is initialized; wherein the attribute of the descriptor comprises a spatial address of the descriptor;
the event judging module is used for firstly accessing the space address of the last descriptor when receiving the msg message every time, and judging that a descriptor overflow event occurs if data exists in the space address of the last descriptor; wherein, the space address of the last descriptor is the space address of the descriptor written when the msg message is received last time;
and the read-write synchronization module is used for releasing the spaces of all the descriptors and respectively resetting the write pointer and the read pointer when the descriptor overflow event occurs, so as to realize the data read-write synchronization of the read pointer and the write pointer.
8. The SRIO interface based interconnect system message processing apparatus of claim 7, wherein the event determination module comprises:
the address storage unit is used for receiving and reading the first msg message and storing the space address of the first descriptor;
an event determining unit, configured to receive a second msg message, access the spatial address of the first descriptor, and determine that a descriptor overflow event occurs when data exists in the spatial address of the first descriptor;
the first msg message and the second msg message are msg messages received by the data receiving end of the interconnected system twice.
9. The SRIO interface based interconnect system message processing apparatus according to claim 8, wherein after accessing the spatial address of the first descriptor, the event determining unit is further configured to:
and when no data exists in the space address of the first descriptor, reading the second msg message, and storing the space address of the second descriptor.
10. A computer-readable storage medium storing one or more programs, wherein the one or more programs are executable by one or more processors to implement the SRIO interface based interconnect system message processing method according to any one of claims 1 to 6.
CN202210175054.6A 2022-02-25 2022-02-25 Interconnection system message processing method, device and medium based on SRIO interface Active CN114237945B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210175054.6A CN114237945B (en) 2022-02-25 2022-02-25 Interconnection system message processing method, device and medium based on SRIO interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210175054.6A CN114237945B (en) 2022-02-25 2022-02-25 Interconnection system message processing method, device and medium based on SRIO interface

Publications (2)

Publication Number Publication Date
CN114237945A CN114237945A (en) 2022-03-25
CN114237945B true CN114237945B (en) 2022-05-13

Family

ID=80748376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210175054.6A Active CN114237945B (en) 2022-02-25 2022-02-25 Interconnection system message processing method, device and medium based on SRIO interface

Country Status (1)

Country Link
CN (1) CN114237945B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101198924A (en) * 2005-02-03 2008-06-11 Level5网络有限公司 Including descriptor queue empty events in completion events
CN101421791A (en) * 2005-02-03 2009-04-29 Level5网络有限公司 Queue depth management for communication between host and peripheral device
CN102521177A (en) * 2011-12-07 2012-06-27 福建星网锐捷网络有限公司 Interrupt processing method and device, central processing unit and processing apparatus
CN103532854A (en) * 2013-10-22 2014-01-22 迈普通信技术股份有限公司 Storage and forwarding method and device of message
CN104268113A (en) * 2014-09-23 2015-01-07 天津国芯科技有限公司 LCD (Liquid Crystal Display) controller of DPI interface and bandwidth automatic adaption method thereof
CN105357147A (en) * 2015-11-30 2016-02-24 北京控制工程研究所 High-speed and high-reliability network-on-chip adapter unit
CN110764924A (en) * 2018-07-27 2020-02-07 普天信息技术有限公司 Inter-core communication method and device of multi-core processor

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496699B2 (en) * 2005-06-17 2009-02-24 Level 5 Networks, Inc. DMA descriptor queue read and cache write pointer arrangement
CN103150278B (en) * 2013-03-05 2014-03-05 中国人民解放军国防科学技术大学 Submission method of descriptor of network interface card (NIC) based on mixing of PIO (process input output) and DMA (direct memory access)
CN106533652A (en) * 2015-09-15 2017-03-22 中兴通讯股份有限公司 XTS-SM4-based storage encryption and decryption method and device
CN110010167A (en) * 2019-03-26 2019-07-12 记忆科技(深圳)有限公司 It is a kind of to improve method, apparatus, computer equipment and the storage medium for obtaining descriptor state
CN111831596B (en) * 2020-07-28 2022-01-21 山东有人物联网股份有限公司 RTOS serial port network transmission method and device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101198924A (en) * 2005-02-03 2008-06-11 Level5网络有限公司 Including descriptor queue empty events in completion events
CN101421791A (en) * 2005-02-03 2009-04-29 Level5网络有限公司 Queue depth management for communication between host and peripheral device
CN102521177A (en) * 2011-12-07 2012-06-27 福建星网锐捷网络有限公司 Interrupt processing method and device, central processing unit and processing apparatus
CN103532854A (en) * 2013-10-22 2014-01-22 迈普通信技术股份有限公司 Storage and forwarding method and device of message
CN104268113A (en) * 2014-09-23 2015-01-07 天津国芯科技有限公司 LCD (Liquid Crystal Display) controller of DPI interface and bandwidth automatic adaption method thereof
CN105357147A (en) * 2015-11-30 2016-02-24 北京控制工程研究所 High-speed and high-reliability network-on-chip adapter unit
CN110764924A (en) * 2018-07-27 2020-02-07 普天信息技术有限公司 Inter-core communication method and device of multi-core processor

Also Published As

Publication number Publication date
CN114237945A (en) 2022-03-25

Similar Documents

Publication Publication Date Title
US8542693B2 (en) Managing free packet descriptors in packet-based communications
CN111651377B (en) Elastic shared buffer for on-chip message processing
CN111431757B (en) Virtual network flow acquisition method and device
CN109933438B (en) High-speed shared memory data receiving and transmitting system
US9405725B2 (en) Writing message to controller memory space
CN106648896B (en) Method for dual-core sharing of output peripheral by Zynq chip under heterogeneous-name multiprocessing mode
EP2830269B1 (en) Message processing method and device
CN105376129B (en) One kind 1394 bus transaction layers-link layer data packet transmission circuit and method
US8059670B2 (en) Hardware queue management with distributed linking information
US5293487A (en) Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting
CN112698959A (en) Multi-core communication method and device
CN114237945B (en) Interconnection system message processing method, device and medium based on SRIO interface
WO2018000820A1 (en) Method and device for queue management
CN102916902A (en) Method and device for storing data
US9288163B2 (en) Low-latency packet receive method for networking devices
CN108664335A (en) The method and apparatus of queue communication is carried out by agency
CN104052831A (en) Data transmission method and device based on queues and communication system
US5535366A (en) Method of and circuit arrangement for freeing communications resources, particularly for use by a switching element
US9338219B2 (en) Direct push operations and gather operations
CN114024844B (en) Data scheduling method, data scheduling device and electronic equipment
CN112214429B (en) Data transmission device and method based on SRIO
CN112214337A (en) TTFC network transmission cache design method, computer equipment and storage medium
CN117041186B (en) Data transmission method, chip system, computing device and storage medium
CN111666254A (en) Novel heterogeneous multiprocessor circuit system
CN110519137A (en) Switching device

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