A network-on-chip data transmission method, device, apparatus and storage medium

By collecting and predicting traffic data from on-chip network nodes in real time, a node array is generated to optimize the data transmission path, solving the problem of traditional routing nodes becoming a bottleneck and achieving efficient and reliable data transmission.

CN122120206APending Publication Date: 2026-05-29SHANDONG BOSUAN ZHIXIN INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHANDONG BOSUAN ZHIXIN INFORMATION TECHNOLOGY CO LTD
Filing Date
2026-04-10
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

In multi-source parallel transmission scenarios, the buffer resources and arbitration mechanisms of traditional routing nodes in on-chip networks can easily become performance bottlenecks, leading to increased packet transmission latency and decreased throughput, thus affecting the parallel processing performance of multi-core systems.

Method used

Real-time acquisition of traffic data from each routing node in the on-chip network; congestion prediction based on the current data to be transmitted and traffic data; generation of node array; and optimization of data transmission path.

Benefits of technology

By using real-time congestion prediction and path optimization, the efficiency and reliability of data transmission are improved, node-level congestion is avoided, and the parallel processing capability of multi-core systems is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122120206A_ABST
    Figure CN122120206A_ABST
Patent Text Reader

Abstract

The application discloses a network-on-chip data transmission method and device, equipment and storage medium, and relates to the technical field of data transmission, and comprises the following steps: collecting traffic data of each routing node in the network-on-chip in real time; based on current to-be-transmitted data and corresponding source routing node and target routing node, combining the traffic data, the congestion of each routing node is predicted to obtain a corresponding prediction result; a node array containing a plurality of node serial numbers is generated according to the prediction result; the order of the node serial numbers in the node array corresponds to the order of the routing nodes through which the current to-be-transmitted data is transmitted from the source routing node to the target routing node; and the current to-be-transmitted data is transmitted from the source routing node to the target routing node based on the node array. Thus, the congestion is predicted in combination with real-time traffic data, the appropriate routing node can be accurately selected for data transmission; and the transmission path of the data is represented in the form of an array, so that the efficiency and transmission reliability of the data transmission can be ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data transmission technology, and in particular to an on-chip network data transmission method, apparatus, device, and storage medium. Background Technology

[0002] Network-on-Chip (NoC) technology achieves modular design through standardized interfaces, enabling different functional units to interconnect flexibly like plug-and-play devices. However, this network architecture faces significant challenges when dealing with multi-source parallel transmission scenarios: when network nodes need to receive data streams from multiple parallel operation units simultaneously, the buffer resources and arbitration mechanisms of traditional routing nodes can easily become performance bottlenecks. This node-level congestion directly leads to increased packet transmission latency and decreased throughput, ultimately restricting the parallel processing performance of the entire multi-core system.

[0003] It is evident that optimizing the data transmission performance of on-chip networks is a problem that needs to be solved by those skilled in the art. Summary of the Invention

[0004] The objective of this invention is to provide an on-chip network data transmission method, apparatus, device, and storage medium that can solve the problem of performance limitations in on-chip network data transmission.

[0005] To address the aforementioned technical problems, in a first aspect, embodiments of the present invention provide an on-chip network data transmission method, comprising: Real-time acquisition of traffic data from each routing node in the on-chip network; Based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with the traffic data, the congestion status of each routing node is predicted to obtain the corresponding prediction results. A node array containing several node numbers is generated based on the prediction results; the order of the node numbers in the node array corresponds to the order of the routing nodes that the current data to be transmitted passes through from the source routing node to the target routing node. Based on the node array, the currently pending data is transmitted from the source routing node to the target routing node.

[0006] In some embodiments, the real-time acquisition of traffic data from each routing node in the on-chip network includes: The monitoring modules, which are set up in the on-chip network and correspond to each routing node, collect the traffic data of each routing node in real time.

[0007] In some embodiments, the step of predicting the congestion status of each routing node based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with the traffic data, to obtain the corresponding prediction results includes: Based on the traffic data and the preset performance indicators of each routing node, the current congestion state corresponding to each routing node is determined; Based on the current data to be transmitted and the corresponding source and destination routing nodes, and in conjunction with the current congestion status of each node, the congestion situation of each routing node during the transmission of the current data to be transmitted is predicted, and the corresponding prediction results are obtained.

