Hierarchical broadcast two-dimensional Mesh network device

By adopting a two-dimensional Mesh network structure with hierarchical broadcast in the on-chip network for neuromorphic computing, the network congestion problem caused by presynaptic neuron distribution is solved, and efficient network microfilm transmission and computing efficiency are improved.

CN120075937APending Publication Date: 2025-05-30GUANGDONG INST OF INTELLIGENT SCI & TECH
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510206854.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-25
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In neuromorphic calculations, presynaptic neuron distribution requires broadcasting spike pulses to all postsynaptic neurons, resulting in congestion in the on-chip network, affecting the implementation of high parallelism and real-time.

Method used

A two-dimensional Mesh network using hierarchical broadcasting uses a multi-layer ring network structure divided into multiple layers in the first and second directions to realize in-layer transmission and direction selection of network microfilms, and determines in which direction the network microfilms are transmitted according to routing conditions.

Benefits of technology

It effectively alleviates network congestion, improves the efficiency of network microfilm transmission, ensures high parallelism and real-time nature of neuromorphic computing, and reduces energy consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120075937A_ABST
    Figure CN120075937A_ABST
Patent Text Reader

Abstract

The invention discloses a hierarchical broadcast two-dimensional Mesh network, which comprises a plurality of network nodes, and the plurality of network nodes are connected in a two-dimensional Mesh network structure. The two-dimensional Mesh network structure is divided into a plurality of layers of looped networks in a first direction and a second direction, the looped network comprises a plurality of network nodes, and the first direction is perpendicular to the second direction; the first network node obtains the network flit, and enables the network flit to perform intra-layer transmission in the looped network in the first direction and / or the second direction; wherein the first network node is any one network node in the plurality of network nodes. By implementing the embodiment, each network node can perform transmission through the network nodes in each layer of ring network to ensure that the transmission of the network flit can complete process calculation, and meanwhile, different directions can be selected for transmission aiming at different network flit, so that the transmission efficiency of the network is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of computer processors, belonging to the technical field of the hardware architecture of neural network chips, and specifically relates to a two-dimensional Mesh network. Background Art

[0002] In neuromorphic computing chips, there are a large number of neurons and they are highly parallel. The Network on Chip (NoC) is responsible for the efficient transmission of pulse signals between neurons, providing a fast and reliable communication channel between neurons. Its performance such as bandwidth and latency is directly related to the system scalability of the neuromorphic chip. In order to support tens of millions or even hundreds of millions of neurons, the NoC must reduce the microchip transmission latency and improve the system throughput rate through network topology, optimizing router structure and routing strategy, so as to achieve the high parallelism and real-time performance of neuromorphic computing. In addition, the NoC also needs to consider energy efficiency to maintain the low energy consumption characteristics of the entire neuromorphic computing system. Summary of the Invention

[0003] Aiming at the above at least one technical problem, the purpose of the present invention is to provide a two-dimensional Mesh network device with hierarchical broadcasting.

[0004] On the one hand, an embodiment of the present invention includes a two-dimensional Mesh network with hierarchical broadcasting. The two-dimensional Mesh network with hierarchical broadcasting is composed of multiple network nodes, including:

[0005] The multiple network nodes are connected in a two-dimensional Mesh network structure; the two-dimensional Mesh network structure is divided into multiple layers of ring networks in the first direction and the second direction respectively. Among them, the ring network contains multiple network nodes, and the first direction is perpendicular to the second direction;

[0006] A first network node is used to obtain a network microchip and make the network microchip perform intra-layer transmission in the ring network in the first direction and / or the second direction; wherein, the first network node is any one of the multiple network nodes.

[0007] Furthermore, the first network node is further used to obtain a network microchip. If the network microchip meets the first routing condition, the network microchip is transmitted along the first direction; if the network microchip meets the second routing condition, the network microchip is transmitted along the second direction; wherein, the first network node is any one of the multiple network nodes, the two-dimensional Mesh network with hierarchical broadcasting includes the ring network in the first direction and the ring network in the second direction, and the ring network contains multiple network nodes.

[0008] Furthermore, the network nodes are divided into internal nodes and boundary nodes;

[0009] The boundary nodes are the network nodes located on a specific row of the two-dimensional Mesh network structure, and the internal nodes are the network nodes other than the boundary nodes;

[0010] The boundary nodes are used to receive network micro-pieces incoming into the two-dimensional Mesh network and transmit the network micro-pieces to the internal nodes;

[0011] The boundary nodes are also used to unload the network micro-pieces from the two-dimensional Mesh network;

[0012] The internal nodes are used to transmit the network micro-pieces and / or perform data processing on the network micro-pieces.

[0013] Furthermore, the internal nodes include neuron processing modules;

[0014] The neuron processing modules are used to perform neuron weight integration and state update according to the valid information carried by the network micro-pieces.

[0015] Furthermore, the network nodes include:

[0016] A routing module, which is used to transmit the network micro-pieces according to the first routing condition and the second routing condition.

