Path generation method, apparatus and electronic device

By generating a hybrid network structure that combines Crossbar and Mesh networks, the grouping and connection of routing nodes are optimized, solving the problem of low on-chip network communication efficiency and achieving more efficient communication path selection.

CN115865784BActive Publication Date: 2025-10-21AXERA TECH (BEIJING) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211471812.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-23
Publication Date
2025-10-21
Estimated Expiration
2042-11-23

AI Technical Summary

Technical Problem

Existing on-chip network architectures suffer from inefficiencies in communication, especially in multiprocessor systems. The choice of network architecture can affect network performance parameters such as latency, throughput, energy consumption, and scalability.

Method used

By generating a hybrid network structure that combines Crossbar and Mesh network structures, the grouping and connection methods of routing nodes are optimized to improve communication efficiency.

Benefits of technology

It effectively determines the optimal access path between the master device node and the slave device node, improves communication transmission efficiency, and reduces the complexity of the network structure and communication latency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115865784B_ABST
    Figure CN115865784B_ABST
Patent Text Reader

Abstract

The present disclosure provides a path generation method, device and electronic equipment, wherein the method comprises: generating a hybrid network structure according to a plurality of master device nodes, a plurality of slave device nodes and a plurality of routing nodes; for a target master device node in the plurality of master device nodes, determining a target slave device node to be accessed by the target master device node from the plurality of slave device nodes; determining at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node; and determining an access path between the target master device node and the target slave device node according to the at least one target routing node, thereby avoiding the low communication transmission efficiency caused by the network structure, effectively determining the optimal access path between the target master device node and the target slave device node, and improving the communication transmission efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a path generation method, device, and electronic device. Background Art

[0002] With the exponential growth of data traffic and the rapid development of smart devices, networks are becoming increasingly complex and diverse, requiring consideration of a wider range of factors, including stability, security, bandwidth, latency, and load. Therefore, as chip multiprocessor capabilities continue to increase, the communication efficiency of on-chip networks is crucial to overall performance. To improve communication efficiency, when a master device accesses a slave device to transmit information, the optimal access path within the network architecture must be determined for data transmission. Therefore, determining access paths within the network architecture is crucial. Summary of the Invention

[0003] The present disclosure aims to solve one of the technical problems in the related art at least to a certain extent.

[0004] To this end, the present disclosure proposes a path generation method, device and electronic device, which can generate a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes, thereby avoiding the low communication transmission efficiency caused by the network structure. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure, so that according to the at least one target routing node, the optimal access path between the target master device node and the target slave device node can be effectively determined, thereby improving the communication transmission efficiency.

[0005] According to a first aspect of the present disclosure, a path generation method is provided, comprising: generating a hybrid network structure based on a plurality of master device nodes, a plurality of slave device nodes, and a plurality of routing nodes; determining, for a target master device node among the plurality of master device nodes, a target slave device node to be accessed by the target master device node from the plurality of slave device nodes; determining, from the hybrid network structure, at least one target routing node based on the target master device node and the target slave device node; and determining, based on the at least one target routing node, an access path between the target master device node and the target slave device node.

[0006] According to a second aspect of an embodiment of the present disclosure, a path generation device is provided, comprising: a generation module for generating a hybrid network structure based on a plurality of master device nodes, a plurality of slave device nodes, and a plurality of routing nodes; a first determination module for determining, for a target master device node among the plurality of master device nodes, a target slave device node to be accessed by the target master device node from the plurality of slave device nodes; a second determination module for determining, from the hybrid network structure, at least one target routing node based on the target master device node and the target slave device node; and a third determination module for determining, based on the at least one target routing node, an access path between the target master device node and the target slave device node.

[0007] According to a third aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the path generation method proposed in the embodiment of the first aspect of the present disclosure.

[0008] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided. When instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the path generation method proposed in the embodiment of the first aspect of the present disclosure.

[0009] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program. When the computer program is executed by a processor of an electronic device, the electronic device is enabled to execute the path generation method proposed in the embodiment of the first aspect.

[0010] The technical solution disclosed in the present invention generates a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; for a target master device node among the multiple master device nodes, determines a target slave device node to be accessed by the target master device node from multiple slave device nodes; determines at least one target routing node from the hybrid network structure based on the target master device node and the target slave device node; and determines an access path between the target master device node and the target slave device node based on the at least one target routing node. Thus, by generating a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes, the low communication transmission efficiency caused by the network structure can be avoided. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure, so that the optimal access path between the target master device node and the target slave device node can be effectively determined based on the at least one target routing node, thereby improving the communication transmission efficiency.

[0011] Additional aspects and advantages of the present disclosure will be given in part in the following description and in part will be obvious from the following description, or will be learned through practice of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The above and / or additional aspects and advantages of the present disclosure will become apparent and readily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:

[0013] Figure 1 is a schematic diagram of a crossbar switch network structure according to an exemplary embodiment;

[0014] Figure 2 is a schematic diagram of a grid structure according to an exemplary embodiment;

[0015] Figure 3 is a flowchart of a path generation method according to an exemplary embodiment;

[0016] Figure 4 is a flowchart of another path generation method according to an exemplary embodiment;