[0008] In some embodiments, before predicting the congestion situation of each routing node during the transmission of the currently transmitted data, the method further includes: By combining the historical traffic data of each routing node, a congestion weight representing the probability of congestion is assigned to each routing node; Accordingly, the prediction of congestion status of each routing node during the transmission of the currently to-be-transmitted data, based on the current data to be transmitted, the corresponding source routing node, and the target routing node, and in conjunction with the current congestion status of each node, includes: Based on the current data to be transmitted and the corresponding source and destination routing nodes, and in conjunction with the current congestion status and the corresponding congestion weight, the congestion situation of each routing node during the transmission of the current data to be transmitted is predicted.

[0009] In some embodiments, if the traffic data indicates that the corresponding routing node is in a fault state, then assigning a congestion weight representing the congestion probability to each routing node by combining the historical traffic data of each routing node includes: The congestion weight of the routing node in the fault state is directly set to infinity; Alternatively, the routing nodes that are in the fault state can be ignored directly.

[0010] In some embodiments, generating a node array containing several node indices based on the prediction result includes: The routing nodes along the transmission paths from the source routing node to the target routing node of the current data to be transmitted are determined as intermediate nodes, thus obtaining several sets of intermediate nodes corresponding to the several transmission paths. Based on the prediction results, a target node with the smallest congestion weight is determined from several groups of intermediate nodes, and a node array is generated according to several node numbers and corresponding node order corresponding to the target node. The congestion weight is a value obtained by numerically quantifying the severity of congestion, and the congestion weight is directly proportional to the severity of congestion.

[0011] In some embodiments, transmitting the currently to-be-transmitted data from the source routing node to the target routing node based on the node array includes: The first value of the node array is used as the next transmission node corresponding to the current data to be transmitted. When transmitting the currently transmitted data to the transmission node, the first value of the node array is deleted, and the first value is re-determined in the node array after the first value is deleted, until the currently transmitted data is transmitted from the source routing node to the target routing node.

[0012] Secondly, embodiments of the present invention provide an on-chip network data transmission device, comprising: The traffic data acquisition module is used to collect traffic data from each routing node in the on-chip network in real time. The congestion prediction module is used to predict the congestion status of each routing node based on the current data to be transmitted and the corresponding source routing node and destination routing node, combined with the traffic data, and to obtain the corresponding prediction results. The node data generation module is used to generate a node array containing several node numbers based on the prediction result; the order of the node numbers in the node array corresponds to the order of the routing nodes that the current data to be transmitted passes through from the source routing node to the target routing node. The data transmission module is used to transmit the currently to be transmitted data from the source routing node to the target routing node based on the node array.

[0013] Thirdly, embodiments of the present invention provide an electronic device, including: Memory, used to store computer programs; A processor is used to execute the computer program to implement the steps of the on-chip network data transmission method described above.

[0014] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the on-chip network data transmission method described above.

[0015] As can be seen from the above technical solution, this application can collect traffic data of each routing node in the on-chip network in real time; then, based on the current data to be transmitted and the corresponding source and target routing nodes, combined with the traffic data, the congestion status of each routing node is predicted to obtain the corresponding prediction result; then, a node array containing several node numbers is generated according to the prediction result; the order of the node numbers in the node array corresponds to the order of the routing nodes traversed by the current data to be transmitted from the source routing node to the target routing node; then, the current data to be transmitted is transmitted from the source routing node to the target routing node based on the node array. In this way, this application combines real-time traffic data for congestion prediction, which can accurately select appropriate routing nodes for transmitting the current data to be transmitted; at the same time, the data transmission path is represented and data transmission is performed by using an array; thus, the efficiency and reliability of data transmission can be guaranteed. Attached Figure Description