[0017] Furthermore, the routing module includes:

[0018] A first direction unit, which is used to transmit the received network micro-pieces in the first direction if it is determined that the network micro-pieces meet the first routing condition;

[0019] A second direction unit, which is used to transmit the received network micro-pieces in the second direction if it is determined that the network micro-pieces meet the second routing condition.

[0020] Furthermore, the first direction unit is also used to transmit the network micro-pieces in the first direction if it is determined that the network micro-pieces carry the valid information corresponding to other network nodes in the first direction;

[0021] The second direction unit is also used to transmit the network micro-pieces in the second direction if it is determined that the network micro-pieces carry the valid information corresponding to other network nodes in the second direction.

[0022] Furthermore, the first direction unit includes:

[0023] A first upstream buffer, which is used to inject network micro-pieces into the first direction unit;

[0024] A first downstream buffer, which is used to receive the network micro-pieces unloaded from the first direction unit;

[0025] The second direction unit includes:

[0026] A second upstream buffer for injecting network micro-pieces into the second direction unit;

[0027] A second downstream buffer for receiving network micro-pieces unloaded from the second direction unit.

[0028] Furthermore, the first direction unit is further configured to obtain the network micro-pieces in the first upstream buffer, and if it is determined that the location information of the network micro-pieces matches the location information corresponding to the second network node, unload the network micro-pieces to the first downstream buffer of the network node; the second network node is any network node included in the network layer where the network micro-pieces are located;

[0029] A conversion module for transmitting the network micro-pieces unloaded to the first downstream buffer to the second upstream buffer;

[0030] The second direction unit is further configured to transmit the network micro-pieces along the second direction to the second network node according to the location information included in the network micro-pieces.

[0031] Furthermore, the first network node includes:

[0032] A priority update module for increasing the priority corresponding to the network micro-pieces if the network micro-pieces return to the original node from the ring network.

[0033] The first network node is further configured to select the network micro-pieces with the highest priority as the target network micro-pieces, and if the target network micro-pieces meet the first routing condition, transmit the target network micro-pieces along the first direction; if the target network micro-pieces meet the second routing condition, transmit the target network micro-pieces along the second direction.

[0034] The beneficial effects of the present invention are as follows: A hierarchical broadcast two-dimensional Mesh network in an embodiment, the hierarchical broadcast two-dimensional Mesh network is composed of multiple network nodes, and the multiple network nodes are connected in a two-dimensional Mesh network structure; the two-dimensional Mesh network structure is divided into multiple layers of ring networks in the first direction and the second direction respectively, wherein, there are multiple network nodes on the ring network, and the first direction and the second direction are perpendicular to each other; the first network node obtains network micro-pieces and enables the network micro-pieces to perform intra-layer transmission in the ring network in the first direction and / or the second direction; wherein, the first network node is any one of the multiple network nodes. Implementing this embodiment, the network micro-pieces can be transmitted through the network nodes in each layer of the ring network to ensure that the transmission of the network micro-pieces can complete process calculations. At the same time, different directions can be selected for different network micro-pieces for transmission, thereby improving the transmission efficiency of the network micro-pieces. Description of the Drawings

[0035] Figure 1 It is a schematic flow diagram of a two-dimensional Mesh network transmission network microchip for hierarchical broadcast disclosed in an embodiment of the present application;

[0036] Figure 2 It is a schematic diagram of a two-dimensional Mesh network for hierarchical broadcast in an embodiment;

[0037] Figure 3 It is a schematic diagram of a two-dimensional Mesh network for hierarchical broadcast in an embodiment;

[0038] Figure 4 It is a schematic diagram of the result of a routing module disclosed in an embodiment of the present application;

[0039] Figure 5 It is a schematic structural diagram of a first direction unit in an embodiment;

[0040] Figure 6 It is a schematic structural diagram of a second direction unit in an embodiment;

[0041] Figure 7 It is a schematic structural diagram of a two-dimensional Mesh network device for hierarchical broadcast. Specific embodiments

[0042] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0043] It should be noted that the terms "including" and "having" and any variations thereof in the embodiments of the present application are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally further includes steps or units not listed, or optionally further includes other steps or units inherent to these processes, methods, products or devices.

[0044] It can be understood that the terms "first", "second", etc. used in the present application can be used to describe various elements in this article, but these elements are not limited by these terms. These terms are only used to distinguish the first element from another element. For example, without departing from the scope of the present application, the first network node can be called the second network node, and similarly, the second network node can be called the first network node. Both the first network node and the second network node are network nodes, but they are not the same network node.

[0045] With the continuous progress of artificial intelligence technology, neuromorphic computing, as a computing paradigm that mimics the structure and function of biological neural networks (such as the human brain) and aims to achieve more efficient and brain-like information processing, is gradually becoming a key technology for improving computing efficiency and reducing energy consumption. This computing paradigm uses biological models such as Spiking Neural Networks (SNNs) to achieve high energy efficiency and high parallel computing capabilities. The development of neuromorphic hardware enables the real-time operation of large-scale networks, which is crucial for frontier applications such as neuro-robot control, brain-computer interfaces, and robot decision-making.