[0017] Figure 5 is a flowchart of another path generation method according to an exemplary embodiment;

[0018] Figure 6 is a flowchart of another path generation method according to an exemplary embodiment;

[0019] Figure 7 is a flowchart of a path generation method according to an exemplary embodiment;

[0020] Figure 8 is a structural diagram of a path generating device according to an exemplary embodiment;

[0021] Figure 9 The figure is a block diagram of an electronic device for generating a path according to an exemplary embodiment. DETAILED DESCRIPTION

[0022] The following describes in detail embodiments of the present disclosure, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present disclosure, and should not be construed as limiting the present disclosure.

[0023] The network architecture of a network-on-chip (NoC) defines the physical layout of the network's modules and their connections on the chip. The choice of network architecture directly impacts the network's node degree, diameter, and scale, thus influencing latency, throughput, energy consumption, area, and fault tolerance, ultimately significantly impacting network performance parameters.

[0024] Currently, NoC research usually involves the following network structures: crossbar and mesh. Figure 1 As shown, Crossbar is a fully connected structure where each node is directly connected to other nodes. Its advantages are low latency, high bandwidth efficiency, and simple structure. However, it has poor scalability and the implementation cost is O(N 2 ), especially when there are many nodes, the power consumption and area are large, the congestion problem is serious, and the back-end is difficult to implement. Figure 2 As shown in Figure 2, Mesh typically has a two-dimensional topology. Each routing node corresponds to a computing node, and each routing node is connected to four surrounding nodes, forming a two-dimensional network structure with multiple paths from each node to another. Its advantages include good scalability, easy backend implementation, and an implementation cost of O(sqrt(N)). However, it has higher latency and lower bandwidth efficiency than Crossbar.

[0025] To address the above problems, the present disclosure provides a path generation method, device, and electronic device.

[0026] The following describes in detail a path generation method, device, electronic device, and storage medium provided by the present disclosure in conjunction with the accompanying drawings.

[0027] Figure 3 This is a flow chart illustrating a path generation method according to an exemplary embodiment. It should be noted that this path generation method can be applied to a path generation device. The path generation device can be, for example, a hardware device connected to a chip via a bus, a controller within the hardware device, or control software within the hardware device. The device can be configured as needed and is not limited in this disclosure.

[0028] like Figure 3 As shown, the path generation method includes the following steps:

[0029] Step 301: Generate a hybrid network structure based on multiple master device nodes, multiple slave device nodes, and multiple routing nodes.

[0030] In the embodiment of the present disclosure, the plurality of master nodes, the plurality of slave nodes, and the plurality of routing nodes may be pre-set. To avoid communication conflicts, the number of slave nodes may be greater than or equal to the number of master nodes. For example, the number of master nodes may be 16, and the number of slave nodes may be greater than or equal to 16.

[0031] It should be noted that, in order to improve communication efficiency and avoid the problem of low communication efficiency caused by the network structure, a hybrid network structure can be generated based on multiple master device nodes, multiple slave device nodes, and multiple routing nodes. It should be noted that the number of routing nodes can be determined based on the number of master device nodes, the number of slave device nodes, and the hybrid network structure to be generated. For example, the number of master device nodes can be 16, the number of slave device nodes can be 16, and the number of routing nodes can be set to 32, where the 16 routing nodes and the 16 master device nodes generate a first network structure, and the 16 routing nodes and the 16 slave device nodes generate a second network structure. Based on the first network structure and the second network structure, a hybrid network structure is generated.

[0032] Step 302 : For a target master node among the multiple master nodes, determine a target slave node to be accessed by the target master node from among the multiple slave nodes.

[0033] In order to achieve data communication between the master device node and the slave device node, the master device node can access the slave device node, wherein the master device node that needs to access the slave device node is the target master device node, and the slave device node to be accessed is the target slave device node.

[0034] Step 303: Determine at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node.

[0035] In order to improve communication efficiency, in the embodiment of the present disclosure, based on the target master device node and the target slave device node, at least one target routing node through which the target master device node accesses the target slave device node can be determined from the hybrid network structure.

[0036] Step 304: Determine an access path between a target master device node and a target slave device node according to at least one target routing node.

[0037] Furthermore, based on at least one target routing node that the master node passes through to access the target slave node, an access path for the target master node to access the target slave node can be determined. It should be noted that the access path for the target master node to access the target slave node can be the shortest access path.

[0038] In summary, a hybrid network structure is generated based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; for a target master device node among the multiple master device nodes, a target slave device node to be accessed by the target master device node is determined from multiple slave device nodes; based on the target master device node and the target slave device node, at least one target routing node is determined from the hybrid network structure; based on the at least one target routing node, an access path between the target master device node and the target slave device node is determined. Thus, by generating a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes, the low communication transmission efficiency caused by the network structure can be avoided. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure, so that based on the at least one target routing node, the optimal access path between the target master device node and the target slave device node can be effectively determined, thereby improving the communication transmission efficiency.