[0016] To more clearly illustrate the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0017] Figure 1 A flowchart of an on-chip network data transmission method provided in an embodiment of the present invention; Figure 2 A flowchart illustrating a specific on-chip network data transmission method provided in this embodiment of the invention; Figure 3 An architecture diagram of an intelligent analysis module provided in an embodiment of the present invention; Figure 4 This is a schematic diagram of inter-node data transmission provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of an on-chip network data transmission device provided in an embodiment of the present invention; Figure 6 This is a structural diagram of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0018] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of the present invention.

[0019] The terms "comprising" and "having," and any variations thereof, in the specification and accompanying drawings of this invention are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may include steps or units not listed.

[0020] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0021] like Figure 1 As shown, this embodiment discloses an on-chip network data transmission method, including: Step S11: Collect traffic data of each routing node in the on-chip network in real time.

[0022] In this embodiment, to accurately assess the operating status of each routing node in the on-chip network, traffic data of each routing node can be collected in real time. Here, a routing node refers to a data transmission node in the on-chip network, representing a specific processor core. It is understood that by combining the traffic data of the routing nodes, their operating status and performance can be evaluated. For example, it can be assessed whether a routing node is abnormally damaged (traffic data over a period of time indicates that the node cannot transmit data normally) or is being used frequently. Furthermore, if the traffic data is very frequent, and the node is frequently used, it can be considered that it is prone to congestion and has low data transmission efficiency; while less traffic data can be considered that the node can transmit data efficiently.

[0023] In one specific embodiment, the real-time acquisition of traffic data from each routing node in the on-chip network is achieved through monitoring modules configured within the on-chip network, each corresponding to a specific routing node. Understandably, this real-time traffic data acquisition process involves pre-setting a monitoring module within each routing node. This monitoring module monitors the data traversed by the corresponding routing node, acquiring the relevant traffic data in real time. This data serves as the basis for subsequent predictions of congestion at the routing nodes.

[0024] Step S12: Based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with traffic data, predict the congestion status of each routing node and obtain the corresponding prediction results.

[0025] In this embodiment, the real-time traffic data of each routing node of the on-chip network can be obtained through the above steps. Then, based on the traffic data, combined with the current data to be transmitted and the source and destination routing nodes corresponding to the data transmission, the congestion status of each routing node can be predicted. Combining these data, the congestion status of each routing node when transmitting the current data to be transmitted can be accurately predicted. The prediction result specifically includes the congestion status of each routing node.

[0026] In one specific embodiment, based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with traffic data, the congestion status of each routing node is predicted to obtain the corresponding prediction results. Firstly, the current congestion state of each routing node can be determined based on traffic data and preset performance indicators of each routing node; that is, the current congestion status of each routing node is determined. Then, based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with the current congestion status, the congestion status of each routing node during the transmission of the current data to be transmitted is predicted, obtaining the corresponding prediction results. This combines the current congestion status of each routing node with the impact of the future transmission process of the current data to be transmitted on each routing node, obtaining a characterization of the congestion status of each routing node when participating in the transmission of the current data to be transmitted in the future.

[0027] Furthermore, in a specific embodiment, before predicting the congestion situation of each routing node during the transmission of currently pending data, congestion weights can be assigned to different routing nodes to balance the traffic pressure faced by the routing nodes during data transmission. Specifically, firstly, congestion weights representing the probability of congestion are assigned to each routing node based on its historical traffic data. Correspondingly, the process of predicting the congestion situation of each routing node during the transmission of currently pending data involves predicting the congestion situation of each routing node during the transmission of currently pending data based on the currently pending data, the corresponding source routing node, and the target routing node, combined with the current congestion status and the corresponding congestion weights. It can be seen that this embodiment can assign congestion weights to routing nodes based on their historical traffic data, representing the probability of congestion occurring in their working state; for example, a routing node with few data paths will have a low congestion weight, while a routing node with frequent data paths will have a slightly higher congestion weight. Then, the congestion situation during the transmission of currently pending data is predicted by combining the current congestion status and the corresponding congestion weights of the routing nodes. This allows for more accurate predictions of congestion at each routing node during data transmission.

[0028] In another specific embodiment, if the traffic data indicates that the corresponding routing node is in a fault state, then in the process of assigning a congestion weight representing the congestion probability to each routing node by combining the historical traffic data of each routing node, the congestion weight of the routing node in the fault state can be directly set to infinite; or the routing node in the fault state can be directly ignored; thus avoiding these fault nodes from affecting the accuracy of the subsequent congestion prediction results.