[0046] In neuromorphic computing, the Network-on-Chip (NoC) connects numerous neuron clusters and is responsible for efficient microchip transmission between neuron clusters, ensuring fast and reliable communication between different clusters. Its performance such as bandwidth and latency is directly related to the performance of the entire system. To adapt to various typical application scenarios, implementing an energy-efficient and low-latency pulsed network hardware architecture is a core challenge. In recent years, brain-inspired computing architectures based on distributed computing cores and energy-efficient NoCs have received extensive attention. However, during neuromorphic computing, when presynaptic neurons fire, they need to broadcast spikes to all postsynaptic neurons. The firing of a large number of neurons will result in a large number of spikes on the NoC, causing congestion.

[0047] To alleviate this congestion and ensure the efficient operation of neuromorphic computing, the NoC reduces the microchip transmission latency and improves the system throughput through network structure, router structure design optimization, and routing strategies, thereby achieving the high parallelism and real-time performance of neuromorphic computing. In addition, the NoC also needs to consider energy efficiency and avoid deadlock problems caused by network microchip transmission, which may affect the high parallelism and real-time performance of computing, in order to maintain the low energy consumption characteristics of the neuromorphic computing system.

[0048] The embodiments of this application disclose a two-dimensional Mesh network device with hierarchical broadcasting, which can efficiently support broadcast communication, has short latency, and features less redundancy, low blocking rate, and low power consumption. The following will be described in detail respectively.

[0049] Please refer to Figure 1 , Figure 1 which is a schematic flowchart of the two-dimensional Mesh network with hierarchical broadcasting in this application for transmitting network microchips. Among them, Figure 1 the steps of the two-dimensional Mesh network with hierarchical broadcasting for transmitting network microchips described are applicable to circuit systems using the NoC, such as integrated circuit chips, system-on-chip integrated circuits, etc., which are not limited here. As Figure 1 shown, the steps of the two-dimensional Mesh network with hierarchical broadcasting for transmitting network microchips may include the following steps:

[0050] Step S101: Obtain network micro - slices.

[0051] In one embodiment, the network micro - slices may refer to data information packet micro - slices transmitted in the network. The network micro - slices obtained by the first network node may be the network micro - slices input from the outside into the two - dimensional Mesh network of hierarchical broadcast, or the network micro - slices transmitted from other network nodes different from the first network node to the first network node.

[0052] Optionally, the network micro - slices may be obtained by fragmenting packets. Further, the packets may be fragmented multiple times according to a preset packet length to obtain multiple network micro - slices, or the packets may be fragmented according to the fragmentation identifier included in the packets to obtain network micro - slices. Among them, the fragmentation identifier is a unique identifier that can identify the packet when the packet is created, and the fragmentation identifier contains the information required for fragmentation. Therefore, the packets can be fragmented according to the fragmentation identifier to obtain network micro - slices.

[0053] Step S102: Let the network micro - slices perform in - layer transmission on the ring network in the first direction and / or the second direction; where the first network node is any one of multiple network nodes.

[0054] In some embodiments, the two - dimensional Mesh network of hierarchical broadcast is divided into multiple layers of ring networks in the first direction and the second direction respectively. Among them, each ring network may include multiple layers of network nodes, and each layer of ring network is independent of each other. The network micro - slices can be propagated simultaneously on the network nodes of each layer of ring network. And if the network micro - slices are propagated on the network nodes of the ring network in the first direction, they can be propagated to the network nodes of any layer of the ring network in the second direction through the network nodes on this layer of ring network; if the network micro - slices are propagated on the network nodes of the ring network in the second direction, they can be propagated to the network nodes of any layer of the ring network in the first direction through the network nodes on this layer of ring network. Specifically, the propagation path of the network micro - slices can be determined according to the first routing condition and the second routing condition. For example, if the network micro - slice A is on the network node of the third layer in the first direction, it can be propagated to the network nodes of any layer in the second direction. The network micro - slices can be propagated through the network nodes of each layer on the ring network and can be propagated according to the routing conditions in both the first direction and the second direction, so as to complete the transmission of the network micro - slices through a shorter propagation path, thereby improving the transmission efficiency of the network.

