CN115225694B - Data stream transmission method, device, equipment and medium - Google Patents

Data stream transmission method, device, equipment and medium Download PDF

Info

Publication number
CN115225694B
CN115225694B CN202210667137.7A CN202210667137A CN115225694B CN 115225694 B CN115225694 B CN 115225694B CN 202210667137 A CN202210667137 A CN 202210667137A CN 115225694 B CN115225694 B CN 115225694B
Authority
CN
China
Prior art keywords
transmitted
communication link
data stream
identifier
interconnection
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
CN202210667137.7A
Other languages
Chinese (zh)
Other versions
CN115225694A (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.)
Yusur Technology Co ltd
Original Assignee
Yusur 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 Yusur Technology Co ltd filed Critical Yusur Technology Co ltd
Priority to CN202210667137.7A priority Critical patent/CN115225694B/en
Publication of CN115225694A publication Critical patent/CN115225694A/en
Application granted granted Critical
Publication of CN115225694B publication Critical patent/CN115225694B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The present disclosure relates to the field of computer technology, and provides a data stream transmission method, apparatus, device, and medium, including: acquiring a data stream to be transmitted, and determining a target communication link path in an interconnection communication matrix according to an identifier carried by a sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port; and establishing at least two target communication links in the interconnected communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnected communication units. By adopting the mode, the efficiency of data stream transmission is improved.

Description