[0029] Step S13: Generate a node array containing several node numbers based on the prediction results; the order of the node numbers in the node array corresponds to the order of the routing nodes that the data to be transmitted passes through from the source routing node to the target routing node.

[0030] In this embodiment, the congestion situation of each routing node in the on-chip network when transmitting the data to be transmitted can be predicted through the above steps to obtain the corresponding prediction results; then, the transmission path when transmitting the data to be transmitted can be determined according to the prediction results, that is, the routing nodes and their corresponding order through which the data to be transmitted from the source routing node to the target routing node. In this way, a node array can be generated by combining the node number and order of several routing nodes.

[0031] Furthermore, in the process of generating a node array containing several node indices based on the prediction results, the routing nodes traversed by the current data to be transmitted from the source routing node to the target routing node are first identified as intermediate nodes, resulting in several groups of intermediate nodes corresponding to the several transmission paths. Then, based on the prediction results, the target node group with the smallest congestion weight is determined from these groups of intermediate nodes, and a node array is generated according to the node indices and corresponding node order of the target node. Here, the congestion weight is a value obtained by numerically quantifying the severity of congestion, and the congestion weight is directly proportional to the severity of congestion. Specifically, the consecutive routing nodes traversed by the current data to be transmitted from the source routing node to the target routing node constitute a transmission path; the routing nodes corresponding to the corresponding several transmission paths are recorded here as intermediate nodes, thus obtaining each group of intermediate nodes corresponding to each transmission path. Then, considering the congestion weights corresponding to each group of intermediate nodes, the group of intermediate nodes with the smallest congestion weight is selected as the target node; and the node order and node indices corresponding to this group of target nodes are arranged to generate a node array. It should be noted that the congestion weight of a group of intermediate nodes is a value calculated by adding the congestion weight of each routing node it contains. This congestion weight represents the congestion status of the transmission path corresponding to the group of intermediate nodes. The more severe the congestion, the larger the congestion weight.

[0032] Step S14: Based on the node array, transmit the data to be transmitted from the source routing node to the target routing node.

[0033] In this embodiment, the above steps can generate a node array representing the transmission path from the source routing node to the target routing node for transmitting the current data to be transmitted; then, the transmission of the current data to be transmitted can be realized according to the node number and order in the node array.

[0034] In one specific embodiment, during the process of transmitting the currently to-be-transmitted data from the source routing node to the target routing node based on the node array, the first value of the node array is first designated as the next transmission node corresponding to the currently to-be-transmitted data. Then, when transmitting the currently to-be-transmitted data to the transmission node, the first value of the node array is deleted, and a new first value is determined in the node array after the deletion, until the currently to-be-transmitted data is transmitted from the source routing node to the target routing node. Specifically, to ensure the security of data transmission during the data transmission process using the node array, the first value of the current node array can be determined as the next transmission node corresponding to the currently to-be-transmitted data (denoted as node A), meaning the currently to-be-transmitted data needs to be transmitted to node A corresponding to this first value. Furthermore, during this data transmission step, the first value needs to be deleted from the node array, i.e., the value corresponding to the previously used routing node A in the current node array is removed. It can be understood that the node array after deleting the first value corresponds to a new first value, which here corresponds to node B, meaning node B is the next transmission node corresponding to the currently to-be-transmitted data; the currently to-be-transmitted data needs to be transmitted from node A to node B. This process continues until all values ​​in the node array are deleted, thus completing the data transmission from the source routing node to the destination routing node. This ensures secure and reliable data transmission, guarantees consistency among routing nodes, and prevents data corruption or errors.

[0035] Therefore, this application combines real-time traffic data for congestion prediction, sets up a monitoring module at each routing node to collect node traffic in real time, providing accurate data to ensure the accuracy of subsequent congestion prediction. Then, based on the congestion prediction, a suitable routing node can be selected to transmit the data to be transmitted. Simultaneously, the data transmission path is represented by an array for data transmission, ensuring the accuracy of the direction and order of data transmission, guaranteeing coordination and consistency among routing nodes, and avoiding data transmission chaos or errors. It can be seen that through the above technical steps, this application can optimize the rationality of the selected routing nodes during data transmission, as well as the efficiency and reliability of data transmission.