[0055] Further, if the network microchip meets the first routing condition, the network microchip is transmitted in the first direction; if the network microchip meets the second routing condition, the network microchip is transmitted in the second direction; wherein, the first network node is any one of the multiple network nodes, the first direction and the second direction are perpendicular to each other, and the hierarchical broadcast two-dimensional Mesh network includes a ring network in the first direction and a ring network in the second direction, and the ring network contains multiple network nodes. The first routing condition and the second routing condition can be the transmission rules of each network microchip, and both the first routing condition and the second routing condition can be pre-set routing conditions. The first direction and the second direction are perpendicular to each other. For example, if the first direction is the vertical direction, then the second direction can be the horizontal direction. According to the first routing condition and the second routing condition, the arrived network microchip can continue to be transmitted in the original transmission direction while entering the next stage of data transmission. Among them, the arrived network microchip is a network microchip that meets the current routing condition. For example, if the network microchip A is currently transmitted in the first direction, then the network microchip A is judged according to the first routing condition. If the network microchip A meets the second routing condition, it can continue to be transmitted in the first direction while entering the second direction for transmission. The hierarchical broadcast two-dimensional Mesh network includes a ring network in the first direction and a ring network in the second direction, and the starting network node and the ending network node in the transmission path of the ring network coincide or are connected. For example, if a ring network contains three network nodes, namely network node A, network node B, and network node C, then the data transmitted on this ring network can be transmitted from network node A to network node B, then from network node B to network node C, and then from network node C to network node A. The ring network can contain multiple network nodes. Further, the ring network can contain at least two network nodes to ensure the formation of a ring network structure.

[0056] Figure 2 is a schematic diagram of a hierarchical broadcast two-dimensional Mesh network in an embodiment, as Figure 2 shown. The hierarchical broadcast two-dimensional Mesh network in the figure contains five layers of network nodes, with four network nodes in each layer. Link connections are made between the nodes in each layer or each column, and the first and last nodes in each layer or each column are connected. Among them, the first direction can refer to the column direction of the hierarchical broadcast two-dimensional Mesh network, and the second direction can refer to the row direction of the hierarchical broadcast two-dimensional Mesh network. In the hierarchical broadcast two-dimensional Mesh network, ① is the overall structure of the hierarchical broadcast two-dimensional Mesh network, with a total of five layers from bottom to top, four nodes in each layer, ② is the boundary node, with a total of one layer, including four nodes; ③ is the internal node. Among them, the boundary node can be a layer of network nodes with a special structure in the hierarchical broadcast two-dimensional Mesh network.

[0057] In one embodiment, the network structure of the two-dimensional Mesh network for hierarchical broadcasting can be symmetric, and network microtiles can be transmitted along a first direction or a second direction, where the first direction and the second direction are perpendicular to each other. Among them, the boundary nodes in the two-dimensional Mesh network for hierarchical broadcasting are a layer of network nodes with a special structure in the two-dimensional Mesh network for hierarchical broadcasting, and the internal nodes are all network nodes except the boundary nodes. That is to say, the boundary nodes can be located at any layer in the two-dimensional Mesh network for hierarchical broadcasting. For example, Figure 3 is a schematic diagram of the two-dimensional Mesh network for hierarchical broadcasting in an embodiment. As Figure 3 shown, the boundary nodes can be the network nodes of the first layer or the network nodes of the second layer, which is not limited here. When the network microtile meets the first routing condition, it can be transmitted along the Figure 3 first direction shown, and when the network microtile meets the second routing condition, it can be transmitted along the Figure 3 second direction shown.

[0058] Link connections are made between the nodes included in each layer or each column of the two-dimensional Mesh network for hierarchical broadcasting, and the head and tail nodes of each layer or each column are connected, which can reduce the number of hops during the transmission of network microtiles, thereby improving the transmission efficiency of the network. Among them, a hop refers to the process of a network microtile being transmitted from one network node to another network node.

[0059] In some embodiments, a two-dimensional Mesh network for hierarchical broadcasting may include internal nodes and boundary nodes. The internal nodes are network nodes located on a specific row of the two-dimensional Mesh network structure for hierarchical broadcasting, and the internal nodes are network nodes other than the boundary nodes. The boundary nodes are used to receive network micro-pieces incoming into the two-dimensional Mesh network for hierarchical broadcasting and transmit the network micro-pieces to the internal nodes. The boundary nodes are also used to unload the network micro-pieces from the two-dimensional Mesh network. The internal nodes are used to transmit network micro-pieces and / or perform data processing on the network micro-pieces. That is to say, the network micro-pieces can be input into the two-dimensional Mesh network for hierarchical broadcasting from the boundary nodes, and when the calculation of the network micro-pieces is completed in the two-dimensional Mesh network for hierarchical broadcasting, the network micro-pieces can be unloaded from the two-dimensional Mesh network for hierarchical broadcasting through the boundary nodes. Among them, the boundary node for inputting the network micro-pieces into the two-dimensional Mesh network for hierarchical broadcasting and the boundary node for unloading the network micro-pieces can be the same boundary node or different boundary nodes. The internal nodes can be used to perform data processing on the network micro-pieces. Among them, performing data processing on the network micro-pieces may include updating and transmitting the node information corresponding to the internal nodes according to the network micro-pieces. The node information corresponding to the internal nodes may include node status and synaptic weight. The node status may be used to describe the status of the network node, and the synaptic weight may be used to describe the weight situation when information is transmitted between nodes.