[0039] In order to improve communication efficiency and avoid the problem of low communication efficiency caused by the network structure, a hybrid network structure can be generated based on multiple master device nodes, multiple slave device nodes and multiple routing nodes, such as Figure 4 As shown, Figure 4 This is a flow chart of another path generation method according to an exemplary embodiment. In the disclosed embodiment, a master device node and a first routing node among the routing nodes may be used to generate a first network structure, and a slave device node and a second routing node among the routing nodes may be used to generate a second network structure. Furthermore, the first network and the second network may be connected to generate a hybrid network structure. Figure 4 The illustrated embodiment may include the following steps:

[0040] Step 401: Generate a first network structure based on multiple master device nodes and a first routing node among multiple routing nodes that matches the multiple master device nodes.

[0041] In order to improve the scalability of the network structure and reduce the implementation cost, multiple master device nodes and a first routing node among multiple routing nodes can be used to generate a first network structure, and multiple slave device nodes and a second routing node among multiple routing nodes can be used to generate a second network structure, wherein the first network structure and the second network structure can be the same network structure, for example, the first network structure and the second network structure can be Mesh network structures.

[0042] It should be noted that the present disclosure only uses the first network structure and the second network structure as the same network structure for illustrative purposes. The first network structure and the second network structure may also be different network structures, and the present disclosure does not make any specific limitations.

[0043] In order to avoid communication conflicts and improve communication efficiency, as a possible implementation method of the embodiment of the present disclosure, multiple master device nodes can be sorted to obtain an arrangement order of the multiple master device nodes; according to the arrangement order of the multiple master device nodes, a first routing node matching each master device node in the multiple master device nodes is determined from multiple routing nodes; according to a set number of nodes, the first routing nodes corresponding to the multiple master device nodes are grouped to obtain multiple first groups; and a first network structure is created based on the first routing node in any first group in the multiple first groups and the master device node corresponding to the first routing node in any first group.

[0044] That is to say, the device identification information of multiple master devices (such as the device number) can be obtained first, and then the multiple master device nodes can be sorted according to the identification information of the multiple master devices, and the first routing node that matches the sorted multiple master device nodes can be selected from the multiple routing nodes. Then, the first routing nodes that match the multiple master device nodes are grouped to obtain multiple first groups. The number of nodes in each first group can be the same, and a first network structure is created for the first routing nodes and master device nodes in each first group.

[0045] For example, the number of master devices is 16, and the 16 master devices are m0 to m15. The number of first routing nodes that match the sorted master device nodes is 16. The 16 routing nodes are divided into 4 groups, each group includes 4 routing nodes, and the 4 routing nodes in each group and the corresponding 4 master device nodes form a Mesh network.

[0046] Step 402: Generate a second network structure based on the multiple slave device nodes and the second routing nodes among the multiple routing nodes that match the multiple slave device nodes.

[0047] In order to avoid communication conflicts and improve communication efficiency, as a possible implementation method of the embodiment of the present disclosure, a second routing node that matches each slave device node in a plurality of slave device nodes is determined from a plurality of routing nodes; the second routing nodes corresponding to the plurality of slave device nodes are grouped according to the number of nodes to obtain a plurality of second groups; and a second network structure is created based on the second routing nodes in any second group in the plurality of second groups and the slave device nodes corresponding to the second routing nodes in any second group.

[0048] That is to say, multiple slave device nodes can be randomly arranged in disorder, and second routing nodes that match the multiple slave device nodes after the random arrangement can be selected from multiple routing nodes. Then, the second routing nodes that match the multiple slave device nodes can be grouped to obtain multiple second groups. The number of nodes in each second group can be the same, and a second network structure is created for the second routing nodes and slave device nodes in each second group.

[0049] For example, the number of slave device nodes is 16, and the 16 slave device nodes are 0 to 15. The number of second routing nodes that match the master device nodes after disordered arrangement is 16. The 16 routing nodes are divided into 4 groups, each group includes 4 routing nodes, and the 4 routing nodes in each group and the corresponding 4 slave device nodes form a Mesh network.

[0050] Step 403: Connect the first network structure and the second network structure to generate a hybrid network structure.

[0051] In order to reduce the complexity and communication delay of the network structure and improve the communication efficiency of the network structure, the first network structure and the second network structure can be connected to generate a hybrid network structure. For example, the first network structure and the second network structure are Mesh network structures, and the first network structure and the second network structure can be interconnected using a CrossBar structure.

[0052] As another example, multiple routing nodes are grouped to obtain multiple third groups, wherein each of the multiple third groups includes multiple routing nodes, the multiple routing nodes in each third group are connected using a third network structure, and the multiple third groups are connected using a fourth network structure; multiple master device nodes and the multiple slave device nodes are connected through the third network structure and the fourth network structure to generate a hybrid network structure.

[0053] For example, the number of routing nodes is S, and the S routing nodes can be divided into N groups, wherein each group can contain Qi routing nodes, wherein i is a positive integer not greater than N, and the Qi routing nodes can be connected by a third network structure (such as Mesh), and the N groups of routing nodes can be connected by a fourth network structure (such as Crossbar). It should be noted that the S routing nodes can be divided evenly or not evenly when divided into N groups, and this disclosure does not make specific limitations. When the S routing nodes are evenly divided into N groups, each group contains the same number of routing nodes, that is, Q1=Q2=Q3=..=QN. When the S routing nodes are not evenly divided into N groups, the number of routing nodes contained in each group may be different. Step 404, for the target master device node among the multiple master device nodes, determine the target slave device node to be accessed by the target master device node from the multiple slave device nodes.