[0036] like Figure 2As shown, this embodiment discloses an on-chip network data transmission method, involving routing nodes, a monitoring system (i.e., monitoring modules corresponding to each route), a machine learning module, a traffic analysis module, a route selection module, and a node selection module. Data is generated from the source node, passes through the current node, and is output to the next node. During this process, each routing node has a monitoring system that monitors traffic data and performance indicators in real time. The data is transmitted to the intelligent analysis module through the monitoring system, and finally output as a node array, which includes the sequence numbers of all next nodes. Data is transmitted back to the node through the intelligent analysis module, and the node selection module selects the value of a next node as the data output direction based on the data in the node array. Specifically, it includes: It should be noted that a routing node refers to a data transmission node, representing a specific processor core; the monitoring system is a monitoring module set up inside each routing node. This module monitors the data input to each routing node, collecting real-time traffic data (such as performance indicators and traffic load, etc.) as the data basis for the machine learning and traffic analysis modules; the machine learning module analyzes the traffic and performance data of each node provided by the monitoring system, analyzing the performance of each node, whether a node is abnormally damaged, or whether a node is used at high frequency; the traffic analysis module, based on the learning results of the machine learning module, judges the traffic trend (predicting congestion) generated by a data transmission between nodes using a certain transmission line (corresponding to several routing nodes), and can determine whether a node or a certain line has a traffic peak and which line is not congested; the routing selection module, based on the conclusions (i.e., prediction results) obtained by the traffic analysis module, selects the least congested line for data transmission, generating an array of node indices for the path (i.e., a node array). In a specific embodiment, the routing module has a FIFO (First Input First Output) queue. Data can only be written into the FIFO when it is empty; that is, an array of node indices for the generated path is written into the FIFO. Furthermore, the node selection module selects the next node indices to which the current node data will be transmitted, based on the result (node ​​array) generated by the routing module.

[0037] Furthermore, such as Figure 2The diagram shows the architecture of the intelligent analysis module. Data is transmitted from the monitoring module within each node to the machine learning module within the intelligent analysis module. This module analyzes the traffic data provided by the monitoring module to determine the working status of each node, identifying whether a node is abnormally damaged or frequently used. For example, if the monitoring module observes very frequent traffic to a node, that node will be marked as a congested node. If a node takes longer to process a data segment than other nodes, or if it cannot properly input or output data, it will be marked as a faulty node by the machine learning module. Simultaneously, the machine learning module calculates weights for the congestion levels of different nodes based on the collected data. For instance, a node with very frequent traffic paths will have a higher congestion weight, while a node with few data paths will have a low congestion weight. Faulty nodes, on the other hand, will have an infinitely high congestion weight, informing subsequent modules that faulty nodes should not be used for data transmission. Then, based on the conclusions from the machine learning module, the traffic analysis module determines the traffic trend that a particular data transmission between nodes would generate using a specific line. It can identify traffic peaks at certain nodes or on certain lines and calculates the congestion weight of each line by summing the congestion weights of the nodes. Simultaneously, the traffic analysis module avoids using lines from faulty nodes. The routing module, based on the conclusions from the traffic analysis module, selects the line with the lowest congestion weight from among multiple lines as the final output; the output is an array of node indices.

[0038] Furthermore, such as Figure 4 This diagram illustrates node data transmission. The source routing node is node 0, and the destination routing node is node 15. The intelligent analysis module ultimately determines the least congested route, as shown by the dotted line in the diagram. The routing module outputs a node array [1, 5, 6, 10, 14, 15]. The node selection module chooses the first value in this array as the next output node for data transmission. Since the current node is node 0, the next node will be node 1, meaning the routing module will output "East" and delete the first value from the array. This node array follows a first-in, first-out (FIFO) approach; after data is transmitted to node 1, the value 1 is deleted from the array. Understandably, when data reaches node 1, the current node becomes node 1. At this point, the current node is not the source routing node, and the FIFO contains data that is not empty. The routing module cannot modify the result; therefore, the next node continues to select the current first value, 5, from the array and deletes 5 from the FIFO. This process continues until the data reaches the destination node 15.