Data stream transmission method, device, equipment and medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a data stream transmission method, apparatus, device, and medium.
Background
In recent years, multi-core processors have become mainstream processors in the market because of their stronger computing power, better scalability and configurability, and to some extent, lower power consumption than single-core processors. In the prior art, a multi-core processor utilizes a network-on-chip architecture to realize data flow transmission among multiple cores, so that the computing capacity of the multi-core processor can be improved.
However, with the prior art, when the number of cores in the multi-core processor is large, the data flow transmission efficiency between the cores is low due to the complex interconnection network when data communication is performed between the large number of cores.
Disclosure of Invention
Based on this, there is a need to provide a data stream transmission method, apparatus, device and medium in order to solve the above technical problems.
The embodiment of the disclosure provides a data stream transmission method, which comprises the following steps:
the method comprises the steps of obtaining a data stream to be transmitted, wherein the data stream to be transmitted consists of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, and the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier;
determining a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
and establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnection communication units.
In one embodiment, determining the target communication link path in the interconnection communication matrix according to the identifier carried by the sub-data flow to be transmitted includes:
determining the target communication link path in the interconnection communication matrix according to the source port identifier, the destination port identifier and the first priority identifier carried by the sub-data stream to be transmitted;
wherein the communication link identification is used to indicate that the target communication link is established in the interconnection communication matrix.
In one embodiment, the determining the target communication link path in the interconnection communication matrix according to the source port identifier, the destination port identifier, and the first priority identifier carried by the sub-data flow to be transmitted includes:
determining a source interconnection communication unit and a destination interconnection communication unit in the interconnection communication matrix according to the source port identification and the destination port identification, determining a source communication link input port in the source interconnection communication unit, and determining a destination communication link output port in the destination interconnection communication unit;
acquiring a corresponding second priority for the destination communication link output port;
and when the first priority is determined to be consistent with the second priority, determining the target communication link path according to the source communication link input port and the target communication link output port.
In one embodiment, the establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths, and after each of the target communication links is established, transmitting the sub-data stream to be transmitted includes:
and respectively establishing target communication links among the source interconnection communication units, at least one intermediate interconnection communication unit and the destination interconnection communication units in the interconnection communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established.
In one embodiment, the establishing a target communication link between the source interconnection communication unit, the at least one intermediate interconnection communication unit and the destination interconnection communication unit in the interconnection communication matrix based on the target communication link path, and transmitting the sub-data stream to be transmitted after each target communication link is established includes:
when the current interconnected communication unit is the source interconnected communication unit and the source interconnected communication unit is in a communication state, a first target communication link is established according to the communication link identifier carried by the sub-data stream to be transmitted;
after the first target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a second target communication link when the intermediate interconnection communication unit is determined to be in a communication state;
after the second target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a third target communication link when determining that the destination interconnected communication unit is in a communication state;
and after the third target communication link is established, transmitting the sub-data stream to be transmitted.
In one embodiment, after the third target communication link is established, the transmitting the sub-data stream to be transmitted further includes:
and according to the ending identification of the sub-data stream to be transmitted, determining that at least one target communication link is released when the current data stream to be transmitted finishes transmission.
In one embodiment, the method further comprises: and caching the sub-data stream to be transmitted when the sub-data stream to be transmitted reaches the output port of the target communication link.
In a second aspect, an embodiment of the present disclosure provides a data streaming apparatus, including:
the device comprises a data stream to be transmitted acquisition module, a data stream to be transmitted acquisition module and a data transmission module, wherein the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, the sub-data stream to be transmitted carries at least one identifier, and the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier;
a target communication link path determining module, configured to determine a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, where the interconnection communication matrix includes at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
and the transmission module is used for establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnection communication units.
In a third aspect, an embodiment of the present disclosure provides an electronic device, including:
one or more processors;
storage means for storing one or more programs,
the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method of any of the first aspects.
In a fourth aspect, embodiments of the present disclosure provide a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a method according to any of the first aspects.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has the following advantages:
the present disclosure provides a data stream transmission method, apparatus, device and medium, by acquiring a data stream to be transmitted, where the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, where the identifier includes at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier; determining a target communication link path in an interconnection communication matrix according to an identifier carried by a sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port; and establishing at least two target communication links in the interconnected communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnected communication units. In this way, by establishing the target communication link between each two of the plurality of interconnected communication units in the interconnected communication matrix and transmitting the sub-data stream to be transmitted after each of the target communication links is established, the sub-data stream to be transmitted is transmitted while establishing the target communication link in this manner, thereby improving the efficiency of data stream transmission.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the disclosure and together with the description, serve to explain the principles of the disclosure.
In order to more clearly illustrate the embodiments of the present disclosure or the solutions in the prior art, the drawings that are required for the description of the embodiments or the prior art will be briefly described below, and it will be obvious to those skilled in the art that other drawings can be obtained from these drawings without inventive effort.
Fig. 1 is a flow chart of a data flow transmission method according to an embodiment of the present disclosure;
fig. 2 is a schematic diagram of an interconnection communication unit according to an embodiment of the disclosure;
FIG. 3 is a schematic diagram of yet another interconnect communication matrix provided in an embodiment of the present disclosure;
fig. 4 is a flow chart of another data stream transmission method according to an embodiment of the disclosure;
fig. 5 is a schematic structural diagram of a data stream transmission device according to an embodiment of the present disclosure;
fig. 6 is an internal structural diagram of an electronic device provided in an embodiment of the present disclosure.
Detailed Description
In order that the above objects, features and advantages of the present disclosure may be more clearly understood, a further description of aspects of the present disclosure will be provided below. It should be noted that, without conflict, the embodiments of the present disclosure and features in the embodiments may be combined with each other.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure, but the present disclosure may be practiced otherwise than as described herein; it will be apparent that the embodiments in the specification are only some, but not all, embodiments of the disclosure.
In recent years, multi-core processors have become mainstream processors in the market because of their stronger computing power, better scalability and configurability, and to some extent, lower power consumption than single-core processors. In the prior art, a multi-core processor utilizes a network-on-chip architecture to realize data flow transmission among multiple cores, so that the computing capacity of the multi-core processor can be improved.
However, with the prior art, when the number of cores in the multi-core processor is large, the data flow transmission efficiency between the cores is low due to the complex interconnection network when data communication is performed between the large number of cores.
Based on the above, the present disclosure provides a data stream transmission method, apparatus, device and medium, by acquiring a data stream to be transmitted, where the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, where the identifier includes at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier; determining a target communication link path in an interconnection communication matrix according to an identifier carried by a sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port; and establishing at least two target communication links in the interconnected communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnected communication units. In this way, by establishing the target communication link between each two of the plurality of interconnected communication units in the interconnected communication matrix and transmitting the sub-data stream to be transmitted after each of the target communication links is established, the sub-data stream to be transmitted is transmitted while establishing the target communication link in this manner, thereby improving the efficiency of data stream transmission.
In one embodiment, as shown in fig. 1, fig. 1 is a flow chart of a data stream transmission method provided in an embodiment of the disclosure, and specifically includes the following steps:
s11: and acquiring a data stream to be transmitted.
The data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, wherein the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier.
For example, for one data stream to be transmitted, a plurality of sub-data streams to be transmitted are included, and for each sub-data stream to be transmitted, a different identifier is carried, for example, when the current sub-data stream to be transmitted is the first sub-data stream to be transmitted of the data stream to be transmitted, the first sub-data stream to be transmitted may carry a communication link identifier, a source port identifier, a destination port identifier, a first priority identifier, and a start identifier, where the start identifier is used to indicate that the current sub-data stream to be transmitted is the first sub-data stream to be transmitted of the data stream to be transmitted.
The communication link identifier is used to indicate that the target communication link is established, for example, b11, the valid data identifier is used to indicate that the currently transmitted sub-data stream to be transmitted is valid data among the data streams to be transmitted, the valid data identifier may be b00, the source port identifier is used to indicate a source communication link input port of the target communication link, the destination port identifier is used to indicate a destination communication link output port of the target communication link, the first priority identifier is used to indicate a transmission priority of the sub-data stream to be transmitted, the first priority identifier may be 1, 2, 3, 4, different numbers are used to indicate different priorities, the end identifier is used to indicate that the currently transmitted sub-data stream is the last sub-data stream to be transmitted of the data stream to be transmitted, but the present disclosure is not limited thereto, and one skilled in the art may set according to practical situations.
S12: and determining a target communication link path in the interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted.
The interconnection communication matrix includes at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port, as shown in fig. 2, and the interconnection communication units include eight input ports and eight output ports, and four input ports and four output ports are respectively provided in the horizontal direction of the interconnection communication units, for example, an input port 1, an input port 2, an input port 3 and an input port 4, and the output ports 1, the output port 2, the input port 3 and the input port 4 are provided in the vertical direction, for example, an input port 1, an input port 2, an input port 3 and an input port 4, and the output ports 1, an output port 2, an output port 3 and an output port 4, but the present disclosure is not limited thereto, and those skilled in the art can specifically set according to actual situations.
The interconnection communication matrix includes at least two interconnection communication units, as shown in fig. 3, and is formed by four interconnection communication units, and a 2 x 2 interconnection communication matrix is constructed by using the four interconnection communication units, so as to implement data stream transmission through the interconnection communication matrix having eight input ports and eight output ports, but the present disclosure is not limited thereto, and a person skilled in the art may specifically set according to practical situations.
Specifically, a target communication link path is determined in the interconnection communication matrix according to one or more identifiers corresponding to one or more sub-data streams to be transmitted, which are included in the acquired data streams to be transmitted.
Alternatively, based on the above embodiments, in some embodiments of the present disclosure, an implementation of S12 may be:
and step A, determining a target communication link path in the interconnection communication matrix according to a source port identifier, a destination port identifier and a first priority identifier carried by the sub-data stream to be transmitted.
Specifically, when a data stream to be transmitted is obtained, a source port identifier, a destination port identifier and a first priority identifier carried by a sub data stream to be transmitted included in the data stream to be transmitted are further determined, and after the source port identifier, the destination port identifier and the first priority identifier are determined, a target communication link path is determined in the interconnection communication matrix according to the source port identifier, the destination port identifier and the first priority identifier.
Alternatively, based on the above embodiments, in some embodiments of the present disclosure, an implementation manner of step a may be:
and A-1, determining a source interconnection communication unit and a destination interconnection communication unit in the interconnection communication matrix according to the source port identification and the destination port identification, determining a source communication link input port in the source interconnection communication unit and determining a destination communication link output port in the destination interconnection communication unit.
The source interconnection communication unit refers to an initial interconnection communication unit for starting transmission of the data stream to be transmitted in the interconnection communication matrix, and each interconnection communication unit is provided with a corresponding input port, so that a corresponding source communication link input port can be further determined at the source interconnection communication unit, the destination interconnection communication unit refers to a destination interconnection communication unit for ending transmission of the data stream to be transmitted in the interconnection communication matrix, and a corresponding destination communication link input port is further determined at the destination interconnection communication unit according to the fact that each interconnection communication unit is provided with a corresponding output port.
For example, assuming that the source port identifier is 4 and the destination port identifier is 5, as shown in fig. 3, in the interconnection communication matrix having eight input ports and eight output ports, the corresponding source communication link input ports and destination communication link output ports can be matched, but not limited thereto, the disclosure is not particularly limited, and those skilled in the art can particularly limit according to practical situations.
And step A-2, aiming at the output port of the target communication link, acquiring a corresponding second priority.
Specifically, when a corresponding destination communication link output port is determined in the interconnection communication matrix, a second priority of the destination communication link output port is obtained, the second priority of the destination communication link output port is compared with a first priority corresponding to the sub-data stream to be transmitted, and whether the second priority of the destination communication link output port is consistent with the first priority corresponding to the sub-data stream to be transmitted is judged.
And step A-3, when the first priority is determined to be consistent with the second priority, determining a target communication link path according to the source communication link input port and the target communication link output port.
Specifically, when the second priority of the output port of the destination communication link is determined to be consistent with the first priority corresponding to the sub-data stream to be transmitted, determining the path of the target communication link according to the currently determined input port of the source communication link and the output port of the destination communication link.
It should be noted that, when determining the target communication link path in the interconnection communication matrix according to the source port identifier, the destination port identifier, and the first priority identifier carried by the sub-data stream to be transmitted, in order to simplify the target communication link path, generally, in the interconnection communication matrix, the target communication link path in the first direction is determined from left to right, and further, in the second direction, the target communication link path in the second direction is determined from top to bottom, so as to obtain the final target communication link path, which is not limited in this disclosure, and those skilled in the art may specifically limit according to practical situations.
S13: at least two target communication links are established in the interconnection communication matrix based on the target communication link paths, and after each target communication link is established, sub-data streams to be transmitted are transmitted.
The target communication link is determined according to two adjacent interconnected communication units, and for the determined target communication link path, a plurality of interconnected communication units are included, and a communication link established between every two interconnected communication units is a target communication link, which is not limited thereto, the disclosure is not particularly limited, and those skilled in the art can specifically set according to practical situations.
Optionally, based on the foregoing embodiments, in some embodiments of the disclosure, one implementation manner of S13 may be:
and (B) step (B): and respectively establishing target communication links among the source interconnection communication units, the at least one intermediate interconnection communication unit and the target interconnection communication units in the interconnection communication matrix based on the target communication link paths, and transmitting sub-data streams to be transmitted after each target communication link is established.
Specifically, according to the well-determined target communication link path in the interconnection communication matrix, and the known source interconnection communication unit, at least one intermediate interconnection communication unit and the destination interconnection communication unit, a target communication link between every two interconnection communication units is established, and after one target communication link is established, the sub-data stream to be transmitted is transmitted according to the target communication link.
Optionally, based on the foregoing embodiments, in some embodiments of the disclosure, one implementation manner of step B may be:
step B-1: when the current interconnected communication unit is a source interconnected communication unit and the source interconnected communication unit is in a communication state, a first target communication link is established according to a communication link identifier carried by a sub-data stream to be transmitted.
Specifically, according to the communication link identifier corresponding to the sub-data stream to be transmitted, it is determined that a communication link needs to be established in the interconnection communication matrix when the sub-data stream to be transmitted at this time, and when the source interconnection communication unit is determined to be in a communication state, a first target communication link is established, so that the source interconnection communication unit can receive the sub-data stream to be transmitted.
Step B-2: after the first target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a second target communication link when the intermediate interconnected communication units are determined to be in a communication state.
Specifically, after the first target communication link is established, the sub-data stream to be transmitted is received through the source interconnection communication unit, and when the intermediate interconnection communication unit is determined to be in a communication state, a second target communication link between the source interconnection communication unit and the intermediate interconnection communication unit adjacent to the source interconnection communication unit is established.
Step B-3: and after the second target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a third target communication link when the destination interconnected communication unit is determined to be in a communication state.
Specifically, after the second target communication link is established, the sub-data stream to be transmitted received by the source interconnection communication unit is transmitted to the intermediate interconnection communication unit adjacent to the source interconnection communication unit, and when the destination interconnection communication unit is determined to be in a communication state, a third target communication link between the intermediate interconnection communication unit and the destination interconnection communication unit is established.
Step B-4: after the third target communication link is established, the sub-data stream to be transmitted is transmitted.
Specifically, after the third target communication link is established, the sub-data stream to be transmitted, which is received by the intermediate interconnection communication unit, is transmitted to the destination interconnection communication unit.
It should be noted that, when determining whether the interconnected communication units are in the communication state, the determination may be performed by acquiring a ready signal sent by the interconnected communication units, but the present disclosure is not limited thereto, and those skilled in the art may set the determination according to actual situations.
Further, the number of the intermediate interconnection communication units is determined according to the target communication link path, and the step of establishing a communication link between each two intermediate interconnection communication units is consistent with the step of establishing a communication link between the source interconnection communication unit and an intermediate interconnection communication unit adjacent to the source interconnection communication unit and the step of data stream transmission, which are not described herein.
In this way, in the data stream transmission method provided by the embodiment of the present disclosure, a data stream to be transmitted is obtained, where the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, where the identifier includes at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier, and a start identifier; determining a target communication link path in an interconnection communication matrix according to an identifier carried by a sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port; and establishing at least two target communication links in the interconnected communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnected communication units. In this way, by establishing the target communication link between each two of the plurality of interconnected communication units in the interconnected communication matrix and transmitting the sub-data stream to be transmitted after each of the target communication links is established, the sub-data stream to be transmitted is transmitted while establishing the target communication link in this manner, thereby improving the efficiency of data stream transmission.
Optionally, on the basis of the above embodiments, in some embodiments of the present disclosure, as shown in fig. 4, after performing step B-4, the method further includes:
s21: and according to the ending identification of the sub-data stream to be transmitted, determining that at least one target communication link is released when the current data stream to be transmitted finishes transmission.
Specifically, when determining that the current sub-data stream to be transmitted carries the end identifier, determining that the current data stream to be transmitted completes transmission, releasing a plurality of target communication links corresponding to the data stream to be transmitted, thereby saving the resources of the processor.
Optionally, on the basis of the foregoing embodiments, in some embodiments of the disclosure, the method further includes:
and when the sub-data stream to be transmitted reaches the output port of the destination communication link, caching the sub-data stream to be transmitted.
By way of example, when the sub-data stream to be transmitted arrives at the output port of the destination communication link, the FIFO disposed at the output port of the destination communication link is used to buffer the sub-data stream to be transmitted, so as to avoid the situation of data loss in the data stream transmission process.
Fig. 5 is a data flow transmission device provided in an embodiment of the present disclosure, including: a data stream to be transmitted acquisition module 11, a target communication link path determination module 12 and a transmission module 13.
The data stream to be transmitted acquiring module 11 is configured to acquire a data stream to be transmitted, where the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, where the identifier includes at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier, and a start identifier;
a target communication link path determining module 12, configured to determine a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, where the interconnection communication matrix includes at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
a transmission module 13, configured to establish at least two target communication links in an interconnection communication matrix based on the target communication link paths, and transmit the sub-data streams to be transmitted after each of the target communication links is established, where the target communication links are determined according to two adjacent interconnection communication units.
In the above embodiment, the target communication link path determining module 12 is specifically configured to determine a target communication link path in the interconnection communication matrix according to a source port identifier, a destination port identifier, and a first priority identifier carried by a sub-data stream to be transmitted;
wherein the communication link identification is used to indicate that the target communication link is established in the interconnection communication matrix.
In the above embodiment, the target communication link path determining module 12 is specifically further configured to determine, according to the source port identifier and the destination port identifier, a source interconnection communication unit and a destination interconnection communication unit in the interconnection communication matrix, determine, at the source interconnection communication unit, a source communication link input port, and determine, at the destination interconnection communication unit, a destination communication link output port;
aiming at a destination communication link output port, acquiring a corresponding second priority;
and when the first priority is determined to be consistent with the second priority, determining a target communication link path according to the source communication link input port and the target communication link output port.
In the above embodiment, the transmission module 13 is specifically configured to establish target communication links between the source interconnection communication unit, the at least one intermediate interconnection communication unit, and the destination interconnection communication unit in the interconnection communication matrix based on the target communication link paths, and transmit the sub-data streams to be transmitted after each target communication link is established.
In the above embodiment, the transmission module 13 is specifically further configured to establish, when the current interconnection communication unit is a source interconnection communication unit and the source interconnection communication unit is in a communication state, a first target communication link according to a communication link identifier carried by a sub-data stream to be transmitted;
transmitting a sub-data stream to be transmitted after the first target communication link is established, and establishing a second target communication link when the intermediate interconnection communication unit is determined to be in a communication state;
transmitting a sub-data stream to be transmitted after the second target communication link is established, and establishing a third target communication link when the destination interconnected communication unit is determined to be in a communication state;
after the third target communication link is established, the sub-data stream to be transmitted is transmitted.
In the above embodiment, the apparatus further includes: and the releasing module is used for determining that at least one target communication link is released when the current data stream to be transmitted finishes transmission according to the ending identification of the sub-data stream to be transmitted.
In the above embodiment, the apparatus further includes: and the buffer module is used for buffering the sub-data stream to be transmitted when the sub-data stream to be transmitted reaches the output port of the target communication link.
In this way, the embodiment acquires the data stream to be transmitted through the data stream to be transmitted acquiring module 11, where the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, where the identifier includes at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier; the target communication link path determining module 12 determines a target communication link path in an interconnection communication matrix according to an identifier carried by a sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port; the transmission module 13 establishes at least two target communication links in the interconnection communication matrix based on the target communication link paths, and transmits the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnection communication units. In this way, by establishing the target communication link between each two of the plurality of interconnected communication units in the interconnected communication matrix and transmitting the sub-data stream to be transmitted after each of the target communication links is established, the sub-data stream to be transmitted is transmitted while establishing the target communication link in this manner, thereby improving the efficiency of data stream transmission.
The device provided by the embodiment of the invention can execute the method provided by any embodiment of the invention, and has the corresponding functional modules and beneficial effects of executing the method.
It should be noted that, in the embodiment of the apparatus, each unit and module included are only divided according to the functional logic, but not limited to the above-mentioned division, so long as the corresponding function can be implemented; in addition, the specific names of the functional units are also only for distinguishing from each other, and are not used to limit the protection scope of the present invention.
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure, and as shown in fig. 6, the electronic device includes a processor 710, a memory 720, an input device 730, and an output device 740; the number of processors 710 in the computer device may be one or more, one processor 710 being illustrated in fig. 6; the processor 710, memory 720, input device 730, and output device 740 in the electronic device may be connected by a bus or other means, for example in fig. 6.
The memory 720 is a computer readable storage medium, and may be used to store a software program, a computer executable program, and modules, such as program instructions/modules corresponding to the methods in the embodiments of the present invention. The processor 710 executes various functional applications of the computer device and data processing, i.e., implements the methods provided by embodiments of the present invention, by running software programs, instructions, and modules stored in the memory 720.
Memory 720 may include primarily a program storage area and a data storage area, wherein the program storage area may store an operating system, at least one application program required for functionality; the storage data area may store data created according to the use of the terminal, etc. In addition, memory 720 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device. In some examples, memory 720 may further include memory located remotely from processor 710, which may be connected to the computer device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 730 may be used to receive input numeric or character information and to generate key signal inputs related to user settings and function control of the electronic device, which may include a keyboard, mouse, etc. The output device 740 may include a display device such as a display screen.
The disclosed embodiments also provide a storage medium containing computer executable instructions which, when executed by a computer processor, are used to implement the methods provided by the embodiments of the present invention, the method comprising:
the method comprises the steps of obtaining a data stream to be transmitted, wherein the data stream to be transmitted consists of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, and the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier;
determining a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
and establishing at least two target communication links in the interconnection communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted according to the target communication links, wherein the target communication links are determined according to two adjacent interconnection communication units.
Of course, the storage medium containing computer executable instructions provided in the embodiments of the present invention is not limited to the method operations described above, and may also perform related operations in the method provided in any embodiment of the present invention.
From the above description of embodiments, it will be clear to a person skilled in the art that the present invention may be implemented by means of software and necessary general purpose hardware, but of course also by means of hardware, although in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product, which may be stored in a computer readable storage medium, such as a floppy disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a FLASH Memory (FLASH), a hard disk or an optical disk of a computer, etc., and include several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method according to the embodiments of the present invention.
It should be noted that in this document, relational terms such as "first" and "second" and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The foregoing is merely a specific embodiment of the disclosure to enable one skilled in the art to understand or practice the disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown and described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A method of data streaming, the method comprising:
the method comprises the steps of obtaining a data stream to be transmitted, wherein the data stream to be transmitted consists of at least one sub-data stream to be transmitted, and the sub-data stream to be transmitted carries at least one identifier, and the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier;
determining a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, wherein the interconnection communication matrix comprises at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
and establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnection communication units.
2. The method according to claim 1, wherein determining the target communication link path in the interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted comprises:
determining the target communication link path in the interconnection communication matrix according to the source port identifier, the destination port identifier and the first priority identifier carried by the sub-data stream to be transmitted;
wherein the communication link identification is used to indicate that the target communication link is established in the interconnection communication matrix.
3. The method of claim 2, wherein the determining the target communication link path in the interconnection communication matrix according to the source port identification, the destination port identification, and the first priority identification carried by the sub-data flow to be transmitted comprises:
determining a source interconnection communication unit and a destination interconnection communication unit in the interconnection communication matrix according to the source port identification and the destination port identification, determining a source communication link input port in the source interconnection communication unit, and determining a destination communication link output port in the destination interconnection communication unit;
acquiring a corresponding second priority for the destination communication link output port;
and when the first priority is determined to be consistent with the second priority, determining the target communication link path according to the source communication link input port and the target communication link output port.
4. The method of claim 1, wherein the establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths and transmitting the sub-data streams to be transmitted after each of the target communication links is established comprises:
and respectively establishing target communication links among the source interconnection communication units, at least one intermediate interconnection communication unit and the destination interconnection communication units in the interconnection communication matrix based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each target communication link is established.
5. The method of claim 4, wherein establishing the target communication links between the source interconnect communication unit, the at least one intermediate interconnect communication unit, and the destination interconnect communication unit in the interconnect communication matrix, respectively, based on the target communication link paths, and transmitting the sub-data streams to be transmitted after each of the target communication links is established, comprises:
when the current interconnected communication unit is the source interconnected communication unit and the source interconnected communication unit is in a communication state, a first target communication link is established according to the communication link identifier carried by the sub-data stream to be transmitted;
after the first target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a second target communication link when the intermediate interconnection communication unit is determined to be in a communication state;
after the second target communication link is established, transmitting the sub-data stream to be transmitted, and establishing a third target communication link when determining that the destination interconnected communication unit is in a communication state;
and after the third target communication link is established, transmitting the sub-data stream to be transmitted.
6. The method of claim 5, wherein after the transmitting the sub-data stream to be transmitted after the third target communication link is established, further comprising:
and according to the ending identification of the sub-data stream to be transmitted, determining that at least one target communication link is released when the current data stream to be transmitted finishes transmission.
7. A method according to claim 3, characterized in that the method further comprises:
and caching the sub-data stream to be transmitted when the sub-data stream to be transmitted reaches the output port of the target communication link.
8. A data streaming apparatus, comprising:
the device comprises a data stream to be transmitted acquisition module, a data stream to be transmitted acquisition module and a data transmission module, wherein the data stream to be transmitted is composed of at least one sub-data stream to be transmitted, the sub-data stream to be transmitted carries at least one identifier, and the identifier comprises at least one of a communication link identifier, a valid data identifier, a source port identifier, a destination port identifier, a first priority identifier, an end identifier and a start identifier;
a target communication link path determining module, configured to determine a target communication link path in an interconnection communication matrix according to the identifier carried by the sub-data stream to be transmitted, where the interconnection communication matrix includes at least two interconnection communication units, and the interconnection communication units are provided with at least one input port and at least one output port;
and the transmission module is used for establishing at least two target communication links in an interconnection communication matrix based on the target communication link paths and transmitting the sub-data streams to be transmitted after each target communication link is established, wherein the target communication links are determined according to two adjacent interconnection communication units.
9. An electronic device, comprising:
one or more processors;
storage means for storing one or more programs,
the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the data streaming method of any of claims 1-7.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the program, when being executed by a processor, implements the data streaming method according to any of claims 1 to 7.
CN202210667137.7A 2022-06-13 2022-06-13 Data stream transmission method, device, equipment and medium Active CN115225694B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210667137.7A CN115225694B (en) 2022-06-13 2022-06-13 Data stream transmission method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210667137.7A CN115225694B (en) 2022-06-13 2022-06-13 Data stream transmission method, device, equipment and medium