[0054] Step 405: Determine at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node.

[0055] Step 406: Determine an access path between a target master device node and a target slave device node according to the at least one target routing node.

[0056] It should be noted that the execution process of steps 404 to 406 can be implemented in any of the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.

[0057] In summary, a first network structure is generated based on multiple master device nodes and a first routing node among multiple routing nodes that matches the multiple master device nodes; a second network structure is generated based on multiple slave device nodes and a second routing node among multiple routing nodes that matches the multiple slave device nodes; the first network structure and the second network structure are connected to generate a hybrid network structure. Thus, by generating the first network structure based on multiple master device nodes and a first routing node that matches the multiple master device nodes, and generating the second network structure based on multiple slave device nodes and a second routing node that matches the multiple slave device nodes, the scalability of the network structure can be improved and the implementation cost can be reduced. Furthermore, by connecting the first network structure and the second network structure to generate a hybrid network structure, the complexity and communication delay of the network structure can be reduced, and the communication efficiency of the network structure can be improved.

[0058] In order to reduce the complexity of the network structure and communication delay, and improve the communication efficiency of the network structure, such as Figure 5 As shown, Figure 5This is a flow chart of another path generation method according to an exemplary embodiment. In the disclosed embodiment, the first network structure and the second network structure can be connected to generate a hybrid network structure based on the number of first groups, the number of routing nodes in each first group, the number of second groups, and the number of routing nodes in each second group. Figure 5 The illustrated embodiment may include the following steps:

[0059] Step 501: Generate a first network structure based on multiple master device nodes and a first routing node among multiple routing nodes that matches the multiple master device nodes.

[0060] Step 502: Generate a second network structure based on the multiple slave device nodes and the second routing nodes among the multiple routing nodes that match the multiple slave device nodes.

[0061] Step 503: Obtain the jth first routing node of the ith first group in the plurality of first groups corresponding to the plurality of first network structures and the ith second routing node of the jth second group in the plurality of second groups corresponding to the plurality of second network structures.

[0062] In order to avoid communication congestion, when connecting the first network structure with the second network structure, different routing nodes in each of the multiple first groups corresponding to the first network structure can be connected to the multiple second groups corresponding to the second network structure. As an example, the j-th first routing node of the i-th first group in the multiple first groups corresponding to the multiple first network structures can be obtained, and the i-th second routing node of the j-th second group in the multiple second groups corresponding to the multiple second network structures can be obtained at the same time.

[0063] Step 504: Connect the jth first routing node of the i-th first group with the i-th second routing node of the j-th second group to obtain a hybrid network structure.

[0064] Furthermore, the j-th first routing node of the i-th first group is connected to the i-th second routing node of the j-th second group to obtain a hybrid network structure.

[0065] For example, the first network structure and the second network structure are Mesh network structures, and the hybrid network structure to be generated is a Crossbar network structure. The number of first groups corresponding to the first network structure is 4, and the number of first routing nodes in each first group is 4. The number of second groups corresponding to the second network structure is 4, and the number of second routing nodes in each second group is 4. The first first routing node in the first first group is connected to the first second routing node in the first second group, the second first routing node in the first first group is connected to the first second routing node in the second second group, the third first routing node in the first first group is connected to the first second routing node in the third second group, and so on. The jth first routing node of the ith first group is connected to the ith second routing node of the jth second group to obtain a hybrid network structure.

[0066] Step 505 : For a target master node among the multiple master nodes, determine a target slave node to be accessed by the target master node from among the multiple slave nodes.

[0067] Step 506: Determine at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node.

[0068] Step 507: Determine an access path between a target master device node and a target slave device node according to at least one target routing node.

[0069] It should be noted that the execution process of steps 501 to 502 and steps 505 to 507 can be implemented in any way in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.

[0070] In summary, by obtaining the j-th first routing node of the ith first group in multiple first groups corresponding to multiple first network structures and the i-th second routing node of the j-th second group in multiple second groups corresponding to multiple second network structures; connecting the j-th first routing node of the ith first group with the i-th second routing node of the j-th second group to obtain a hybrid network structure, thereby connecting different routing nodes in each first group in the multiple first groups corresponding to the first network structure with different routing nodes in each second group in the multiple second groups corresponding to the second network structure to generate a hybrid network structure, which can reduce the complexity and communication delay of the network structure and improve the communication efficiency of the network structure.

[0071] In order to accurately determine the path for the target master device node to access the target slave device node, such as Figure 6 As shown, Figure 6This is a flow chart of another path generation method according to an exemplary embodiment. In the disclosed embodiment, a routing node that a target master device node passes through to access a target slave device node can be determined from the first group and the second group, and the passed routing node is used as the target routing node. Figure 6 The illustrated embodiment may include the following steps:

[0072] Step 601: Generate a hybrid network structure based on multiple master device nodes, multiple slave device nodes, and multiple routing nodes.

[0073] Step 602 : For a target master node among the multiple master nodes, determine a target slave node to be accessed by the target master node from among the multiple slave nodes.