[0039] It should be noted that the technical solution of this application can be applied not only to node routing in on-chip networks but also to communication networks between servers within a data center. Furthermore, the on-chip network can adopt a two-dimensional network topology and, without changing the on-chip network architecture, can monitor and analyze the traffic data and congestion status of each node in real time, and automatically adjust the data output direction accordingly. This allows the data transmission path to be dynamically adjusted according to the actual network operation, effectively avoiding congested nodes and lines, greatly improving the efficiency and reliability of data transmission. In other words, the technical solution of this application does not require changes to the hardware architecture, has greater flexibility and adaptability, and can better cope with congestion phenomena during multi-core parallel data transmission.

[0040] Therefore, this application combines real-time traffic data for congestion prediction and machine learning to accurately determine the traffic trend of data transmission between nodes, predicting potential traffic peaks in advance and selecting the optimal transmission path accordingly. This prediction-based path planning method, compared to traditional fixed routing strategies, can more effectively avoid congestion and ensure efficient data transmission. Furthermore, by continuously optimizing the machine learning model and algorithm, the routing selection effect can be further improved, making it better suited to the development needs of future high-performance processors. Moreover, by representing the data transmission path using an array and transmitting data, the accuracy of the direction and order of data transmission is ensured, guaranteeing coordination and consistency among routing nodes and avoiding data transmission chaos or errors. It can be seen that through the above technical steps, this application can optimize the rationality of the selected routing nodes during data transmission, as well as the efficiency and reliability of data transmission.

[0041] like Figure 5 As shown, this embodiment discloses an on-chip network data transmission device, including: Traffic data acquisition module 11 is used to collect traffic data of each routing node in the on-chip network in real time; The congestion prediction module 12 is used to predict the congestion status of each routing node based on the current data to be transmitted and the corresponding source routing node and destination routing node, combined with the traffic data, and to obtain the corresponding prediction results. The node data generation module 13 is used to generate a node array containing several node numbers based on the prediction result; the order of the node numbers in the node array corresponds to the order of the routing nodes that the current data to be transmitted passes through from the source routing node to the target routing node. The data transmission module 14 is used to transmit the currently to be transmitted data from the source routing node to the target routing node based on the node array.

[0042] Therefore, this application combines real-time traffic data for congestion prediction, which can accurately select appropriate routing nodes to transmit the data to be transmitted; at the same time, it uses an array to represent the data transmission path and transmit the data; thus, it can ensure the efficiency and reliability of data transmission.

[0043] Furthermore, embodiments of this application also disclose an electronic device, Figure 6 This is a structural diagram of an electronic device according to an exemplary embodiment. The content of the diagram should not be construed as limiting the scope of this application. Specifically, the electronic device may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 stores a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the on-chip network data transmission method disclosed in any of the foregoing embodiments. Furthermore, the electronic device in this embodiment may specifically be an electronic computer.

[0044] In this embodiment, the power supply 23 is used to provide operating voltage for various hardware devices on the electronic device; the communication interface 24 can create a data transmission channel between the electronic device and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.

[0045] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored thereon can include operating system 221, computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0046] The operating system 221 is used to manage and control the various hardware devices on the electronic device and the computer program 222, which may be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program capable of performing the on-chip network data transmission method executed by the electronic device as disclosed in any of the foregoing embodiments, the computer program 222 may further include a computer program capable of performing other specific tasks.

[0047] Furthermore, this application also discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the aforementioned disclosed on-chip network data transmission method. Specific steps of this method can be found in the corresponding content disclosed in the foregoing embodiments, and will not be repeated here.

[0048] Furthermore, this application also discloses a computer program product, including a computer program / instructions that, when executed by a processor, implement the aforementioned disclosed on-chip network data transmission method.

[0049] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.