Publications (2)

Publication Number Publication Date
CN115225694A CN115225694A (en) 2022-10-21
CN115225694B true CN115225694B (en) 2023-12-12

Family

ID=83608732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210667137.7A Active CN115225694B (en) 2022-06-13 2022-06-13 Data stream transmission method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN115225694B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103973482A (en) * 2014-04-22 2014-08-06 南京航空航天大学 Fault-tolerant on-chip network system with global communication service management capability and method
CN105450555A (en) * 2014-09-26 2016-03-30 杭州华为数字技术有限公司 Network on chip system and establishment method of network on chip communication link
CN105721354A (en) * 2016-01-18 2016-06-29 云南磊奥明科技有限公司 Network-on-chip interconnection method and device
WO2020023797A1 (en) * 2018-07-26 2020-01-30 Xilinx, Inc. Unified address space for multiple hardware accelerators using dedicated low latency links
CN111475457A (en) * 2020-04-08 2020-07-31 苏州浪潮智能科技有限公司 Method, device and storage medium for determining data transmission path of network on chip

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103973482A (en) * 2014-04-22 2014-08-06 南京航空航天大学 Fault-tolerant on-chip network system with global communication service management capability and method
CN105450555A (en) * 2014-09-26 2016-03-30 杭州华为数字技术有限公司 Network on chip system and establishment method of network on chip communication link
CN105721354A (en) * 2016-01-18 2016-06-29 云南磊奥明科技有限公司 Network-on-chip interconnection method and device
WO2020023797A1 (en) * 2018-07-26 2020-01-30 Xilinx, Inc. Unified address space for multiple hardware accelerators using dedicated low latency links
CN111475457A (en) * 2020-04-08 2020-07-31 苏州浪潮智能科技有限公司 Method, device and storage medium for determining data transmission path of network on chip

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Mohammad Abdullah Al Faruque *
Thomas Ebi ; Jörg Henkel.AdNoC: Runtime Adaptive Network-on-Chip Architecture.《IEEE Transactions on Very Large Scale Integration (VLSI) Systems》.2010,全文. *
片上网络拓扑结构与通信方法研究;刘有耀;《中国博士学位论文全文数据库 (信息科技辑)》;全文 *