[0060] Since the internal nodes can perform data processing on the network micro-pieces, the structures of the internal nodes and the boundary nodes can be different. In one embodiment, the internal part may include a neuron processing module, and the neuron processing module performs weight integration and status update according to the valid information carried by the network micro-pieces. Among them, the valid information carried by the network micro-pieces may refer to the information required by the neuron processing module.

[0061] In the embodiments of the present application, multiple network nodes are connected in a two-dimensional Mesh network structure. The two-dimensional Mesh network structure is divided into multiple layers of ring networks in the first direction and the second direction respectively. Among them, multiple network nodes are included in the ring network, and the first direction and the second direction are perpendicular to each other. The first network node obtains network micro-pieces and enables the network micro-pieces to be transmitted within the layer in the ring network in the first direction and / or the second direction. Among them, the first network node is any one of the multiple network nodes, and each network node can be transmitted through the network nodes in each layer of the ring network to ensure that the transmission of the network micro-pieces can complete the process calculation. At the same time, different directions can be selected for different network micro-pieces for transmission, so as to improve the transmission efficiency of the network micro-pieces.

[0062] Figure 4 It is a schematic diagram of the result of the routing module disclosed in the embodiments of the present application. As Figure 4As shown, it includes a first-direction unit and a second-direction unit. Among them, the first-direction unit is used to transmit network micro-pieces in the first direction, and the second-direction unit is used to transmit network micro-pieces in the second direction. The routing module further includes a 2-1 selection switch, which can be used to determine and output one of the network micro-pieces from the network micro-pieces input to the two 2-1 selection switches according to a certain preset selection principle, so as to control the transmission of network micro-pieces. Specifically, the selection principle can be to output the network micro-piece with an earlier arrival time point according to the time point when it arrives at the 2-1 selection switch, thereby determining the output of the network micro-piece. For example, if the time point when network micro-piece A arrives at the 2-1 selection switch is T 0 , and the time point when network micro-piece B arrives at the 2-1 selection switch is T 1 (T 0 <T 1 , that is, time point T 0 is earlier than time point T 1 ), then the 2-1 selection switch can select to output network micro-piece A.

[0063] In one embodiment, the routing module can be used to transmit network micro-pieces according to the first routing condition and the second routing condition. Further, the routing module can judge whether the network micro-piece meets the first routing condition and / or the second routing condition according to the valid information carried by the network micro-piece. The two-dimensional Mesh network with hierarchical broadcast can control the network micro-pieces to be injected into the network nodes in the first direction. The first-direction unit in the network node can be used to transmit the received network micro-piece in the first direction if it is determined that the network micro-piece meets the first routing condition, and unload the network micro-piece from the first direction if it is determined that the network micro-piece meets the unloading condition. The second-direction unit can be used to transmit the received network micro-piece in the second direction if it is determined that the network micro-piece meets the second routing condition; and unload the network micro-piece from the second direction if it is determined that the network micro-piece meets the unloading condition. The two-dimensional Mesh network with hierarchical broadcast can perform transmission according to the routing conditions met by the network micro-pieces, which can avoid situations such as congestion caused by a large number of transmissions of network micro-pieces, and improve the transmission efficiency of the network to a certain extent.

[0064] Further, the first direction unit is further configured to transmit the network microchip in the first direction if it is determined that the network microchip carries valid information corresponding to other network nodes in the first direction; the second direction unit is further configured to transmit the network microchip in the second direction if it is determined that the network microchip carries valid information corresponding to other network nodes in the second direction. The network microchip may carry valid information corresponding to multiple network nodes for updating the node information corresponding to each network node. When the network microchip is transmitted to the network node corresponding to the valid information, the network node processes the valid information corresponding to the network node in the network microchip. After the processing, the valid information will be deleted or marked as having been calculated, thus avoiding repeated calculations. For example, assume that the network microchip contains valid information A and valid information B. If the network microchip is transmitted to network node A corresponding to valid information A, then network node A can process the valid information A in network microchip A. After the processing, network node A can delete the valid information A in the network microchip or mark the valid information A to indicate that the valid information A has been processed. And according to the first routing condition and the second routing condition, the network microchip is transmitted to network node B corresponding to valid information B to calculate the valid information B through network node B.

[0065] The valid information contained in the network microchip can be used to determine the transmission direction of the network microchip. As Figure 3 shown, for example, if the network microchip contains valid information corresponding to network node A in the second layer, the first direction module transmits the network microchip in the first direction to the second layer. Any network node in the second layer that receives the network microchip then transmits the network microchip in the second direction so that network node A can receive the network microchip and process the valid information in the network microchip.