[0074] Step 603: Determine the first target group where the first routing node connected to the target master device node is located.

[0075] In an embodiment of the present disclosure, a first routing node connected to a target master device node may be obtained, and a first group where the first routing node is located may be determined, and the first group where the first routing node is located may be used as a first target group.

[0076] Step 604: Determine the second target group where the second routing node to which the target slave device node is connected is located.

[0077] Similarly, a second routing node connected to the target slave device node can be obtained, and the second group where the second routing node is located can be determined, and the second group where the second routing node is located can be used as the second target group.

[0078] Step 605: Determine, in the first target group, a third routing node connected to the second target group.

[0079] In the embodiment of the present disclosure, according to the hybrid network structure, a routing node connected to the second target group can be determined in the first target group, and the routing node can be used as the third routing node.

[0080] Step 606: Determine, in the second target group, a fourth routing node connected to the first target group.

[0081] Similarly, according to the hybrid network structure, a routing node connected to the first target group can be determined in the second target group, and the routing node can be used as the fourth routing node.

[0082] Step 607: Determine the target routing node according to the target master device node, the target slave device node, the third routing node, and the fourth routing node.

[0083] In order to accurately determine the target routing node, it can be determined whether the target master device node is directly connected to the third routing node, and whether the target slave device node is directly connected to the fourth routing node, that is, whether the target master device node and the third routing node are also connected through other routing nodes, and whether the target slave device node and the fourth routing node are also connected through other routing nodes.

[0084] As a possible implementation method of an embodiment of the present disclosure, it is possible to determine whether there is at least one first associated routing node between the target master device node and the third routing node based on the device identification between the master device node connected to the third routing node and the target master device node, wherein the first associated routing node is used to connect the target master device node and the third routing node. At the same time, the position of the routing node connected to the target slave device node in the second target group can be determined, and the position can be compared with the position of the fourth routing node in the second target group to determine whether there is at least one second associated routing node between the target slave device node and the fourth routing node, wherein the second associated routing node is used to connect the target slave device node and the fourth routing node.

[0085] As an example, when there is at least one first associated routing node between the target master device node and the third routing node, and there is at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node, the fourth routing node, the at least one first associated routing node, and the at least one second associated routing node are used as target routing nodes.

[0086] As another example, when there is no at least one first associated routing node between the target master device node and the third routing node, and there is at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node, the fourth routing node and the at least one second associated routing node can be used as target routing nodes.

[0087] As another example, when there is at least one first associated routing node between the target master device node and the third routing node, and there is not at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node, the fourth routing node and at least one first associated routing node are used as target routing nodes.

[0088] As another example, when there is no at least one first associated routing node between the target master device node and the third routing node, and there is no at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node and the fourth routing node are used as target routing nodes.

[0089] Step 608: Determine an access path between a target master device node and a target slave device node according to at least one target routing node.

[0090] It should be noted that the execution process of steps 601 to 602 and step 608 can be implemented in any way in the embodiments of the present disclosure, and the embodiments of the present disclosure do not limit this and will not be described in detail.

[0091] In summary, by determining the first target group where the first routing node connected to the target master device node is located; determining the second target group where the second routing node connected to the target slave device node is located; determining the third routing node connected to the second target group in the first target group; determining the fourth routing node connected to the first target group in the second target group; determining the target routing node based on the target master device node, the target slave device node, the third routing node and the fourth routing node, the target routing node through which the target master device accesses the target slave device can be accurately determined.

[0092] In order to clearly illustrate the above embodiment, an example is now given for illustration.

[0093] For example, if Figure 7 As shown, the specific process of the path generation method can be as follows:

[0094] 1. m0~m15 are 16 master devices (main device nodes), S00~S73 are 32 routing nodes. When the 32 routing nodes are evenly divided into 8 groups, each with 4 routing nodes as a group, a small Mesh network is formed. There are 4 Mesh networks in the upper and lower parts, and a total of 8 Mesh networks.

[0095] 2. The 8 mesh networks are interconnected using a Crossbar structure. Nodes 0 to 15 are 16 on-chip SRAMs (slave device nodes). 16 masters can access each SRAM through the hybrid NoC structure.

[0096] 3. Assume that m0 wants to access the 11th SRAM. m0 first passes through the routing node S00 of the mesh network group 0 and is routed to node S03.

[0097] 4. Routing node S03 is connected to routing node S70 of the seventh mesh network through the Crossbar network;

[0098] 5. Then in the seventh Mesh network, it passes through routing node S71 and then to node S72;

[0099] 6. Finally, it is routed to the 11th SRAM block by routing node S72, that is, the shortest path for M0 to access the 11th SRAM block is M0-S00-S03-S70-S71-S72-11.

[0100] The path generation method of the embodiment of the present disclosure generates a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; for a target master device node among the multiple master device nodes, determines a target slave device node to be accessed by the target master device node from multiple slave device nodes; based on the target master device node and the target slave device node, determines at least one target routing node from the hybrid network structure; based on the at least one target routing node, determines an access path between the target master device node and the target slave device node. Thus, by generating a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes, the occurrence of low communication transmission efficiency caused by the network structure can be avoided. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure. Therefore, based on the at least one target routing node, the optimal access path between the target master device node and the target slave device node can be effectively determined, thereby improving the communication transmission efficiency.