Also Published As

Publication number Publication date
CN115225694A (en) 2022-10-21

Similar Documents

Publication Publication Date Title
US11283718B2 (en) Hybrid network processing load distribution in computing systems
CN112965824B (en) Message forwarding method and device, storage medium and electronic equipment
US8756270B2 (en) Collective acceleration unit tree structure
CN107135268B (en) Distributed task computing method based on information center network
CN103532876A (en) Processing method and system of data stream
CN107769992B (en) Message parsing and shunting method and device
CN104468401A (en) Message processing method and device
CN1422473B (en) Method for defining and controlling the overall behavior of a network processor device
CN112929210B (en) Method and system for gateway routing application plug-in built on WebFlux framework and application of gateway routing application plug-in
CN108768667B (en) Method for inter-chip network communication of multi-core processor
US20180157514A1 (en) Network traffic management in computing systems
US20070253334A1 (en) Switch routing algorithm for improved congestion control & load balancing
CN115426312A (en) Method and device for managing, optimizing and forwarding identifiers in large-scale multi-modal network
Sun et al. Design and demonstration of high-throughput protocol oblivious packet forwarding to support software-defined vehicular networks
Agrawal et al. A performance comparison of algorithms for byzantine agreement in distributed systems
CN103888364A (en) Message shunting method and device
CN112866139A (en) Method, equipment and storage medium for realizing multi-rule flow classification
CN113094179B (en) Job allocation method, job allocation device, electronic equipment and readable storage medium
CN109412976B (en) Data transmission method, device, system, server, electronic device and medium
CN113965521A (en) Data packet transmission method, server and storage medium
CN115225694B (en) Data stream transmission method, device, equipment and medium
CN114490458B (en) Data transmission method, chip, server and storage medium
CN113395183B (en) Virtual node scheduling method and system for network simulation platform VLAN interconnection
WO2022037571A1 (en) Packet forwarding method and apparatus, and computer-readable storage medium
CN113126958B (en) Decision scheduling customization method and system based on information flow

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