Level 3 transmission networks, data transmission methods, devices, equipment, media, and products
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
- Filing Date
- 2026-01-26
- Publication Date
- 2026-06-02
Smart Images

Figure CN122137764A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a three-level transmission network, data transmission method, apparatus, equipment, medium and product. Background Technology
[0002] As the core architecture of System-on-Chip (SoC) interconnection, the topology design of the transmission network directly affects the reliability and efficiency of data transmission. Klose networks, a classic multi-level interconnection scheme developed from Benesian networks, play a crucial role in communication networks and multiprocessor computing systems. This network achieves inter-node communication through hierarchical routing nodes. However, existing SoC implementations have inherent flaws. When a single source terminal node continuously sends multiple data packets to a fixed target terminal node, due to the path diversity of the network topology, different data packets may be assigned to different secondary routing nodes for forwarding. Uneven processing loads, differences in queue depth, or changes in local congestion at each secondary routing node can cause data packets to arrive at the target node in asynchronous order via different paths. This timing discrepancy prevents the receiving end from maintaining the original data packet transmission order, leading to out-of-order data transmission, which in turn causes data stream reassembly failures, protocol parsing errors, and system malfunctions.
[0003] To address this issue, related technologies employ a receiver-side buffer reordering mechanism, which temporarily stores out-of-order data packets and rearranges their output order based on sequence numbers. However, this method faces significant bottlenecks as the number of paths increases: buffer capacity requirements grow non-linearly with network size, consuming substantial hardware resources and prone to buffer saturation under high load. If buffer space is exhausted before reordering is complete, network deadlock or data loss will occur, severely threatening system stability. Another approach is to increase the connection density between primary and secondary nodes, but a fully connected solution leads to a dramatic increase in the number of physical connections. As network port size expands, wiring complexity increases exponentially, not only increasing the difficulty of chip back-end layout and routing but also introducing derivative problems such as signal integrity degradation, timing convergence difficulties, and rising manufacturing costs, making it difficult to meet the stringent requirements of modern on-chip networks for high integration and low power consumption. Summary of the Invention
[0004] This application provides a three-level transmission network, data transmission method, apparatus, device, medium, and product, which at least solves the problem of out-of-order data transmission, reduces the need for receiver buffers, and reduces network cabling complexity in related technologies.
[0005] This application provides a three-level transmission network, comprising: a primary routing node group, wherein each primary routing node group comprises K nodes, and each primary routing node group comprises N / K primary routing nodes, where K is a positive integer and N is an integer multiple of K; a secondary routing node group, wherein each secondary routing node comprises K nodes; a primary transmission path, wherein each primary transmission path is a transmission path from a secondary routing node to a primary routing node, and each secondary routing node is configured with a primary transmission path to each primary routing node in its corresponding primary routing node group; a tertiary routing node group, wherein each tertiary routing node group comprises N / K nodes, and each tertiary routing node group comprises K-1 tertiary routing nodes, where K is a positive integer and N is an integer multiple of K; and a secondary transmission path, wherein each secondary routing node is a transmission path from a secondary routing node to a tertiary routing node, and each secondary routing node is configured with a secondary transmission path to each tertiary routing node.
[0006] This application also provides a data transmission method for a three-level transmission network. The data transmission method includes: obtaining a routing request, wherein the routing request includes a source routing node and a destination routing node; determining the target routing node and transmission path for data transmission based on the source routing node and the destination routing node; and performing data transmission based on the target routing node and the transmission path.
[0007] This application also provides a data transmission device for a three-level transmission network, comprising: an acquisition module for acquiring a routing request, wherein the routing request includes a source routing node and a destination routing node; a determination module for determining a target routing node and a transmission path for data transmission based on the source routing node and the destination routing node; and a transmission module for performing data transmission based on the target routing node and the transmission path.
[0008] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for executing the computer program to implement the data transmission method of any of the above-described three-level transmission networks.
[0009] This application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements the steps of the data transmission method of any of the above-described three-level transmission networks.
[0010] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described three-level transmission network data transmission methods.
[0011] This application provides a three-level transmission network that optimizes the allocation of data packet transmission paths through a specific three-level transmission network topology, avoids out-of-order data packet problems caused by path diversity, reduces the resource occupation of the receiving end buffer, simplifies network cabling design, solves the out-of-order problem in data transmission, reduces the need for the receiving end buffer, and reduces network cabling complexity. Attached Figure Description
[0012] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 A first example diagram of a three-level transmission network provided in this application embodiment;
[0014] Figure 2 A flowchart illustrating a data transmission method for a three-level transmission network provided in this application embodiment; Figure 3 A second example diagram of a three-level transmission network provided in this application embodiment; Figure 4 This is an example diagram of data transmission for the No. 0 secondary routing node provided in an embodiment of this application; Figure 5 This is an example diagram of data transmission from the No. 1 secondary routing node provided in an embodiment of this application. Figure 6 This is an example diagram of data transmission from the second-level routing node provided in an embodiment of this application. Figure 7 This is an example diagram of data transmission from the No. 3 secondary routing node provided in an embodiment of this application; Figure 8 A schematic diagram of a data transmission device for a three-level transmission network provided in an embodiment of this application; Figure 9 A schematic diagram of an electronic device provided in an embodiment of this application. Detailed Implementation
[0015] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0016] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0017] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0018] The specific application environment architecture or specific hardware architecture on which the data transmission method of the three-level transmission network depends is described here.
[0019] This application proposes a three-level transmission network: a first-level routing node group comprising K nodes, each group containing N / K first-level routing nodes, where K is a positive integer and N is a multiple of K; a second-level routing node group comprising K nodes; a first-level transmission path being the transmission path from a second-level routing node to a first-level routing node, with each second-level routing node configured with a first-level transmission path to each first-level routing node in its corresponding first-level routing node group; and a third-level routing node group comprising N / K nodes, each group containing K-1 third-level routing nodes, where K is a positive integer and N is a multiple of K; a second-level transmission path being the transmission path from a second-level routing node to a third-level routing node, with each second-level routing node configured with a second-level transmission path to each third-level routing node.
[0020] In this context, a primary routing node group can be understood as a structure that divides nodes into multiple independent groups. The purpose is to limit the connection range through grouping and avoid cross-group path selection. Specifically, the number K of primary routing node groups can be adjusted according to actual needs, for example, set to a positive integer such as 2, 4, or 8. The number of primary routing nodes N / K in each group must satisfy the condition that N is an integer multiple of K. This grouping method provides the basis for route isolation, ensuring the uniqueness of data transmission paths.
[0021] Furthermore, the number of secondary routing nodes, acting as intermediate hubs for data transmission, is the same as that of the primary routing node group, both being K. Each secondary routing node serves only its corresponding primary routing node group, thus achieving single-node forwarding of uplink data. This design avoids the possibility of multi-path selection, ensuring that data packets are not disordered due to path diversity during uplink transmission.
[0022] A primary transmission path refers to the transmission path from a secondary routing node to a primary routing node. Its characteristic is that each secondary routing node is connected only to all primary routing nodes in its corresponding primary routing node group. This connection method ensures the uniqueness of the uplink path and eliminates the possibility of transmission through other secondary nodes. For example, in practical applications, this one-to-one connection can be implemented through hardware circuit design or software logic control.
[0023] Furthermore, the design of the third-level routing node group corresponds to that of the first-level routing node group, with the same number of N / K nodes, each containing K-1 third-level routing nodes. This grouping method provides support for the determinism of the downlink path, ensuring that data has a fixed path during downlink transmission.
[0024] Furthermore, a secondary transmission path refers to the transmission path from a secondary routing node to a tertiary routing node, characterized by each secondary routing node being directly connected to all tertiary routing nodes. This fully connected design, combined with primary node grouping and connection restrictions, ensures that the data transmission path from a specific source primary node to a specific destination tertiary node is unique. For example, in practical applications, this fully connected topology can be implemented through port configuration of switches or routers.
[0025] It can be understood that both the primary and secondary transmission paths are bidirectional. That is, the primary transmission path is the transmission path between the primary and secondary routing nodes, and the secondary transmission path is the transmission path between the secondary and tertiary routing nodes.
[0026] The innovation of this application lies in the design of node grouping and connection topology, which eliminates the diversity of path selection, ensuring that data transmission from each source node to the destination node follows only one fixed path. This design solves the data out-of-order problem caused by path diversity in Clos topologies of on-chip networks, while avoiding the drawbacks of increasing the receiver buffer capacity or the complexity of network physical connections.
[0027] This three-tier transmission network ensures the uniqueness of data transmission paths through a specific node grouping and connection topology design, thereby solving the problem of data out-of-order transmission caused by path diversity. Specifically, the first-level routing node group is divided into K independent groups, each containing N / K first-level routing nodes, where K is a positive integer and N is an integer multiple of K. This grouping method divides the input nodes into multiple independent groups, limiting the connection range of each input node and avoiding the possibility of cross-group path selection, thus providing a foundation for route isolation.
[0028] Furthermore, the number of secondary routing nodes is also set to K, with each secondary routing node serving one primary routing node group. The primary transmission path is configured as the transmission path from the secondary routing node to the primary routing node, and each secondary routing node has a primary transmission path configured between itself and each primary routing node in its corresponding primary routing node group. Thus, each primary routing node can only transmit data through the secondary routing nodes of its own group, fixing the uniqueness of the uplink path and eliminating the possibility of transmission through other secondary nodes.
[0029] In the downlink direction, the tertiary routing node group is divided into N / K groups, each containing K-1 tertiary routing nodes. Secondary transmission paths are configured as transmission paths from secondary routing nodes to tertiary routing nodes, with one secondary transmission path configured between each secondary routing node and each tertiary routing node. This fully connected design, combined with the restriction that input nodes connect to only a single secondary node, ensures that the data transmission path from a specific source primary node to a specific destination tertiary node is unique; that is, data must reach its destination node directly through its corresponding secondary routing node.
[0030] The aforementioned technical features work synergistically: first-level node grouping and connections restrict the uniqueness of the uplink path, while third-level node grouping and full connectivity ensure the determinism of the downlink path. The overall structure, through group isolation and directional connections, ensures that data transmission from any source node to the destination node relies on only one fixed path, effectively preventing out-of-order data transmission. Simultaneously, this design avoids increasing the receiver's buffer capacity or the complexity of network physical connections, providing an efficient and concise solution.
[0031] This application further proposes a secondary transmission path corresponding to a three-level routing node group, used to transmit data from the primary routing nodes in the primary routing node group that correspond to the primary routing nodes in the three-level routing node group.
[0032] Specifically, a secondary transmission path refers to the data path between secondary and tertiary routing nodes, which can be implemented using preset mapping rules or logical binding relationships. In practical applications, these mapping rules can be implemented through hardware circuit configuration or software protocol definition. The purpose is to ensure that the data stream has clear path constraints during transmission, avoiding data out-of-order problems caused by path diversity.
[0033] In detail, this technical solution achieves unique control over data flow by limiting the secondary transmission path to transmit only data from primary routing nodes associated with their corresponding tertiary routing node groups. In the aforementioned tertiary transmission network, a pre-defined correspondence exists between primary and tertiary routing node groups. When data is sent from a primary routing node, it is strictly assigned to a specific secondary transmission path for forwarding based on its group affiliation and its correspondence with the tertiary routing node group. This mechanism effectively suppresses the problem of data packet disorder caused by choosing different paths, while avoiding the hardware overhead and potential risks associated with buffer reordering in traditional methods.
[0034] Furthermore, by introducing this directional correspondence, not only is the determinism of data flow direction in the network topology strengthened, but the efficiency and reliability of data transmission are also significantly improved. Based on the overall architecture of the aforementioned three-tier transmission network, this technical solution further optimizes the data flow management method, enabling the entire network to fundamentally solve the out-of-order problem caused by path diversity without adding additional hardware resources, thereby ensuring the sequential consistency of data transmission.
[0035] like Figure 1 As shown, taking N=12 and K=4 as an example, the specific steps are as follows: Step 1: Divide the 12 primary routing nodes (or simply primary nodes) into 4 groups, with each group containing 3 nodes.
[0036] Step 2: Configure 4 secondary routing nodes (or simply secondary nodes) so that the 3 primary nodes in each group are connected to the same secondary node.
[0037] Step 3: Set up 9 third-level routing nodes (referred to as third-level nodes) and divide them into 3 groups of 3 nodes each; each second-level node is fully connected to all 9 third-level nodes, that is, each second-level node is connected to the 9 third-level nodes through 9 links respectively.
[0038] Step 4: Divide the 9 links connecting each secondary node to the tertiary node into 3 parts, each part containing 3 links; each primary node can only use the corresponding 3 links when routing from the secondary node to the tertiary node.
[0039] This application also discloses a data transmission method for a three-level transmission network, applied to the aforementioned three-level transmission network, such as... Figure 2 As shown, the data transmission method includes: Step S201: Obtain a routing request, wherein the routing request includes a source routing node and a destination routing node.
[0040] Step S202: Determine the target routing node and transmission path for data transmission based on the source routing node and the destination routing node; Step S203: Perform data transmission according to the target routing node and transmission path.
[0041] The core innovation of this application lies in eliminating path selection diversity by combining connection restrictions between primary and secondary routing node groups with a fully connected design between secondary and tertiary routing nodes. Specifically, this scheme ensures that data transmission from any source node to the destination node relies on only one fixed path through group isolation and directed connections, fundamentally solving the data out-of-order problem caused by path diversity. It also avoids increasing the receiver's buffer capacity or the complexity of network physical connections, achieving both high efficiency and simplicity.
[0042] Specifically, a primary routing node group can be understood as a structure that divides input nodes into multiple independent groups. The purpose is to limit the connection range through grouping and avoid cross-group path selection. For example, the number K of primary routing node groups can be adjusted according to actual needs, while the number N / K of primary routing nodes in each group must satisfy the condition that N is an integer multiple of K. This grouping method provides the basis for route isolation, ensuring the uniqueness of data transmission paths.
[0043] Furthermore, the number of secondary routing nodes, acting as intermediate hubs for data transmission, is the same as that of the primary routing node group, both being K. Each secondary routing node serves only its corresponding primary routing node group, thus achieving single-node forwarding of uplink data. This design avoids the possibility of multi-path selection, ensuring that data packets are not disordered due to path diversity during uplink transmission.
[0044] Furthermore, the design of the third-level routing node group corresponds to that of the first-level routing node group, with the same number of N / K nodes, each containing K-1 third-level routing nodes. This grouping method provides support for the determinism of the downlink path, ensuring that data has a fixed path during downlink transmission.
[0045] Through the above technical solution, this application effectively solves the problem of out-of-order data packets caused by the diversity of paths in a three-level transmission network, while avoiding the additional overhead caused by adding buffers or physical connections in traditional methods, and provides an efficient and simple solution.
[0046] In detail, this scheme effectively solves the data out-of-order problem by establishing a deterministic association between source and destination routing nodes and the transmission path. First, utilizing the fixed location attribute of the destination routing node, when data needs to be forwarded through tertiary routing nodes, the data packet is guided to a predefined target tertiary routing node group, avoiding random path selection from multiple possible groups. Next, combining the relative position information of the source and destination routing nodes, the specific target tertiary routing node in the target tertiary routing node group is determined, making the selection of the target tertiary routing node unique and predictable for a given source-destination pair. Finally, based on the determined source and target tertiary routing nodes, the uplink data transmission path is directly defined, simplifying the routing decision-making process. This series of steps ensures that data packets of the same source-destination pair are always transmitted along the same path, thus maintaining the initial transmission order of the data packets.
[0047] Furthermore, this scheme, combined with the aforementioned three-tier transmission network, effectively solves the data out-of-order problem caused by the lack of clear rules by determining the target three-tier routing node group, specific target three-tier routing nodes, and uplink data transmission paths in the uplink direction through explicit rules. This deterministic transmission path selection method not only reduces path diversity but also prevents path switching due to different levels of congestion at secondary routing nodes, thereby significantly improving the reliability and orderliness of data transmission.
[0048] This application further proposes the following technical solution: the destination routing node includes the destination primary routing node; when the source routing node and the destination routing node are not in the same secondary routing node, the target tertiary routing node group in the uplink direction is determined according to the destination routing node, including: when the destination primary routing node is located in the first primary routing node of its primary routing node group, the corresponding target tertiary routing node group is the first tertiary routing node group; when the destination primary routing node is located in the second primary routing node of its primary routing node group, the corresponding target tertiary routing node group is the second tertiary routing node group; when the destination primary routing node is located in the third primary routing node of its primary routing node group, the corresponding target tertiary routing node group is the third tertiary routing node group.
[0049] In this context, the destination first-level routing node refers to the first-level routing node that serves as the target terminal during data transmission. It can be any first-level routing node in the network topology. In practical applications, the identification of the destination first-level routing node can be achieved through address resolution protocols or specific identifiers, with the aim of clarifying the target location of data transmission. The destination third-level routing node group refers to the set of third-level routing nodes corresponding to a specific destination first-level routing node in the uplink direction. The path selection can be fixed through a preset mapping table or algorithm.
[0050] Specifically, this scheme ensures that data flows to the same destination node always use a consistent transmission path by establishing a deterministic mapping between the destination primary routing node and the target tertiary routing node group. First, when the destination primary routing node is located at the first position in its primary routing node group, the system automatically selects the first-tertiary routing node group for data transmission. This direct location-based association ensures that all data packets destined for that location are transmitted through the same set of paths. Second, when the destination primary routing node is located at the second position, the system forcibly selects the second-tertiary routing node group. This mapping unifies the transmission path selection logic and prevents different data packets from choosing different paths due to congestion differences among secondary routing nodes. Finally, when the destination primary routing node is located at the third position, the system strictly binds it to the third-tertiary routing node group. This fixed position and group mechanism ensures that data packets always follow a preset single-path pattern during transmission.
[0051] In one example, such as Figure 3 As shown, if the source primary routing node and the destination primary routing node are located under the same secondary node, routing can be performed within the secondary routing node; if the source primary routing node and the destination primary routing node are located under different secondary routing nodes, the routing request is forwarded upward to the tertiary routing node.
[0052] If the source and destination primary routing nodes are not under the same secondary node, the route needs to be forwarded to the tertiary node. This forwarding process requires two steps: Step 1: First, determine which type of line to take based on the destination primary routing node.
[0053] like Figure 3 As shown, for a certain secondary routing node (e.g., secondary routing node 0), if the destination primary routing node is one of the primary routing nodes 0 / 4 / 8 / 12, then the secondary routing node can only forward data to the tertiary routing node from " "Forwarding to the next level only means forwarding to third-level routing nodes 0 / 1 / 2. If the destination first-level routing node is one of the first-level routing nodes 1 / 5 / 9 / 13, then forwarding from the second-level routing node to the third-level routing node can only be done from..." "Forwarding to the next level only means forwarding to third-level routing nodes 3 / 4 / 5. If the destination first-level routing node is one of the first-level routing nodes 2 / 6 / 10 / 14, then forwarding from the second-level routing node to the third-level routing node can only be done from..." "Line forwarding is only allowed up to third-level routing nodes 6 / 7 / 8. Similarly, the same applies to second-level routing nodes 1, 2, and 3. This means that routing requests destined for first-level routing nodes 0 / 4 / 8 / 12 will converge at third-level nodes 0, 1, and 2; requests destined for first-level routing nodes 1 / 5 / 9 / 13 will converge at third-level nodes 3, 4, and 5; and requests destined for first-level routing nodes 2 / 6 / 10 / 14 will converge at third-level nodes 6, 7, and 8."
[0054] Step 2: Determine which specific path to take based on the source and destination routing nodes (e.g., ...). Figure 3 (The secondary transmission path is shown).
[0055] Please refer to the following text for details.
[0056] The above technical solution replaces dynamic path selection with location-driven static mapping, fundamentally solving the data out-of-order problem caused by path diversity. Furthermore, combined with the aforementioned three-tier transmission network, this solution effectively suppresses order disruptions caused by path switching through explicit mapping rules and a fixed path selection mechanism, thereby ensuring the stability of data transmission order.
[0057] This application further proposes the following technical solution: the source routing node includes a source first-level routing node, and the destination routing node includes a destination first-level routing node; based on the source routing node and the destination routing node, the target third-level routing node used for data transmission in the target third-level routing node group is determined, including: determining the source second-level routing node corresponding to the source first-level routing node and the destination second-level routing node corresponding to the destination first-level routing node; based on the source second-level routing node and the destination second-level routing node, the target third-level routing node used for data transmission in the target third-level routing node group is determined.
[0058] Specifically, a source primary routing node refers to the node in the primary routing node group that serves as the starting point for data transmission. It can be any primary routing node, and its purpose is to define the starting position of data transmission. A destination primary routing node refers to the node in the primary routing node group that serves as the ending point for data reception. It can also be any primary routing node, and its purpose is to define the final destination of data transmission. A source secondary routing node is a secondary routing node directly connected to the source primary routing node and responsible for forwarding data. It can be located by looking up the routing table or topology. A destination secondary routing node is a secondary routing node directly connected to the destination primary routing node and responsible for forwarding data. It can also be located by looking up the routing table or topology.
[0059] Specifically, the above technical solution addresses the data out-of-order problem caused by the randomness of path selection by establishing a mapping relationship between source and destination secondary routing nodes and destination tertiary routing nodes. First, by limiting source routing nodes to source primary routing nodes and destination routing nodes to destination primary routing nodes, this design clarifies that data transmission scenarios focus on the communication needs between primary routing nodes, avoiding interference with other node types and ensuring the solution's accurate applicability in specific contexts. Second, by identifying the location of primary nodes within the secondary network, the topological relationship between source and destination nodes is transformed into identification information for secondary routing nodes, providing structured input for path selection. This transformation utilizes secondary routing nodes as intermediate hubs, capturing key characteristics of network congestion status and topological location, so that path decisions no longer rely on direct connections between primary nodes but are based on a more stable secondary network hierarchy, thereby reducing the arbitrariness of path selection. Finally, a unique target tertiary routing node is dynamically calculated based on the relative relationship between the source and destination secondary routing nodes. The path selection is logically bound to the source and destination secondary routing nodes, ensuring that data packets with the same source and destination node pair always select the same transmission path. This fundamentally suppresses the transmission delay differences caused by path diversity, thereby effectively avoiding the occurrence of out-of-order data.
[0060] Building upon this, the aforementioned technical solution, combined with the overall architecture of the three-tier transmission network, further enhances the reliability of data transmission. By using the relative relationship between the source and destination secondary routing nodes as the core basis, not only is path selection consistent, but a scalable decision-making framework is also provided for subsequent specific rules such as mathematical expressions based on the number of secondary routing nodes, thereby enhancing the flexibility and adaptability of the solution.
[0061] This application further proposes a method for determining the target tertiary routing node used for data transmission in the target tertiary routing node group based on the source tertiary routing node and the destination tertiary routing node, which is implemented by the following expression: output= , Where K is the number of secondary routing nodes, output is the number of tertiary routing nodes, S3 is the source secondary routing node, and D3 is the destination secondary routing node.
[0062] Specifically, `output` refers to the index value of the target tertiary routing node, such as indicating which tertiary routing node is in the group of tertiary routing nodes. This can be calculated using a mathematical expression. In practical applications, this expression can dynamically generate the index of the target tertiary routing node based on the relative positions of the source and destination tertiary routing nodes, ensuring the uniqueness and consistency of each calculation result. Here, `S3` represents the index value of the source tertiary routing node, which can be any positive integer, used to identify the starting position of the current data transmission; `D3` represents the index value of the destination tertiary routing node, also a positive integer, used to identify the ending position of the data transmission; and `K` represents the total number of tertiary routing nodes, its value determined by the network size, used to provide boundary conditions for loop processing in the expression.
[0063] In detail, the above technical solution precisely calculates the index value of the target tertiary routing node using mathematical expressions, thereby ensuring the uniqueness and consistency of the data transmission path. When the index of the destination tertiary routing node is less than the index of the source tertiary routing node, a calculation method of S3 minus D3 followed by one is used. This processing mechanism based on the decreasing index difference effectively avoids the randomness of path selection. When the index of the destination tertiary routing node is greater than the index of the source tertiary routing node, a calculation method of K minus one plus S3 minus D3 is used. This cyclical processing mechanism, which incorporates the total number of tertiary nodes, ensures that the index difference is always within a valid range, keeping the selection of the target tertiary routing node reasonable. In this way, data packets from the same source to the same destination are always transmitted via the same path, fundamentally eliminating the risk of data order disorder caused by inconsistent routing node selection.
[0064] Furthermore, combining the above method with the configuration of primary, secondary, and tertiary routing node groups and transmission paths can adapt to the needs of different network scales. For example, in a multi-level transmission network, by dynamically calculating the index value of the target tertiary routing node, the uniqueness of data transmission paths in both the uplink and downlink directions can be ensured, thereby avoiding data out-of-order problems caused by path diversity. This method not only simplifies network design but also significantly improves the reliability and efficiency of data transmission.
[0065] This application further proposes a method for determining the target third-level routing node used for data transmission in the target third-level routing node group, including: when the source second-level routing node corresponding to the source first-level routing node is a first second-level routing node, and the destination second-level routing node corresponding to the destination first-level routing node is a second second-level routing node, the target third-level routing node is the third third-level routing node in the target third-level routing node group to which the target third-level routing node belongs; when the source second-level routing node corresponding to the source first-level routing node is a first second-level routing node, and the destination second-level routing node corresponding to the destination first-level routing node is a third second-level routing node, the target third-level routing node is the second third-level routing node in the target third-level routing node group to which the target third-level routing node belongs; when the source second-level routing node corresponding to the source first-level routing node is a first second-level routing node, and the destination second-level routing node corresponding to the destination first-level routing node is a fourth second-level routing node, the target third-level routing node is the first third-level routing node in the target third-level routing node group to which the target third-level routing node belongs.
[0066] Specifically, the source primary routing node is the initial routing node that initiates the data transmission request; it can be implemented using any network device with data transmission capabilities. The destination primary routing node is the target routing node that receives the data transmission request; it can be implemented using any network device with data reception capabilities. The source secondary routing node and the destination secondary routing node are intermediate routing nodes directly connected to the source primary routing node and the destination primary routing node, respectively; their purpose is to assist in path selection by clearly identifying the identity of the intermediate nodes. The destination tertiary routing node is the specific tertiary routing node ultimately used to complete the data transmission task; its purpose is to ensure that data packets are transmitted along a unique predefined path, thereby avoiding out-of-order issues caused by path switching.
[0067] In detail, this scheme resolves ambiguity in routing decisions by transforming abstract mathematical expressions into explicit mapping rules for specific node combinations, ensuring the determinism of data transmission paths and maintaining sequential consistency. When the source level-one routing node corresponds to a source level-two routing node that is a first-level routing node and the destination level-one routing node corresponds to a destination level-two routing node that is a second-level routing node, the target level-three routing node is designated as the third-level routing node. This rule directly locks a specific level-three node based on the relative positions of the source and destination level-two nodes, avoiding potential index offset errors when calculating the output value under the condition D3>S3, thus forcing data packets to be transmitted along a unique predefined path in this scenario. When the destination level-two routing node is third, the second- or third-level routing node is selected, ensuring that different destination nodes trigger differentiated routing paths, effectively distributing traffic load and maintaining the continuity of the data packet sequence. When the destination level-two routing node is fourth, the first- or third-level routing node is selected, making the routing decision fully adaptable to the actual hardware implementation requirements, fundamentally reducing transmission errors caused by computational uncertainty. Furthermore, the above method combines the relative position information of the source node and the destination node, making full use of the characteristics of the network topology, thereby ensuring the consistency of data transmission order while guaranteeing path diversity.
[0068] This application further proposes a method for determining the target tertiary routing node used for data transmission within the target tertiary routing node group based on the source tertiary routing node and the destination tertiary routing node. When the source tertiary routing node corresponding to the source tertiary routing node is a second-level tertiary routing node, and the destination tertiary routing node corresponding to the destination tertiary routing node is a first-level tertiary routing node, the target tertiary routing node is the first-level tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs. When the source tertiary routing node corresponding to the source tertiary routing node is a second-level tertiary routing node, and the destination tertiary routing node corresponding to the destination tertiary routing node is a third-level tertiary routing node, the target tertiary routing node is the third-level tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs. When the source tertiary routing node corresponding to the source tertiary routing node is a second-level tertiary routing node, and the destination tertiary routing node corresponding to the destination tertiary routing node is a fourth-level tertiary routing node, the target tertiary routing node is the second-level tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs.
[0069] Specifically, a source secondary routing node is an intermediate layer node in a tertiary transmission network responsible for receiving data from primary routing nodes and forwarding it to tertiary routing nodes. It can implement path selection and forwarding functions for data packets through hardware circuits or software algorithms, aiming to ensure that data is delivered to the destination node efficiently and accurately. A destination secondary routing node is the secondary routing node to which the data packet ultimately needs to reach; it can use similar techniques to process received data packets. A destination tertiary routing node is a node selected from the tertiary routing node group to complete a specific data transmission task; its selection rules directly affect the uniqueness and consistency of the data transmission path.
[0070] In detail, the above method effectively solves the data out-of-order problem caused by path diversity by explicitly defining the specific path selection rules when the source secondary routing node is a second-secondary routing node. Specifically, when the source secondary routing node corresponding to the source primary routing node is a second-secondary routing node and the destination secondary routing node is a first-secondary routing node, the target tertiary routing node is designated as a first-third-third routing node. This rule, based on the relative index relationship between the source and destination nodes, ensures that all such transmissions use a unique path, avoiding data packet order disorder caused by congestion differences among secondary nodes. When the destination secondary routing node is a third-secondary routing node, the target tertiary routing node is designated as a third-third-third routing node. This rule dynamically maps to a specific tertiary node based on the index difference between the source and destination nodes, ensuring that data packets of the same source-destination pair are always transmitted along a consistent path, maintaining the initial transmission order. When the destination secondary routing node is a fourth secondary routing node, the destination tertiary routing node is designated as a second or third secondary routing node. This rule covers scenarios with highly indexed destination nodes. By associating the source node location with the destination node location to the precise tertiary routing node index, the ambiguity of path selection is completely eliminated, ensuring the integrity of the data packet order during transmission. These rules work together to achieve unambiguous path selection in various transmission scenarios where the source node is a second or second secondary routing node, fundamentally avoiding the out-of-order defects caused by path diversity in traditional Clos networks.
[0071] This application further proposes that when the source secondary routing node corresponding to the source primary routing node is the third secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the first secondary routing node, the target tertiary routing node is the second or third secondary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is the third secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the second secondary routing node, the destination tertiary routing node is the first tertiary routing node in the destination tertiary routing node group to which the destination tertiary routing node belongs; When the source level 1 routing node corresponds to the source level 2 routing node which is the third level 2 routing node, and the destination level 1 routing node corresponds to the destination level 2 routing node which is the fourth level 2 routing node, the destination level 3 routing node is the third level 3 routing node in the destination level 3 routing node group to which the destination level 3 routing node belongs.
[0072] The target third-level routing node refers to a specific third-level routing node selected for relay during data transmission. Its selection can be achieved through a preset rule table, logical judgment circuit, or algorithm-based dynamic allocation mechanism. The purpose is to ensure the determinism and consistency of path selection and avoid data packet out-of-order problems caused by path uncertainty.
[0073] Specifically, this scheme defines a selection rule for target tertiary routing nodes corresponding to different destination tertiary routing nodes, specifically for scenarios where the source secondary routing node is a tertiary secondary routing node. When the source secondary routing node corresponding to the source primary routing node is a tertiary secondary routing node and the destination secondary routing node corresponding to the destination primary routing node is a primary secondary routing node, the tertiary secondary routing node in the target tertiary routing node group is always selected as the transmission node. This rule ensures that the data flow from the third source node to the first destination node always uses the second intermediate node for transmission, thereby avoiding path conflicts with other data flows and maintaining the initial transmission order of data packets. Furthermore, when the source secondary routing node corresponding to the source primary routing node is a tertiary secondary routing node and the destination secondary secondary routing node corresponding to the destination primary routing node is a tertiary secondary routing node, the tertiary secondary routing node in the target tertiary routing node group is selected as the transmission node. This rule specifies a unique path for the data flow from the third source node to the second destination node, preventing order disorder caused by path diversity. Finally, when the source secondary routing node corresponding to the source primary routing node is the third secondary routing node and the destination secondary routing node corresponding to the destination primary routing node is the fourth secondary routing node, the third secondary routing node in the target tertiary routing node group is selected as the transmission node. This rule assigns a fixed intermediate node to the data flow from the third source node to the fourth destination node, further strengthening the determinism of path selection, ensuring that the data transmission process strictly follows the preset order, and effectively avoiding the risk of out-of-order transmission.
[0074] The above technical solution not only solves the problem of out-of-order data packets caused by path selection uncertainty, but also optimizes the utilization efficiency of network resources and improves overall transmission performance. Furthermore, combined with the aforementioned three-tier transmission network architecture, this solution further enhances the stability and reliability of the network topology, providing strong support for the application of large-scale on-chip networks.
[0075] This application further proposes an implementation method for determining the target tertiary routing node used for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node. It also includes: when the source secondary routing node corresponding to the source primary routing node is the fourth secondary routing node and the destination secondary routing node corresponding to the destination primary routing node is the third secondary routing node, the target tertiary routing node is the first tertiary routing node in the target tertiary routing node group where the target tertiary routing node is located.
[0076] Specifically, a source secondary routing node refers to a routing node located at the second level of the network topology. Its main function is to receive data from the first-level routing nodes and forward it to the next-level nodes. In practical applications, source secondary routing nodes can be implemented using hardware-based switching chips or software-defined networking (SDN)-based virtual routing nodes, with the aim of clearly defining the starting transmission location of data packets. A destination secondary routing node, on the other hand, refers to the target node that the data packet needs to reach at the second level. Its role is to identify the destination area of the data packet. This node can also be implemented using dedicated hardware devices or virtualization technology, aiming to ensure that data packets accurately reach the designated area.
[0077] In detail, the selection rule for the target tertiary routing node optimizes path allocation by mapping the numbering relationship between the source and destination tertiary routing nodes to specific tertiary routing nodes. Specifically, when the source tertiary routing node is the fourth tertiary routing node and the destination tertiary routing node is the third tertiary routing node, the target tertiary routing node must be a first-tertiary routing node. This design ensures that data packets are always transmitted along a fixed path in specific scenarios, avoiding ordering problems caused by path diversity. Furthermore, this rule, combined with path selection logic under other node combinations, constitutes a complete routing strategy, enabling the entire network to maintain efficient and orderly data transmission capabilities in different scenarios.
[0078] By employing the aforementioned technical solution, and specifically addressing the scenario where the source secondary routing node is the fourth and the destination secondary routing node is the third, the selection rules for the target tertiary routing node are clearly defined, ensuring the uniqueness and determinism of the data transmission path. This not only effectively resolves the path selection ambiguity caused by unclear node number mapping relationships but also significantly reduces the possibility of data out-of-order delivery, thereby improving the overall network transmission efficiency and reliability.
[0079] In one example, the routing requests of the source secondary routing node (S3) and the destination secondary routing node (D3) are enumerated, and the results are shown in Table 1 below. As can be seen from Table 1, there are no duplicate output ports in each row and column of the table. The transmission path between the secondary routing node and the tertiary routing node is a dedicated transmission path. Thus, the topology and routing algorithm can achieve the purpose of data order preservation.
[0080] Table 1
[0081] In Table 1, S3 represents the secondary routing node information corresponding to the source primary routing node, and D3 represents the secondary routing node information corresponding to the destination primary routing node.
[0082] For secondary routing nodes, the first step is to determine the type of line to take based on the destination routing node (this has been explained in detail above and will not be repeated here). The second step is to determine the specific line to take based on the source and destination routing nodes (e.g., ...). Figure 3 The secondary transmission path shown has already been described, and will not be repeated here. Figures 4-7 As shown, for the same source primary routing node input port, there are 9 possible transmission paths when the secondary routing node transmits to the tertiary routing node, corresponding to 9 different destination primary nodes (the tertiary routing node selection expression and Table 1 can be used to obtain them).
[0083] like Figure 4 As shown, when the secondary routing node corresponding to the source primary routing node is 0, the process of selecting the uplink routing node and the secondary transmission path is as follows: When the source primary routing node is any of the primary routing nodes 0-2, there is a unique primary transmission path to the corresponding secondary routing node. When selecting the appropriate secondary transmission path, it is necessary to confirm based on the destination primary routing node.
[0084] If the destination primary routing node is 4, then the secondary transmission path group 0 is selected (e.g., ...). Figure 4 (Bold solid lines 4, 8, and 12). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (0) corresponding to the source primary routing node and the destination secondary transmission node (1) corresponding to the destination primary routing node (4). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 4 (e.g., ...). Figure 4 (As shown).
[0085] If the destination primary routing node is 5, then secondary transmission path group 1 is selected (e.g., ...). Figure 4 (Bold dashed lines 5, 9, and 13). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (0) corresponding to the source primary routing node and the destination secondary transmission node (1) corresponding to the destination primary routing node (5). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 5 (e.g., ...). Figure 4 (As shown).
[0086] I can understand. Figure 4The secondary transmission paths have been marked when the source secondary routing node corresponding to the source primary routing node is 0, and the destination primary routing nodes are (4-6, 8-10, 12-14).
[0087] like Figure 5 As shown, when the secondary routing node corresponding to the source primary routing node is 1, the process of selecting the uplink routing node and the secondary transmission path is as follows: When the source primary routing node is any of the primary routing nodes 4-6, there is a unique primary transmission path to the corresponding secondary routing node. When selecting the appropriate secondary transmission path, it is necessary to confirm based on the destination primary routing node.
[0088] If the destination primary routing node is 0, then secondary transmission path group 0 is selected (e.g., ...). Figure 5 (Bold solid lines 0, 8, and 12). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (0) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (5). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 0 (e.g., ...). Figure 5 (As shown).
[0089] If the destination primary routing node is 1, then secondary transmission path group 1 is selected (e.g., ...). Figure 5 (Bold dashed lines 1, 9, and 13). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (1) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (1). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 0 (e.g., ...). Figure 5 (As shown).
[0090] I can understand. Figure 5 The secondary transmission paths have been marked when the source secondary routing node corresponding to the source primary routing node is 1, and the destination primary routing nodes are (0-2, 8-10, 12-14).
[0091] like Figure 6 As shown, when there are 2 secondary routing nodes corresponding to the source primary routing node, the process of selecting the uplink routing node and the secondary transmission path is as follows: When the source primary routing node is any of the primary routing nodes 8-10, there is a unique primary transmission path to the corresponding secondary routing node. When selecting the appropriate secondary transmission path, it is necessary to confirm based on the destination primary routing node.
[0092] If the destination primary routing node is 0, then secondary transmission path group 0 is selected (e.g., ...). Figure 6(Bold solid lines 0, 4, and 12). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (2) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (0). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 0 (e.g., ...). Figure 6 (As shown).
[0093] If the destination primary routing node is 1, then secondary transmission path group 1 is selected (e.g., ...). Figure 5 (Bold dashed lines 1, 5, and 13). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (2) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (1). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 1 (e.g., ...). Figure 6 (As shown).
[0094] I can understand. Figure 6 The secondary transmission paths have been marked when the source secondary routing node corresponding to the source primary routing node is 2, and the destination primary routing nodes are (0-2, 4-6, 12-14).
[0095] like Figure 7 As shown, when the secondary routing node corresponding to the source primary routing node is 3, the process of selecting the uplink routing node and the secondary transmission path is as follows: When the source primary routing node is any of the primary routing nodes 12-14, there is a unique primary transmission path to the corresponding secondary routing node. When selecting the appropriate secondary transmission path, it is necessary to confirm based on the destination primary routing node.
[0096] If the destination primary routing node is 0, then secondary transmission path group 0 is selected (e.g., ...). Figure 7 (Bold solid lines 0, 4, and 8). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (3) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (0). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 0 (e.g., ...). Figure 7 (As shown).
[0097] If the destination primary routing node is 1, then secondary transmission path group 1 is selected (e.g., ...). Figure 7 (Bold dashed lines 1, 5, and 9). When determining the specific secondary transmission path within this secondary transmission path group, it is necessary to first confirm the source secondary transmission node (3) corresponding to the source primary routing node and the destination secondary transmission node (0) corresponding to the destination primary routing node (1). Subsequently, according to Table 1, the secondary transmission path in the uplink direction is path 1 (e.g., ...). Figure 7(As shown).
[0098] I can understand. Figure 7 The secondary transmission paths have been marked when the source secondary routing node corresponding to the source primary routing node is 3, and the destination primary routing nodes are (0-2, 4-6, 8-10).
[0099] This application further proposes the following technical solution: the source routing node includes a source level 3 routing node, the destination routing node includes a destination level 1 routing node, and the target routing node and transmission path for data transmission are determined based on the source routing node and the destination routing node. It also includes: determining the downlink data transmission path based on the source level 3 routing node and the destination level 1 routing node.
[0100] Specifically, a source tertiary routing node refers to the starting transmission node in the tertiary routing node group. It can be any clearly identified node in the tertiary routing node group, used to provide the starting point for downlink data transmission. In practical applications, each source tertiary routing node can be accurately located by assigning a unique address or number, ensuring that the starting position of downlink data transmission is clear and unique. A destination primary routing node refers to the target transmission node in the primary routing node group. It can be any clearly identified node in the primary routing node group, used to define the destination of downlink data transmission. In practical applications, each destination primary routing node can also be accurately located by assigning a unique address or number, ensuring that the target of downlink data transmission is clear and fixed. The downlink data transmission path refers to the transmission path from the source tertiary routing node to the destination primary routing node. It can be generated by a preset routing algorithm or rule, specifically using the shortest path algorithm. Its purpose is to ensure that data packets choose a consistent path during transmission, avoiding data out-of-order problems caused by path diversity.
[0101] In detail, this technical solution introduces a downlink data transmission path determination mechanism to specifically handle transmission scenarios where the source routing node is a third-level routing node and the destination routing node is a first-level routing node. This ensures the consistency of the data transmission path and avoids data out-of-order issues. Specifying the source routing node, including the source third-level routing node, clarifies that the transmission start point is located at the third-level routing node, providing a clear starting position for downlink transmission and avoiding path diversity caused by ambiguity in path selection. Specifying the destination routing node, including the destination first-level routing node, defines that the transmission endpoint is located at the first-level routing node, ensuring a clear target for downlink transmission and preventing path conflicts caused by an uncertain endpoint. When determining the target routing node and transmission path for data transmission, a step is added to determine the downlink data transmission path based on the source third-level routing node and the destination first-level routing node. This allows the system to dynamically generate a consistent transmission path based on the specific locations of the source and destination. By constraining the path selection rules based on the source third-level and destination first-level routing nodes, it effectively prevents congestion differences caused by data packets selecting different second-level routing nodes, thereby maintaining the data packet transmission order and solving the data out-of-order defects caused by path diversity in the background technology. Furthermore, this technical solution, combined with the aforementioned three-tier transmission network, utilizes existing routing nodes and transmission path configurations within the network structure to further optimize data transmission efficiency and reliability, ensuring the stable operation of the entire network.
[0102] This application further proposes a method for determining the downlink data transmission path based on the source tertiary routing node and the destination primary routing node, including: if the source tertiary routing node belongs to the first tertiary routing node group and the destination primary routing node is the first primary routing node in the primary routing node group to which the destination primary routing node belongs, then the transmission path between the source tertiary routing node and the destination primary routing node is used as the first downlink transmission path for data transmission.
[0103] Specifically, a source 3rd-level routing node refers to a routing node located at the third level in a 3-level transmission network. It can be a hardware device or virtualization module with a specific identifier, used to receive data from the upper-layer network and forward it to the target terminal. A destination 1st-level routing node refers to a terminal node with a clearly defined location number within the 1st-level routing node group; its location information is unique within the network topology. The first downlink transmission path can be understood as a pre-defined fixed transmission channel, implemented through network configuration files or routing table entries.
[0104] In detail, this scheme achieves a deterministic transmission path selection mechanism by establishing a static mapping relationship between source node groups and destination node locations. During actual operation, when a data packet is detected originating from a node in the first or third-level routing node group and the destination is the first node in the first-level routing node group, the system automatically matches a preset first downlink transmission path. This path selection method based on topology attributes completely avoids the path uncertainty problem caused by dynamic factors in traditional methods. Furthermore, because the path selection rules are closely integrated with the overall network structure design, this scheme can form a good compatibility with the aforementioned three-level transmission network architecture, thus maintaining the consistency of data transmission order while also preserving the overall performance stability of the network.
[0105] The above technical solution not only effectively solves the problem of disordered data packet transmission, but also avoids the resource consumption and network congestion risks caused by setting buffers, providing a more reliable solution for data transmission in on-chip networks.
[0106] This application further proposes a scheme for determining the downlink data transmission path, specifically including: if the source third-level routing node belongs to the second- or third-level routing node group, and the destination first-level routing node is the second-level routing node in the first-level routing node group to which the destination first-level routing node belongs, then the transmission path between the source third-level routing node and the destination first-level routing node is used as the second downlink transmission path for data transmission.
[0107] Specifically, a source tertiary routing node refers to a specific node within a tertiary routing node group. It performs data forwarding functions within the network and can be implemented using hardware routers or software-defined network nodes. A destination tertiary routing node refers to the target node receiving the data. It also possesses data processing capabilities and can be implemented through configuring static routing tables or dynamic routing protocols. The purpose of introducing these constraints is to clarify the specific scenarios of data transmission, thereby providing a clear basis for path selection.
[0108] In detail, this scheme constructs a deterministic path selection mechanism by combining the location information of the source and destination nodes. When the source tertiary routing node belongs to a group of tertiary and secondary routing nodes, this constraint clearly defines the starting area of the data flow, allowing path planning to focus on the topological characteristics within that group. Simultaneously, when the destination primary routing node is a secondary routing node within its own primary routing node group, this constraint further refines the relative order of the target location, providing precise guidance for path matching. Based on the joint judgment of these two conditions, the system directly designates the second downlink transmission path as a fixed transmission channel, rather than relying on dynamic routing algorithms. This design effectively avoids the packet out-of-order problem caused by path diversity, ensuring that multiple packets in the same data flow are always transmitted along the same path. Furthermore, combined with the overall architecture of the aforementioned three-tier transmission network, this scheme leverages the advantages of network layering design to further improve the reliability and efficiency of data transmission, solving the technical challenge of data out-of-order transmission.
[0109] This application further proposes a method for determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node, which also includes: if the source third-level routing node belongs to the third third-level routing node group, and the destination first-level routing node is the third first-level routing node in the first-level routing node group to which the destination first-level routing node belongs, then the transmission path between the source third-level routing node and the destination first-level routing node is used as the third downlink transmission path for data transmission.
[0110] Specifically, a source tertiary routing node refers to a specific routing node located in a tertiary routing node group, possessing a clear group identifier in the network topology. In practical applications, tertiary routing nodes in different groups can be distinguished by node numbers or address information. A destination primary routing node refers to a specific node with a fixed location index within a primary routing node group, its location information identified by its group number or logical address. The purpose of this method is to ensure the orderly transmission of data packets in a specific scenario by predefining fixed transmission paths between specific node combinations.
[0111] In detail, when the source third-level routing node belongs to the third-level routing node group, this condition clarifies the starting point packet information for data transmission. The destination first-level routing node, being a third-level routing node within its own first-level routing node group, thus locks the destination location for data transmission. Based on these two conditions, the system can uniquely determine a dedicated third-level downlink transmission path. This path determination method avoids packet out-of-order issues caused by congestion differences among second-level routing nodes and reduces reliance on buffer resources. Furthermore, combined with the overall architecture of the aforementioned three-level transmission network, this scheme effectively solves the problem of uncontrollable transmission order caused by path diversity by strictly limiting the transmission paths between specific nodes, thereby improving the reliability and efficiency of network transmission.
[0112] In summary, the above technical solutions not only ensure the uniqueness of data transmission paths in specific scenarios, but also significantly reduce the risk of out-of-order transmission caused by the randomness of path selection, providing a strong guarantee for the efficient and stable operation of on-chip networks.
[0113] This application further proposes a method for determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node, which also includes: if the source third-level routing node belongs to the fourth third-level routing node group, and the destination first-level routing node is the fourth first-level routing node in the first-level routing node group to which the destination first-level routing node belongs, then the transmission path between the source third-level routing node and the destination first-level routing node is used as the fourth downlink transmission path for data transmission.
[0114] Specifically, the fourth level 3 routing node group refers to a set of nodes with specific affiliation attributes within a level 3 routing node group. This can be achieved by grouping and numbering the level 3 routing nodes. In practical applications, this grouping can be based on physical location, logical function, or topology, with the aim of limiting the scope of application of path selection rules. The fourth level 1 routing node refers to a node with a clear identifier within its own level 1 routing node group, which can be identified through node numbering, address mapping, or location indexing. Furthermore, the fourth downlink transmission path refers to a fixed transmission link directly established between the source level 3 routing node and the destination level 1 routing node. This can be achieved by configuring static routing tables, setting up dedicated links, or predefined path rules, with the aim of ensuring that data packets are transmitted along a single path and avoiding out-of-order issues caused by path diversity.
[0115] In detail, the above method constructs a precise matching mechanism by combining source node group affiliation information and target node location information, thereby effectively suppressing the path diversity problem in downlink data transmission. Specifically, when it is identified that the source third-level routing node belongs to the fourth third-level routing node group, this affiliation information serves as a key input condition, limiting the path selection rules to only specific scenarios and avoiding conflicts caused by rule generalization. Simultaneously, by determining the specific location of the destination first-level routing node within its own first-level routing node group as the fourth first-level routing node, this location identification mechanism provides a basis for path fixation. Based on this, the direct transmission path between the source third-level routing node and the destination first-level routing node is designated as the fourth downlink transmission path, excluding the possibility of other indirect paths and forcing data packets to be transmitted along a single link. This dual-constraint mechanism not only specifically addresses the uncertainty of path selection in specific scenarios but also fundamentally eliminates the problem of sequential disorder caused by different data packets choosing different paths, ensuring the temporal consistency of data transmission.
[0116] Furthermore, the above scheme, combined with the overall architecture of the aforementioned three-tier transmission network, further enhances the reliability of data transmission. By introducing explicit path selection rules into the three-tier transmission network, not only is the efficiency of downlink data transmission optimized, but the risk of out-of-order transmission caused by path diversity is also significantly reduced, thus providing an efficient and stable solution for data transmission in large-scale on-chip networks.
[0117] In one example, such as Figure 3 As shown, when the third-level routing node and the destination first-level routing node are determined, the unique downlink data transmission path can be determined.
[0118] Embodiments of this application also provide a data transmission device for a three-level transmission network, such as... Figure 8 As shown, the data transmission device includes: The acquisition module is used to acquire routing requests, which include source routing nodes and destination routing nodes; The determination module is used to determine the target routing node and transmission path for data transmission based on the source routing node and the destination routing node; The transmission module is used to transmit data according to the target routing node and transmission path.
[0119] For a description of the features in the embodiment corresponding to the data transmission device of the three-level transmission network, please refer to the relevant description in the embodiment corresponding to the data transmission method of the three-level transmission network, which will not be repeated here.
[0120] Embodiments of this application also provide an electronic device, such as... Figure 9 As shown, it includes a memory 10 and a processor 20. The memory 10 stores a computer program, and the processor 20 is configured to run the computer program to perform the steps in any of the above-described embodiments of the data transmission method for a three-level transmission network.
[0121] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described embodiments of the data transmission method for a three-level transmission network.
[0122] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0123] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described embodiments of the data transmission method for a three-level transmission network.
[0124] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described three-level transmission network data transmission method embodiments.
[0125] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0126] The foregoing has provided a detailed description of a three-level transmission network, data transmission method, apparatus, device, medium, and product provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A three-level transmission network, characterized in that, The three-level transmission network includes: A primary routing node group, wherein the primary routing node group comprises K nodes, and each primary routing node group comprises N / K primary routing nodes, where K is a positive integer and N is an integer multiple of K; Secondary routing nodes, wherein the secondary routing nodes include K nodes; A primary transmission path, wherein the primary transmission path is the transmission path from the secondary routing node to the primary routing node, and each secondary routing node is configured with a primary transmission path between itself and each primary routing node in the corresponding primary routing node group; A three-level routing node group, wherein the three-level routing node group comprises N / K nodes, and each group of the three-level routing node group comprises K-1 three-level routing nodes, where K is a positive integer and N is an integer multiple of K; A secondary transmission path is configured between each secondary routing node and each tertiary routing node.
2. The three-level transmission network according to claim 1, characterized in that, The secondary transmission path corresponding to the third-level routing node group is used to transmit data of the first-level routing node in the first-level routing node group that corresponds to the third-level routing node group.
3. A data transmission method for a three-level transmission network, characterized in that, Applied to any of the three-level transmission networks described in claims 1-2, the data transmission method includes: Obtain a routing request, wherein the routing request includes a source routing node and a destination routing node; Based on the source routing node and the destination routing node, determine the target routing node and transmission path for data transmission; Data transmission is performed based on the target routing node and transmission path.
4. The data transmission method according to claim 3, characterized in that, The step of determining the target routing node and transmission path for data transmission based on the source routing node and the destination routing node includes: If the source routing node and the destination routing node are not in the same secondary routing node, the target tertiary routing node group in the uplink direction is determined based on the destination routing node; Based on the source routing node and the destination routing node, determine the target third-level routing node used for data transmission in the target third-level routing node group; The uplink data transmission path is determined based on the source routing node and the target third-level routing node.
5. The data transmission method according to claim 4, characterized in that, The destination routing node includes the destination primary routing node; The step of determining the target third-level routing node group in the uplink direction based on the destination routing node includes: When the destination primary routing node is located in the first primary routing node of its primary routing node group, the corresponding target tertiary routing node group is the first tertiary routing node group; When the destination primary routing node is located in the second primary routing node in its primary routing node group, the corresponding target tertiary routing node group is the second-third routing node group; When the destination primary routing node is located as the third primary routing node in its primary routing node group, the corresponding target tertiary routing node group is the third tertiary routing node group.
6. The data transmission method according to claim 4, characterized in that, The source routing node includes a source first-level routing node, and the destination routing node includes a destination first-level routing node; The step of determining the target third-level routing node for data transmission in the target third-level routing node group based on the source routing node and the destination routing node includes: Determine the source secondary routing node corresponding to the source primary routing node and the destination secondary routing node corresponding to the destination primary routing node; Based on the source secondary routing node and the destination secondary routing node, determine the target tertiary routing node used for data transmission in the target tertiary routing node group.
7. The data transmission method according to claim 6, characterized in that, The step of determining the target tertiary routing node for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node is achieved through the following expression: output= , Where K is the number of secondary routing nodes, output is the number of tertiary routing nodes, S3 is the source secondary routing node, and D3 is the destination secondary routing node.
8. The data transmission method according to claim 7, characterized in that, The step of determining the target tertiary routing node for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node includes: When the source secondary routing node corresponding to the source primary routing node is a first secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a second secondary routing node, the target tertiary routing node is the third tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is a first secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a third secondary routing node, the target tertiary routing node is the second or third secondary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is the first secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the fourth secondary routing node, the target tertiary routing node is the first tertiary routing node in the target tertiary routing node group to which the target tertiary routing node is located.
9. The data transmission method according to claim 7, characterized in that, The step of determining the target tertiary routing node for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node further includes: When the source secondary routing node corresponding to the source primary routing node is a second secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a first secondary routing node, the target tertiary routing node is the first tertiary routing node in the target tertiary routing node group to which the target tertiary routing node is located; When the source secondary routing node corresponding to the source primary routing node is a second secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a third secondary routing node, the target tertiary routing node is the third tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is a second secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a fourth secondary routing node, the target tertiary routing node is the second tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs.
10. The data transmission method according to claim 7, characterized in that, The step of determining the target tertiary routing node for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node further includes: When the source secondary routing node corresponding to the source primary routing node is a third secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a first secondary routing node, the target tertiary routing node is a second or third secondary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is a third secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is a second secondary routing node, the target tertiary routing node is the first tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is the third secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the fourth secondary routing node, the target tertiary routing node is the third tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs.
11. The data transmission method according to claim 7, characterized in that, The step of determining the target tertiary routing node for data transmission in the target tertiary routing node group based on the source secondary routing node and the destination secondary routing node further includes: When the source secondary routing node corresponding to the source primary routing node is the fourth secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the first secondary routing node, the target tertiary routing node is the third tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is the fourth secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the second secondary routing node, the target tertiary routing node is the second tertiary routing node in the target tertiary routing node group to which the target tertiary routing node belongs; When the source secondary routing node corresponding to the source primary routing node is the fourth secondary routing node, and the destination secondary routing node corresponding to the destination primary routing node is the third secondary routing node, the target tertiary routing node is the first tertiary routing node in the target tertiary routing node group to which the target tertiary routing node is located.
12. The data transmission method according to claim 3, characterized in that, The source routing nodes include source level 3 routing nodes, and the destination routing nodes include destination level 1 routing nodes. The step of determining the target routing node and transmission path for data transmission based on the source routing node and the destination routing node further includes: The downlink data transmission path is determined based on the source level 3 routing node and the destination level 1 routing node.
13. The data transmission method according to claim 12, characterized in that, The step of determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node includes: If the source tertiary routing node belongs to the first tertiary routing node group, and the destination primary routing node is the first primary routing node in the primary routing node group to which the destination primary routing node belongs, then the transmission path between the source tertiary routing node and the destination primary routing node will be used as the first downlink transmission path for data transmission.
14. The data transmission method according to claim 12, characterized in that, The step of determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node further includes: If the source tertiary routing node belongs to the second or third tertiary routing node group, and the destination primary routing node is the second primary routing node in the primary routing node group to which the destination primary routing node belongs, then the transmission path between the source tertiary routing node and the destination primary routing node will be used as the second downlink transmission path for data transmission.
15. The data transmission method according to claim 12, characterized in that, The step of determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node further includes: If the source tertiary routing node belongs to the third tertiary routing node group, and the destination primary routing node is the third primary routing node in the primary routing node group to which the destination primary routing node belongs, then the transmission path between the source tertiary routing node and the destination primary routing node will be used as the third downlink transmission path for data transmission.
16. The data transmission method according to claim 12, characterized in that, The step of determining the downlink data transmission path based on the source third-level routing node and the destination first-level routing node further includes: If the source tertiary routing node belongs to the fourth tertiary routing node group, and the destination primary routing node is the fourth primary routing node in the primary routing node group to which the destination primary routing node belongs, then the transmission path between the source tertiary routing node and the destination primary routing node will be used as the fourth downlink transmission path for data transmission.
17. A data transmission device for a three-level transmission network, characterized in that, include: The acquisition module is used to acquire routing requests, wherein the routing requests include source routing nodes and destination routing nodes; The determination module is used to determine the target routing node and transmission path for data transmission based on the source routing node and the destination routing node; The transmission module is used to transmit data according to the target routing node and the transmission path.
18. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the data transmission method for a three-level transmission network as described in any one of claims 3 to 16 when executing the computer program.
19. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the data transmission method of the three-level transmission network as described in any one of claims 3 to 16.
20. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the data transmission method of the three-level transmission network as described in any one of claims 3 to 16.