[0101] In order to implement the above embodiment, the present disclosure also proposes a path generating device.

[0102] Figure 8 It is a structural diagram of a path generating device according to an exemplary embodiment.

[0103] like Figure 8 As shown, the path generating device 800 includes: a generating module 810 , a first determining module 820 , a second determining module 830 and a third determining module 840 .

[0104] Among them, the generation module 810 is used to generate a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; the first determination module 820 is used to determine, for a target master device node among the multiple master device nodes, a target slave device node to be accessed by the target master device node from multiple slave device nodes; the second determination module 830 is used to determine at least one target routing node from the hybrid network structure based on the target master device node and the target slave device node; the third determination module 840 is used to determine the access path between the target master device node and the target slave device node based on at least one target routing node.

[0105] As a possible implementation method of an embodiment of the present disclosure, the generation module 810 is used to: generate a first network structure based on multiple master device nodes and a first routing node among multiple routing nodes that matches the multiple master device nodes; generate a second network structure based on multiple slave device nodes and a second routing node among multiple routing nodes that matches the multiple slave device nodes; and connect the first network structure and the second network structure to generate a hybrid network structure.

[0106] As a possible implementation method of the embodiment of the present disclosure, the generation module 810 is also used to: determine, from multiple routing nodes, a second routing node that matches each slave device node in a plurality of slave device nodes; group the second routing nodes corresponding to the multiple slave device nodes according to the number of nodes to obtain multiple second groups; and create a second network structure based on the second routing nodes in any second group in the multiple second groups and the slave device nodes corresponding to the second routing nodes in any second group.

[0107] As a possible implementation method of an embodiment of the present disclosure, the generation module 810 is also used to: obtain the jth first routing node of the ith first group in multiple first groups corresponding to multiple first network structures and the i-th second routing node of the j-th second group in multiple second groups corresponding to multiple second network structures; connect the j-th first routing node of the ith first group with the i-th second routing node of the j-th second group to obtain a hybrid network structure; wherein the number of the multiple first groups is the same as the number of the multiple second groups, the number of the first routing nodes in each first group is the same as the number of the multiple first groups, and the number of the second routing nodes in each second group is the same as the number of the multiple second groups.

[0108] As a possible implementation method of an embodiment of the present disclosure, the generation module 810 is used to: group multiple routing nodes to obtain multiple third groups, wherein each of the multiple third groups includes multiple routing nodes, the multiple routing nodes in each third group are connected using a third network structure, and the multiple third groups are connected using a fourth network structure; connect multiple master device nodes and multiple slave device nodes through the third network structure and the fourth network structure to generate a hybrid network structure.

[0109] As a possible implementation method of an embodiment of the present disclosure, the second determination module 830 is used to: determine the first target group where the first routing node connected to the target master device node is located; determine the second target group where the second routing node connected to the target slave device node is located; determine the third routing node connected to the second target group in the first target group; determine the fourth routing node connected to the first target group in the second target group; and determine the target routing node based on the target master device node, the target slave device node, the third routing node and the fourth routing node.

[0110] As a possible implementation method of an embodiment of the present disclosure, the second determination module 830 is also used to: determine whether there is at least one first associated routing node between the target master device node and the third routing node, wherein the first associated routing node is used to connect the target master device node and the third routing node; determine whether there is at least one second associated routing node between the target slave device node and the fourth routing node, wherein the second associated routing node is used to connect the target slave device node and the fourth routing node; when there is at least one first associated routing node between the target master device node and the third routing node, and at least one second associated routing node between the target slave device node and the fourth routing node, use the third routing node, the fourth routing node, the at least one first associated routing node and the at least one second associated routing node as the target routing nodes.

[0111] As a possible implementation of the embodiment of the present disclosure, the path generating apparatus 800 further includes: a fourth determining module, a fifth determining module, and a sixth determining module.

[0112] Among them, the fourth determination module is used to use the third routing node, the fourth routing node and at least one second associated routing node as the target routing nodes when there is no at least one first associated routing node between the target master device node and the third routing node, and there is at least one second associated routing node between the target slave device node and the fourth routing node; the fifth determination module is used to use the third routing node, the fourth routing node and at least one first associated routing node as the target routing nodes when there is at least one first associated routing node between the target master device node and the third routing node, and there is no at least one second associated routing node between the target slave device node and the fourth routing node; the sixth determination module is used to use the third routing node and the fourth routing node as the target routing nodes when there is no at least one first associated routing node between the target master device node and the third routing node, and there is no at least one second associated routing node between the target slave device node and the fourth routing node.

[0113] The path generation device of the embodiment of the present disclosure generates a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; for a target master device node among the multiple master device nodes, determines a target slave device node to be accessed by the target master device node from multiple slave device nodes; determines at least one target routing node from the hybrid network structure based on the target master device node and the target slave device node; and determines an access path between the target master device node and the target slave device node based on the at least one target routing node. Thus, by generating a hybrid network structure based on the multiple master device nodes, the multiple slave device nodes and the multiple routing nodes, the low communication transmission efficiency caused by the network structure can be avoided. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure, so that the optimal access path between the target master device node and the target slave device node can be effectively determined based on the at least one target routing node, thereby improving the communication transmission efficiency.