[0066] As an alternative embodiment, the first direction unit includes a first upstream buffer and a first downstream buffer. Among them, the first upstream buffer is used to inject the network microchip in the first direction; the first downstream buffer is used to receive the network microchip unloaded from the first direction unit. The second direction unit includes a second upstream buffer and a second downstream buffer. The second upstream buffer is used to inject the network microchip in the second direction; the second downstream buffer is used to receive the network microchip unloaded from the second direction unit. Figure 5 is a schematic structural diagram of the first direction unit in an embodiment. As Figure 5As shown, network micro - slices can be stored in the first upstream buffer to prepare for injection into a two - dimensional Mesh network for hierarchical broadcasting. Among them, the network micro - slices in the first upstream buffer can be network micro - slices prepared externally for injection into the two - dimensional Mesh network for hierarchical broadcasting, or can be network micro - slices unloaded after being transmitted along the first direction in the two - dimensional Mesh network for hierarchical broadcasting, so as to prepare for re - injecting the unloaded network micro - slices into the two - dimensional Mesh network for hierarchical broadcasting. Figure 6 is a schematic structural diagram of the second - direction unit in an embodiment. As Figure 6 shown, the second upstream buffer receives network micro - slices transmitted from the second direction and also receives network micro - slices unloaded from the second - direction downstream buffer.

[0067] Furthermore, both the upstream buffer and the downstream buffer adopt a first - in - first - out structure, and the number of network micro - slices stored in the upstream buffer and the downstream buffer is determined by the number of network micro - slices being transmitted in real - time in each transmission direction. For example, assume that there can be at most p micro - slices on each layer or each column of the network. If the maximum storage capacity of the upstream buffer is h items, when the first - direction unit or the second - direction unit injects new network micro - slices into the upstream buffer, when the number of occupied items in the upstream buffer exceeds h - p, no new injected micro - slices will be received until the number of occupied items in the upstream buffer is less than h - p. Similarly, the maximum storage capacity of the downstream buffer of the network node is g items, and the network micro - slices of this network node can use at most g - p items, with the remaining p items reserved for the network micro - slices uploaded by this network node to the two - dimensional Mesh network for hierarchical broadcasting. Logically, the downstream buffer can be implemented by two buffers with depths of g - p and p respectively, which are used to unload the above - mentioned different micro - slices. These buffer parameters satisfy h > p > 0 and g > p > 0.

[0068] After the network micro - slices transmitted along the first direction or the second direction are unloaded, they re - enter the two - dimensional Mesh network through the first upstream buffer or the second upstream buffer, freeing up network time slots, which can avoid the dead - lock problem caused by the inability to inject micro - slices, and thus can also improve the utilization rate of the network.

[0069] Further, the first direction unit is further configured to obtain network micro-pieces in the first uplink buffer, and if it is determined that the location information corresponding to the network micro-pieces matches that of the second network node, unload the network micro-pieces to the first downlink buffer of the network node; the second network node is any network node included in the network layer where the network micro-pieces are located; the conversion module is configured to transfer the network micro-pieces unloaded to the first downlink buffer to the second uplink buffer; the second direction unit is further configured to transfer the network micro-pieces to the second network node along the second direction according to the location information included in the network micro-pieces. That is, after the first direction unit obtains the network micro-pieces in the first uplink buffer, it only needs to determine that the location information corresponding to the network node where the network micro-pieces arrive is in the current layer, and then unload the network micro-pieces to the first downlink buffer. If the network micro-pieces also carry the location information corresponding to the network nodes in other layers, the network micro-pieces can be copied before unloading, and the copied network micro-pieces continue to be transmitted along the first direction to achieve the transmission of the network micro-pieces in the first direction. After the conversion module transfers the network micro-pieces unloaded to the first downlink buffer to the second uplink buffer, the second direction unit transfers the network micro-pieces to the second network node that matches the location information according to the location information in the network micro-pieces. After receiving the network micro-pieces, the second network node needs to unload the network micro-pieces to the second downlink buffer to pass the network micro-pieces to the corresponding logic for processing. If the network micro-pieces that arrive at the second network node also include valid information corresponding to other network nodes in this layer, the network micro-pieces can be copied, and the copied network micro-pieces continue to be transmitted along the second direction.

[0070] After the network micro-pieces arrive at the corresponding layer or network node, if the network micro-pieces also carry the node information of other layers or the information of other nodes in the same layer, they continue to be transmitted along the original direction, which can improve the transmission efficiency of the network.

[0071] In one embodiment, the first network node includes: a priority update module, which increases the priority corresponding to the network micro-pieces if the network micro-pieces return to the original network node from the ring network. Among them, the original network node can be the network node that the network micro-pieces have passed through. Further, the first network node is further configured to select the network micro-pieces with the highest priority as the target network micro-pieces. If the target network micro-pieces meet the first routing condition, transfer the target network micro-pieces along the first direction; if the target network micro-pieces meet the second routing condition, transfer the target network micro-pieces along the second direction. Among them, the priority can be used to describe the priority transmission degree of the network micro-pieces. If the network micro-pieces are transferred in the second direction, increase the priority corresponding to the network micro-pieces, so that the network micro-pieces being transmitted can be processed as soon as possible, and avoid the network micro-pieces being transmitted from stopping or the transmission efficiency decreasing due to changing the transmission direction.