[0050] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0051] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0052] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0053] The technical solutions provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only intended to help understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method for on-chip network data transmission, characterized in that, include: Real-time acquisition of traffic data from each routing node in the on-chip network; Based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with the traffic data, the congestion status of each routing node is predicted to obtain the corresponding prediction results. A node array containing several node numbers is generated based on the prediction results; the order of the node numbers in the node array corresponds to the order of the routing nodes that the current data to be transmitted passes through from the source routing node to the target routing node. Based on the node array, the currently pending data is transmitted from the source routing node to the target routing node.

2. The on-chip network data transmission method according to claim 1, characterized in that, The real-time acquisition of traffic data from each routing node in the on-chip network includes: The monitoring modules, which are set up in the on-chip network and correspond to each routing node, collect the traffic data of each routing node in real time.

3. The on-chip network data transmission method according to claim 1, characterized in that, Based on the current data to be transmitted and the corresponding source and destination routing nodes, combined with the traffic data, the congestion status of each routing node is predicted to obtain the corresponding prediction results, including: Based on the traffic data and the preset performance indicators of each routing node, the current congestion state corresponding to each routing node is determined; Based on the current data to be transmitted and the corresponding source and destination routing nodes, and in conjunction with the current congestion status of each node, the congestion situation of each routing node during the transmission of the current data to be transmitted is predicted, and the corresponding prediction results are obtained.

4. The on-chip network data transmission method according to claim 3, characterized in that, Before predicting the congestion situation of each routing node during the transmission of the currently pending data, the method further includes: By combining the historical traffic data of each routing node, a congestion weight representing the probability of congestion is assigned to each routing node; Accordingly, the prediction of congestion status of each routing node during the transmission of the currently to-be-transmitted data, based on the current data to be transmitted, the corresponding source routing node, and the target routing node, and in conjunction with the current congestion status of each node, includes: Based on the current data to be transmitted and the corresponding source and destination routing nodes, and in conjunction with the current congestion status and the corresponding congestion weight, the congestion situation of each routing node during the transmission of the current data to be transmitted is predicted.

5. The on-chip network data transmission method according to claim 4, characterized in that, If the traffic data indicates that the corresponding routing node is in a fault state, then assigning a congestion weight representing the congestion probability to each routing node by combining the historical traffic data of each routing node includes: The congestion weight of the routing node in the fault state is directly set to infinity; Alternatively, the routing nodes that are in the fault state can be ignored directly.

6. The on-chip network data transmission method according to claim 1, characterized in that, The step of generating a node array containing several node indices based on the prediction result includes: The routing nodes along the transmission paths from the source routing node to the target routing node of the current data to be transmitted are determined as intermediate nodes, thus obtaining several sets of intermediate nodes corresponding to the several transmission paths. Based on the prediction results, a target node with the smallest congestion weight is determined from several groups of intermediate nodes, and a node array is generated according to several node numbers and corresponding node order corresponding to the target node. The congestion weight is a value obtained by numerically quantifying the severity of congestion, and the congestion weight is directly proportional to the severity of congestion.

7. The on-chip network data transmission method according to claim 1, characterized in that, The step of transmitting the currently to-be-transmitted data from the source routing node to the target routing node based on the node array includes: The first value of the node array is used as the next transmission node corresponding to the current data to be transmitted. When transmitting the currently transmitted data to the transmission node, the first value of the node array is deleted, and the first value is re-determined in the node array after the first value is deleted, until the currently transmitted data is transmitted from the source routing node to the target routing node.

8. An on-chip network data transmission device, characterized in that, include: The traffic data acquisition module is used to collect traffic data from each routing node in the on-chip network in real time. The congestion prediction module is used to predict the congestion status of each routing node based on the current data to be transmitted and the corresponding source routing node and destination routing node, combined with the traffic data, and to obtain the corresponding prediction results. The node data generation module is used to generate a node array containing several node numbers based on the prediction result; the order of the node numbers in the node array corresponds to the order of the routing nodes that the current data to be transmitted passes through from the source routing node to the target routing node. The data transmission module is used to transmit the currently to be transmitted data from the source routing node to the target routing node based on the node array.

9. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program to implement the steps of the on-chip network data transmission method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the on-chip network data transmission method as described in any one of claims 1 to 7.