[0114] In order to implement the above embodiments, the present disclosure also proposes an electronic device, such as Figure 9 As shown, Figure 9 FIG. 1 is a block diagram of an electronic device for generating a path according to an exemplary embodiment. Figure 9 As shown, the electronic device 900 may include:

[0115] The memory 910 and the processor 920, and the bus 930 connecting different components (including the memory 910 and the processor 920), the memory 910 stores a computer program, and when the processor 920 executes the program, the path generation method described in the embodiment of the present disclosure is implemented.

[0116] Bus 930 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or a local bus using any of a variety of bus architectures. Examples of these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.

[0117] The electronic device 900 typically includes a variety of computer-readable media. These media can be any available media that can be accessed by the electronic device 900, including volatile and non-volatile media, removable and non-removable media.

[0118] The memory 910 may also include computer system readable media in the form of volatile memory, such as random access memory (RAM) 940 and / or cache memory 950. The electronic device 900 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 960 may be used to read and write non-removable, non-volatile magnetic media ( Figure 9 Not shown, often called a "hard drive"). Although Figure 9 Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 930 via one or more data medium interfaces. Memory 910 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of various embodiments of the present disclosure.

[0119] A program / utility 980 having a set (at least one) of program modules 970 may be stored, for example, in memory 910. Such program modules 970 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may include an implementation of a network environment. Program modules 970 generally implement the functions and / or methods of the embodiments described herein.

[0120] The electronic device 900 may also communicate with one or more external devices 990 (e.g., a keyboard, a pointing device, a display 991, etc.), and may also communicate with one or more devices that enable a user to interact with the electronic device 900, and / or any device that enables the electronic device 900 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed through an input / output (I / O) interface 992. Furthermore, the electronic device 900 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter 993. Figure 9 As shown, the network adapter 993 communicates with other modules of the electronic device 900 via the bus 930. Figure 9 Not shown, other hardware and / or software modules may be used in conjunction with electronic device 900, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0121] The processor 920 executes various functional applications and data processing by running programs stored in the memory 910 .

[0122] It should be noted that the implementation process and technical principles of the electronic device of this embodiment can be found in the aforementioned explanation of the path generation method of the embodiment of the present disclosure, and will not be repeated here.

[0123] The electronic device provided by the embodiment of the present disclosure generates a hybrid network structure based on multiple master device nodes, multiple slave device nodes and multiple routing nodes; for a target master device node among the multiple master device nodes, determines a target slave device node to be accessed by the target master device node from multiple slave device nodes; determines at least one target routing node from the hybrid network structure based on the target master device node and the target slave device node; and determines an access path between the target master device node and the target slave device node based on the at least one target routing node. Thus, by generating a hybrid network structure based on the multiple master device nodes, the multiple slave device nodes and the multiple routing nodes, the low communication transmission efficiency caused by the network structure can be avoided. Furthermore, in the process of the target master device accessing the target slave device, at least one target routing node can be selected from the hybrid network structure, so that the optimal access path between the target master device node and the target slave device node can be effectively determined based on the at least one target routing node, thereby improving the communication transmission efficiency.

[0124] In order to implement the above embodiments, the embodiments of the present disclosure further provide a computer-readable storage medium.

[0125] When the instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the path generation method as described above.

[0126] In order to implement the above embodiments, the present disclosure further provides a computer program product. When the computer program is executed by a processor of an electronic device, the electronic device can execute the path generation method as described above.

[0127] Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, with the true scope and spirit of the present disclosure being indicated by the following claims.

[0128] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes can be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A path generation method, characterized in that: include: Generate a hybrid network structure according to multiple master device nodes, multiple slave device nodes, and multiple routing nodes; For a target master device node among the multiple master device nodes, determining a target slave device node to be accessed by the target master device node from among the multiple slave device nodes; Determining at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node; determining, based on the at least one target routing node, an access path between the target master device node and the target slave device node; The step of determining at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node includes: Determine a first target group where a first routing node connected to the target master device node is located; Determine a second target group where a second routing node connected to the target slave device node is located; determining, in the first target group, a third routing node connected to the second target group; determining, in the second target group, a fourth routing node connected to the first target group; A target routing node is determined according to the target master device node, the target slave device node, the third routing node, and the fourth routing node.

2. The method according to claim 1, characterized in that Generating a hybrid network structure according to the plurality of master device nodes, the plurality of slave device nodes, and the plurality of routing nodes includes: Generate a first network structure according to the multiple master device nodes and a first routing node among the multiple routing nodes that matches the multiple master device nodes; generating a second network structure according to the plurality of slave device nodes and second routing nodes among the plurality of routing nodes that match the plurality of slave device nodes; The first network structure and the second network structure are connected to generate a hybrid network structure.