[0072] Optionally, the priority corresponding to the network microchip can also be determined according to the transmission time of the network microchip on the two-dimensional Mesh network of hierarchical broadcasting. Further, if the network microchip has been transmitted for a preset transmission time period in the two-dimensional Mesh network of hierarchical broadcasting, the priority is increased by one unit. For example, if the network microchip has been transmitted for 0.001 seconds in the two-dimensional Mesh network of hierarchical broadcasting, the priority is increased by one unit, so that the network microchip that has been transmitted for a longer time on the two-dimensional Mesh network of hierarchical broadcasting can be processed faster, avoiding the network microchip from being transmitted on the two-dimensional Mesh network of hierarchical broadcasting for too long.

[0073] Figure 7 is a schematic structural diagram of a two-dimensional Mesh network device for hierarchical broadcasting. As Figure 7 shown, the two-dimensional Mesh network device 700 for hierarchical broadcasting includes an acquisition module 701 and a transmission module 702.

[0074] The acquisition module 701 is used to acquire network microchips;

[0075] The transmission module 702, if the network microchip meets the first routing condition, transmits the network microchip in the first direction; if the network microchip meets the second routing condition, transmits the network microchip in the second direction; wherein, the first network node is any one of the multiple network nodes, the first direction and the second direction are perpendicular to each other, the two-dimensional Mesh network of hierarchical broadcasting includes a ring network in the first direction and a ring network in the second direction, and the ring network contains multiple network nodes.

[0076] In this embodiment, a computer program capable of executing steps S101 - S102 can be written and the computer program can be written into a computer device or a storage medium. When the computer device or the storage medium runs, steps S101 - S102 can be executed to obtain the technical effects of the two-dimensional Mesh network of hierarchical broadcasting. Optionally, each network node in the two-dimensional Mesh network of hierarchical broadcasting can also be used as a data processing module in the computer program and can execute steps S101 - S102, so that the computer device can process network data through multiple data processing modules.

[0077] It should be noted that, unless otherwise specified, when a certain feature is referred to as "fixed" or "connected" to another feature, it can be directly fixed or connected to the other feature, or indirectly fixed or connected to the other feature. In addition, the descriptions such as up, down, left, and right used in this disclosure are only relative to the mutual positional relationship of the components of this disclosure in the drawings. The singular forms "a", "the", and "said" used in this disclosure are also intended to include the plural forms, unless the context clearly indicates otherwise. In addition, unless otherwise defined, all technical and scientific terms used in this embodiment have the same meaning as those commonly understood by those skilled in the art of this technology. The terms used in the specification of this embodiment are only for describing specific embodiments, rather than for limiting the present invention. The term "and / or" used in this embodiment includes any combination of one or more of the related listed items.

[0078] It should be recognized that the embodiments of the present invention can be implemented or carried out by computer hardware, a combination of hardware and software, or by computer instructions stored in a non-transitory computer-readable memory. The method can be implemented in a computer program using standard programming techniques - including a non-transitory computer-readable storage medium configured with the computer program, wherein the storage medium so configured causes the computer to operate in a specific and predefined manner - according to the methods and drawings described in the specific embodiments. Each program can be implemented in a high-level procedural or object-oriented programming language to communicate with the computer system. However, if desired, the program can be implemented in assembly or machine language. In any case, the language can be a compiled or interpreted language. In addition, for this purpose, the program can run on a dedicated integrated circuit programmed for this purpose.

[0079] In addition, the operations of the processes described in this embodiment can be performed in any suitable order, unless this embodiment otherwise indicates or is otherwise clearly contradictory to the context. The processes described in this embodiment (or variations and / or combinations thereof) can be executed under the control of one or more computer systems configured with executable instructions, and can be implemented as code (e.g., executable instructions, one or more computer programs, or one or more applications) commonly executed on one or more processors, by hardware, or a combination thereof. The computer program includes multiple instructions executable by one or more processors.

[0080] Further, the method can be implemented in any type of computing platform operatively connected to a suitable one, including but not limited to personal computers, minicomputers, mainframes, workstations, network or distributed computing environments, separate or integrated computer platforms, or communicating with charged particle tools or other imaging devices, etc. Aspects of the present invention can be implemented in machine-readable code stored on a non-transitory storage medium or device, whether removable or integrated into the computing platform, such as a hard disk, optical read and / or write storage medium, RAM, ROM, etc., such that it can be read by a programmable computer and can be used to configure and operate the computer to perform the processes described herein when the storage medium or device is read by the computer. Additionally, the machine-readable code, or portions thereof, can be transmitted via wired or wireless networks. When such media includes instructions or programs that implement the steps described above in conjunction with a microprocessor or other data processor, the invention as described in this embodiment includes these and other different types of non-transitory computer-readable storage media. When programmed according to the methods and techniques of the present invention, the present invention also includes the computer itself.

[0081] A computer program can be applied to input data to perform the functions described in this embodiment, thereby transforming the input data to generate output data stored in non-volatile memory. The output information can also be applied to one or more output devices such as a display. In a preferred embodiment of the present invention, the transformed data represents physical and tangible objects, including a specific visual depiction of the physical and tangible objects generated on the display.