3. The method according to claim 2, characterized in that Generating a first network structure according to the multiple master device nodes and a first routing node among the multiple routing nodes that matches the multiple master device nodes includes: The plurality of master device nodes may be sorted according to the device identification information to obtain an arrangement order of the plurality of master device nodes; Determining, from the plurality of routing nodes, a first routing node that matches each of the plurality of master device nodes according to an arrangement order of the plurality of master device nodes; Grouping the first routing nodes corresponding to the plurality of master device nodes according to a set number of nodes to obtain a plurality of first groups; A first network structure is created according to a first routing node in any first group of the multiple first groups and a master device node corresponding to the first routing node in any first group.

4. The method according to claim 3, characterized in that Generating a second network structure according to the plurality of slave device nodes and second routing nodes among the plurality of routing nodes that match the plurality of slave device nodes includes: Determining, from the plurality of routing nodes, a second routing node that matches each of the plurality of slave device nodes; Grouping the second routing nodes corresponding to the plurality of slave device nodes according to the number of nodes to obtain a plurality of second groups; A second network structure is created according to the second routing node in any second group of the multiple second groups and the slave device node corresponding to the second routing node in any second group.

5. The method according to claim 4, characterized in that The connecting the first network structure and the second network structure to generate a hybrid network structure includes: Obtaining a j-th first routing node of an i-th first group in a plurality of first groups corresponding to a plurality of the first network structures and an i-th second routing node of a j-th second group in a plurality of second groups corresponding to a plurality of the second network structures; Connecting the jth first routing node of the i-th first group with the i-th second routing node of the j-th second group to obtain a hybrid network structure; Among them, the number of the multiple first groups is the same as the number of the multiple second groups, the number of first routing nodes in each first group is the same as the number of the multiple first groups, and the number of second routing nodes in each second group is the same as the number of the multiple second groups.

6. The method according to claim 1, characterized in that Generating a hybrid network structure according to the plurality of master device nodes, the plurality of slave device nodes, and the plurality of routing nodes includes: Grouping the plurality of routing nodes to obtain a plurality of third groups, wherein each of the plurality of third groups includes a plurality of routing nodes, the plurality of routing nodes in each of the third groups are connected using a third network structure, and the plurality of third groups are connected using a fourth network structure; The multiple master device nodes and the multiple slave device nodes are connected through the third network structure and the fourth network structure to generate the hybrid network structure.

7. The method according to claim 1, characterized in that The determining of the target routing node according to the target master device node, the target slave device node, the third routing node, and the fourth routing node includes: Determining whether there is at least one first associated routing node between the target master device node and the third routing node, wherein the first associated routing node is used to connect the target master device node and the third routing node; Determining whether there is at least one second associated routing node between the target slave device node and the fourth routing node, wherein the second associated routing node is used to connect the target slave device node and the fourth routing node; When there is at least one first associated routing node between the target master device node and the third routing node, and there is at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node, the fourth routing node, the at least one first associated routing node and the at least one second associated routing node are used as target routing nodes.

8. The method according to claim 7, characterized in that The method further comprises: In a case where there is no at least one first associated routing node between the target master node and the third routing node, and there is at least one second associated routing node between the target slave node and the fourth routing node, the third routing node, the fourth routing node, and the at least one second associated routing node are used as target routing nodes; In a case where there is at least one first associated routing node between the target master node and the third routing node, and there is no at least one second associated routing node between the target slave node and the fourth routing node, the third routing node, the fourth routing node, and the at least one first associated routing node are used as target routing nodes; When there is no at least one first associated routing node between the target master device node and the third routing node, and there is no at least one second associated routing node between the target slave device node and the fourth routing node, the third routing node and the fourth routing node are used as target routing nodes.

9. A path generation device, characterized in that: include: A generation module, configured to generate a hybrid network structure according to a plurality of master device nodes, a plurality of slave device nodes, and a plurality of routing nodes; A first determining module is configured to determine, for a target master device node among the multiple master device nodes, a target slave device node to be accessed by the target master device node from among the multiple slave device nodes; A second determining module is configured to determine at least one target routing node from the hybrid network structure according to the target master device node and the target slave device node; a third determining module, configured to determine an access path between the target master device node and the target slave device node according to the at least one target routing node; The second determining module is configured to: Determine a first target group where a first routing node connected to the target master device node is located; Determine a second target group where a second routing node connected to the target slave device node is located; determining, in the first target group, a third routing node connected to the second target group; determining, in the second target group, a fourth routing node connected to the first target group; A target routing node is determined according to the target master device node, the target slave device node, the third routing node, and the fourth routing node.

10. The device according to claim 9, characterized in that The generating module is used to: Generate a first network structure according to the multiple master device nodes and a first routing node among the multiple routing nodes that matches the multiple master device nodes; generating a second network structure according to the plurality of slave device nodes and second routing nodes among the plurality of routing nodes that match the plurality of slave device nodes; The first network structure and the second network structure are connected to generate a hybrid network structure.

11. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the path generation method according to any one of claims 1 to 8. 12 . A computer-readable storage medium, wherein when instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the path generation method according to claim 1 . 13 . A computer program product, comprising a computer program, wherein when the computer program is executed by a processor of an electronic device, the electronic device is enabled to execute the path generation method according to claim 1 .

Citation Information

Patent Citations

  • Asymmetric ring topology for reduced latency in on-chip ring networks

    CN103380597A