[0082] As described above, these are only the preferred embodiments of the present invention. The present invention is not limited to the above-described embodiments. As long as it achieves the technical effects of the present invention by the same means, any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention. Within the scope of protection of the present invention, its technical solutions and / or implementation manners can have various different modifications and variations.

Claims

1. A hierarchical broadcast two-dimensional Mesh network, the hierarchical broadcast two-dimensional Mesh network consisting of a plurality of network nodes, characterized in that: include: The multiple network nodes are connected in a two-dimensional Mesh network structure; The two-dimensional Mesh network structure is divided into multiple layers of ring networks in a first direction and a second direction, respectively, wherein the ring network includes multiple network nodes, and the first direction and the second direction are perpendicular to each other; The first network node is used to obtain a network micro slice and enable the network micro slice to be transmitted within a layer in a ring network in the first direction and / or the second direction; wherein the first network node is any one of the multiple network nodes.

2. The hierarchical broadcast two-dimensional Mesh network device according to claim 1, characterized in that: The first network node is also used to obtain a network micro-slice. If the network micro-slice meets a first routing condition, the network micro-slice is transmitted along a first direction; if the network micro-slice meets a second routing condition, the network micro-slice is transmitted along a second direction; wherein the first network node is any one of the multiple network nodes, and the hierarchical broadcast two-dimensional Mesh network includes a ring network in the first direction and a ring network in the second direction, and the ring network includes multiple network nodes.

3. The hierarchical broadcast two-dimensional Mesh network device according to claim 2, characterized in that: The network nodes are divided into internal nodes and boundary nodes; The boundary node is the network node located on a specific row of the two-dimensional Mesh network structure, and the internal node is the network node other than the boundary node; The boundary node is used to receive a network slice introduced into the two-dimensional Mesh network and transmit the network slice to the internal node; The boundary node is further used to unload the network micro slice from the two-dimensional Mesh network; The internal node is used to transmit the network flit and / or perform data processing on the network flit.

4. The hierarchical broadcast two-dimensional Mesh network device according to claim 3, characterized in that: The internal node includes a neuron processing module; The neuron processing module performs neuron weight integration and state update according to the valid information carried by the network microchip.

5. The hierarchical broadcast two-dimensional Mesh network device according to claim 3, characterized in that: The network node comprises: A routing module is used to transmit the network flit according to the first routing condition and the second routing condition.

6. The hierarchical broadcast two-dimensional Mesh network device according to claim 5, characterized in that: The routing module comprises: A first direction unit, configured to transmit the received network flit in a first direction if it is determined that the network flit satisfies a first routing condition; The second direction unit is configured to transmit the received network flit in a second direction if it is determined that the network flit satisfies the second routing condition.

7. The hierarchical broadcast two-dimensional Mesh network device according to claim 6, characterized in that: The first direction unit is further configured to transmit the network flit in the first direction if it is determined that the network flit carries valid information corresponding to other network nodes in the first direction; The second direction unit is further configured to transmit the network flit in the second direction if it is determined that the network flit carries valid information corresponding to other network nodes in the second direction.

8. The hierarchical broadcast two-dimensional Mesh network device according to any one of claims 5 to 7, characterized in that: The first direction unit comprises: A first uplink buffer, used to inject network flit into a first direction; A first downlink buffer, configured to receive the network flit unloaded from the first direction unit; The second direction unit comprises: A second uplink buffer, for injecting network flit into a second direction; The second downlink buffer is used to receive the network micro-slice unloaded from the second direction unit.

9. The hierarchical broadcast two-dimensional Mesh network device according to claim 8, characterized in that: The first direction unit is further used to obtain the network micro slice in the first uplink buffer, and if it is determined that the network micro slice matches the location information corresponding to the second network node, unload the network micro slice to the first downlink buffer of the network node; the second network node is any network node included in the network layer where the network micro slice is located; A conversion module, configured to transfer the network fragments unloaded to the first downlink buffer to the second uplink buffer; The second direction unit is further configured to transmit the network flake to the second network node along the second direction according to the location information included in the network flake.

10. The hierarchical broadcast two-dimensional Mesh network device according to claim 1, characterized in that: The first network node includes: The priority updating module increases the priority corresponding to the network flit if the network flit returns to the original network node from the ring network. The first network node is further configured to select a network micro slice with the highest priority as a target network micro slice, and if the target network micro slice meets a first routing condition, transmit the target network micro slice along a first direction; if the target network micro slice meets a second routing condition, transmit the target network micro slice along a second direction.

Citation Information

Patent Citations

  • Layering and reconfigurable on-chip network modeling and simulation system

    CN103970939A

  • Mixed interconnection Mesh topological structure for on-chip network and routing algorithm thereof

    CN103986664A

  • Network-on-chip topological structure, routing path determination method and device and electronic equipment

    CN112613266A

  • Two-dimensional network-on-chip structure, routing method therefor, apparatus, terminal, and storage medium

    WO2024216854A1