NoC multi-level out-of-order transmission packet processing method and device based on splitting prediction

By identifying the target slave and dynamically splitting the transmission packets in the on-chip network, the hardware overhead and delay problems in traditional solutions are solved, and efficient multi-level out-of-order packet transmission processing is achieved, which improves system performance.

CN120567366AActive Publication Date: 2025-08-29ALLWINNER TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202510702780.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-28
Publication Date
2025-08-29
Estimated Expiration
2045-05-28

AI Technical Summary

Technical Problem

In the on-chip network (NoC), during the multi-level out-of-order packet processing, traditional solutions require the deployment of reorder modules on both the host and slave, resulting in a significant increase in hardware overhead and transmission delay, affecting system performance.

Method used

Through the method based on split prediction, the target slave is identified, the transmission packet reception capability parameters are predicted, the transmission packets are dynamically split and the cache strategy is merged, the dependence on the slave-oriented sorting module is reduced, and a unified multi-level splitting and cache management is realized, and the cache space is dynamically allocated to ensure that the sub-packets are merged in the original order.

Benefits of technology

It reduces the hardware resource overhead and data transmission delay of NoC network, improves system communication efficiency, eliminates the constraints on slave performance by reordering, and ensures system performance in complex scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120567366A_ABST
    Figure CN120567366A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of a system on chip, and discloses an NoC multi-level out-of-order transmission packet processing method and device based on splitting prediction, and the method comprises the steps: recognizing a target slave according to a first transmission packet parameter of a host; according to the determined current transmission packet receiving capability parameter of the target slave, predicting a downstream splitting strategy and a downstream caching strategy of the first transmission packet, so as to split the first transmission packet into at least one level of second transmission packet matched with the transmission packet receiving capability parameter, and to split the second transmission packet into at least one level of second transmission packet matched with the second transmission packet receiving capability parameter. The target slave is instructed to determine a target cache space of each second transmission packet, cache rearrangement and combination operation is executed on all the second transmission packets based on all the split level identifiers and all the sequence identifiers, and each second transmission packet has the split level identifier and the sequence identifier corresponding to the second transmission packet; and generating a target output instruction according to the downstream splitting strategy and the downstream caching strategy. Therefore, the processing efficiency of the NoC multi-level out-of-order transmission packets can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of system on chip (SoC), and in particular to a method and device for processing NoC multi-stage out-of-order transmission packets based on split prediction. Background Art

[0002] With the continuous improvement of the integration of System-on-Chip (SoC), Network-on-Chip (NoC) has become the mainstream solution for communication between core components in complex SoCs due to its high bandwidth, low latency and scalability.

[0003] However, in scenarios such as heterogeneous computing and AI acceleration, the burst transmission capabilities between master devices (such as CPUs and GPUs) and slave devices (such as DDR controllers and peripherals) vary significantly, resulting in the need to split the original transmission transaction into multiple levels of sub-transmission packets in the NoC to adapt to the processing capabilities of the slave devices. This process involves a first-level split at the host interface unit (NI) and a second-level split at the slave interface unit. However, the split sub-transmission packets may be returned out of order due to factors such as routing strategies and multi-channel architectures, and the original data order must be restored through merging and reordering. Traditional solutions require deploying reordering modules (such as ROUs) on both the master and slave sides. For example, the slave-side reordering module must reserve cache space that matches the DDR command queue (e.g., 8KB cache is required for each 64B transfer). In multi-slave scenarios, this not only increases resource usage exponentially, but also requires additional storage of the split sub-packet data and sequence information for such modules, resulting in a significant increase in hardware overhead. It also easily increases transmission latency, directly restricting system performance.

[0004] It can be seen that how to improve the processing efficiency of NoC multi-level out-of-order transmission packets is particularly important. Summary of the Invention

[0005] The present invention provides a method and device for processing NoC multi-level out-of-order transmission packets based on split prediction, which can improve the processing efficiency of NoC multi-level out-of-order transmission packets.

[0006] In order to solve the above technical problems, the first aspect of the present invention discloses a method for processing NoC multi-stage out-of-order transmission packets based on split prediction, the method comprising:

[0007] identifying a target slave machine according to a first transmission packet parameter of the host machine, wherein the target slave machine is configured to receive a first transmission packet corresponding to the first transmission packet parameter;

[0008] Determining a current transmission packet receiving capability parameter of the target slave;

[0009] predicting, based on the transmission packet receiving capability parameter, a downstream splitting strategy and a downstream caching strategy for the first transmission packet, wherein the downstream splitting strategy is used to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter, each second transmission packet having a splitting level identifier and a sequence identifier corresponding to the second transmission packet, and the downstream caching strategy is used to instruct the target slave to determine a target cache space for each second transmission packet, and perform a cache reordering and merging operation on all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers;

[0010] According to the downstream splitting strategy and the downstream cache strategy, a target output instruction is generated, wherein the target output instruction is used to instruct the target slave to output all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

[0011] As an optional implementation manner, in the first aspect of the present invention, the transmission packet receiving capability parameter includes at least one of an address alignment parameter, a burst transmission data volume parameter, a transmission type parameter, a buffer capacity parameter, a multi-channel configuration parameter, a transmission priority parameter, a response delay parameter, and a transmission protocol parameter; and predicting a downstream splitting strategy for the first transmission packet based on the transmission packet receiving capability parameter includes:

[0012] Calculating a downstream splitting level and a downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter;

[0013] predicting a downstream transmission path of the first transmission packet according to a NoC routing policy between the host and the target slave;

[0014] A downstream splitting strategy for the first transmission packet is predicted according to the downstream splitting level, the downstream splitting granularity, and the downstream transmission path.

[0015] As an optional implementation manner, in the first aspect of the present invention, calculating the downstream splitting level and downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter includes:

[0016] Analyzing a current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter;

[0017] Determining a second transmission timeliness parameter of the host according to the target required timeliness parameter of the first transmission packet and the first transmission timeliness parameter;

[0018] The downstream splitting level and downstream splitting granularity of the first transmission packet are calculated according to the first transmission timeliness parameter and the second transmission timeliness parameter.

[0019] As an optional implementation manner, in the first aspect of the present invention, analyzing the current first transmission timeliness parameter of the target slave according to the transmission packet receiving capability parameter includes:

[0020] analyzing, according to the transmission packet receiving capability parameter, a splitting level capability parameter of the target slave machine to determine a first available splitting level parameter and a first splitting granularity parameter of the target slave machine, the splitting level capability parameter comprising at least one of a splitting logic configuration parameter, a hardware processing depth limit parameter, and a protocol constraint parameter;

[0021] Analyzing a current first transmission timeliness parameter of the target slave machine according to the first available split level parameter and the first split granularity parameter;

[0022] Furthermore, calculating the downstream splitting level and downstream splitting granularity of the first transmission packet according to the first transmission timeliness parameter and the second transmission timeliness parameter includes:

[0023] Acquire a splitting policy configuration parameter of the host, where the splitting policy configuration parameter includes at least one of a second available splitting level parameter, a second splitting granularity parameter, and a splitting priority parameter;

[0024] Analyzing the current third transmission timeliness parameter of the host according to the splitting strategy configuration parameter;

[0025] Calculating a target distance value between the second transmission timeliness parameter and the third transmission timeliness parameter;

[0026] generating a collaborative splitting matching parameter between the master and the target slave according to the target distance value, the first available splitting level parameter, the first splitting granularity parameter, and the splitting strategy configuration parameter;

[0027] According to the collaborative splitting matching parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated, where the downstream splitting level includes at least one splitting level, and the downstream splitting granularity includes a splitting granularity corresponding to each splitting level.

[0028] As an optional implementation manner, in the first aspect of the present invention, predicting the downstream caching strategy of the first transmission packet based on the transmission packet receiving capability parameter includes:

[0029] determining, based on the transmission packet receiving capability parameter, whether the target slave has a reserve cache space required to satisfy the downstream splitting strategy;

[0030] When it is determined that the target slave has the reserve cache space required to satisfy the downstream splitting strategy, predicting the downstream cache strategy of the first transmission packet according to the reserve cache space;

[0031] When it is determined that the target slave machine does not have the reserve cache space required to meet the downstream splitting strategy, an upstream back pressure instruction of the target slave machine is generated according to the target priority parameter of the first transmission packet to regulate the current cache space of the target slave machine and re-trigger the execution of the operation of determining whether the target slave machine has the reserve cache space required to meet the downstream splitting strategy.

[0032] As an optional implementation manner, in the first aspect of the present invention, generating a target output instruction according to the downstream splitting strategy and the downstream caching strategy includes:

[0033] determining, according to the downstream splitting strategy and the downstream cache strategy, whether all the second transmission packets have completed the cache reordering and merging operation at the target slave;

[0034] When it is determined that all the second transmission packets have completed the cache reordering and merging operation in the target slave machine, a target output instruction is generated according to all the split level identifiers and all the sequence identifiers;

[0035] Furthermore, before determining, based on the downstream splitting strategy and the downstream cache strategy, whether all the second transmission packets have completed the cache reordering and merging operation on the target slave, the method further comprises:

[0036] Determining a cache address of each second transmission packet according to the multi-level pointer linked list;

[0037] For each split level identifier, determining, based on the cache addresses and sequence identifiers of all the second transmission packets corresponding to the split level identifier, whether all the second transmission packets corresponding to the split level identifier are completely transmitted to the target slave and all the sequence identifiers match a preset sequence identifier;

[0038] When it is determined that all the second transmission packets corresponding to all the split level identifiers are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifiers, the operation of determining whether all the second transmission packets have completed the cache reordering and merging operation in the target slave machine according to the downstream splitting strategy and the downstream cache strategy is triggered.

[0039] A second aspect of the present invention discloses a NoC multi-stage out-of-order transmission packet processing device based on split prediction, the device comprising:

[0040] an identification module, configured to identify a target slave machine according to a first transmission packet parameter of the host machine, wherein the target slave machine is configured to receive a first transmission packet corresponding to the first transmission packet parameter;

[0041] a determination module, configured to determine a current transmission packet receiving capability parameter of the target slave;

[0042] a prediction module, configured to predict a downstream splitting strategy and a downstream caching strategy for the first transmission packet based on the transmission packet receiving capability parameter, wherein the downstream splitting strategy is configured to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter, each second transmission packet having a splitting level identifier and a sequence identifier corresponding to the second transmission packet, and the downstream caching strategy is configured to instruct the target slave to determine a target cache space for each second transmission packet, and to perform a cache reordering and merging operation on all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers;

[0043] A generation module is used to generate a target output instruction based on the downstream splitting strategy and the downstream cache strategy, and the target output instruction is used to instruct the target slave machine to output all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

[0044] As an optional implementation, in the second aspect of the present invention, the transmission packet receiving capability parameter includes at least one of an address alignment parameter, a burst transmission data volume parameter, a transmission type parameter, a buffer capacity parameter, a multi-channel configuration parameter, a transmission priority parameter, a response delay parameter, and a transmission protocol parameter; and the specific manner in which the prediction module predicts the downstream splitting strategy for the first transmission packet based on the transmission packet receiving capability parameter includes:

[0045] Calculating a downstream splitting level and a downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter;

[0046] predicting a downstream transmission path of the first transmission packet according to a NoC routing policy between the host and the target slave;

[0047] A downstream splitting strategy for the first transmission packet is predicted according to the downstream splitting level, the downstream splitting granularity, and the downstream transmission path.

[0048] As an optional embodiment, in the second aspect of the present invention, the specific manner in which the prediction module calculates the downstream splitting level and downstream splitting granularity of the first transmission packet based on the transmission packet receiving capability parameter includes:

[0049] Analyzing a current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter;

[0050] Determining a second transmission timeliness parameter of the host according to the target required timeliness parameter of the first transmission packet and the first transmission timeliness parameter;

[0051] The downstream splitting level and downstream splitting granularity of the first transmission packet are calculated according to the first transmission timeliness parameter and the second transmission timeliness parameter.

[0052] As an optional implementation, in the second aspect of the present invention, the specific manner in which the prediction module analyzes the current first transmission timeliness parameter of the target slave according to the transmission packet receiving capability parameter includes:

[0053] analyzing, according to the transmission packet receiving capability parameter, a splitting level capability parameter of the target slave machine to determine a first available splitting level parameter and a first splitting granularity parameter of the target slave machine, the splitting level capability parameter comprising at least one of a splitting logic configuration parameter, a hardware processing depth limit parameter, and a protocol constraint parameter;

[0054] Analyzing a current first transmission timeliness parameter of the target slave machine according to the first available split level parameter and the first split granularity parameter;

[0055] Furthermore, the specific manner in which the prediction module calculates the downstream splitting level and the downstream splitting granularity of the first transmission packet according to the first transmission timeliness parameter and the second transmission timeliness parameter includes:

[0056] Acquire a splitting policy configuration parameter of the host, where the splitting policy configuration parameter includes at least one of a second available splitting level parameter, a second splitting granularity parameter, and a splitting priority parameter;

[0057] Analyzing the current third transmission timeliness parameter of the host according to the splitting strategy configuration parameter;

[0058] Calculating a target distance value between the second transmission timeliness parameter and the third transmission timeliness parameter;

[0059] generating a collaborative splitting matching parameter between the master and the target slave according to the target distance value, the first available splitting level parameter, the first splitting granularity parameter, and the splitting strategy configuration parameter;

[0060] According to the collaborative splitting matching parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated, where the downstream splitting level includes at least one splitting level, and the downstream splitting granularity includes a splitting granularity corresponding to each splitting level.

[0061] As an optional implementation manner, in the second aspect of the present invention, the specific manner in which the prediction module predicts the downstream caching strategy of the first transmission packet based on the transmission packet receiving capability parameter includes:

[0062] determining, based on the transmission packet receiving capability parameter, whether the target slave has a reserve cache space required to satisfy the downstream splitting strategy;

[0063] When it is determined that the target slave has the reserve cache space required to satisfy the downstream splitting strategy, predicting the downstream cache strategy of the first transmission packet according to the reserve cache space;

[0064] When it is determined that the target slave machine does not have the reserve cache space required to meet the downstream splitting strategy, an upstream back pressure instruction of the target slave machine is generated according to the target priority parameter of the first transmission packet to regulate the current cache space of the target slave machine and re-trigger the execution of the operation of determining whether the target slave machine has the reserve cache space required to meet the downstream splitting strategy.

[0065] As an optional implementation, in the second aspect of the present invention, the specific manner in which the generation module generates the target output instruction according to the downstream splitting strategy and the downstream caching strategy includes:

[0066] determining, according to the downstream splitting strategy and the downstream cache strategy, whether all the second transmission packets have completed the cache reordering and merging operation at the target slave;

[0067] When it is determined that all the second transmission packets have completed the cache reordering and merging operation in the target slave machine, a target output instruction is generated according to all the split level identifiers and all the sequence identifiers;

[0068] Furthermore, the determining module is further configured to determine, according to the downstream splitting strategy and the downstream caching strategy, whether all the second transmission packets are in the target slave before the cache reordering and merging operation is completed, and to determine, according to the multi-level pointer linked list, a cache address of each second transmission packet;

[0069] And, the device further comprises:

[0070] A judgment module is used to judge, for each of the split level identifiers, whether all the second transmission packets corresponding to the split level identifier are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifier based on the cache address and the sequence identifier of all the second transmission packets corresponding to the split level identifier; when it is judged that all the second transmission packets corresponding to all the split level identifiers are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifier, the generation module is triggered to execute the operation of judging whether all the second transmission packets have completed the cache reordering and merging operation on the target slave machine according to the downstream splitting strategy and the downstream cache strategy.

[0071] A third aspect of the present invention discloses an electronic unit, wherein the electronic unit is integrated in a host and is used to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction disclosed in the first aspect of the present invention.

[0072] A fourth aspect of the present invention discloses another NoC multi-stage out-of-order transmission packet processing device based on split prediction, the device comprising:

[0073] a memory storing executable program code;

[0074] a processor coupled to the memory;

[0075] The processor calls the executable program code stored in the memory to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction disclosed in the first aspect of the present invention.

[0076] The fifth aspect of the present invention discloses a computer storage medium, which stores computer instructions. When the computer instructions are called, they are used to execute the NoC multi-level out-of-order transmission packet processing method based on split prediction disclosed in the first aspect of the present invention.

[0077] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:

[0078] In an embodiment of the present invention, a target slave is identified based on a first transmission packet parameter of a host, and the target slave is used to receive a first transmission packet corresponding to the first transmission packet parameter; the current transmission packet receiving capability parameter of the target slave is determined; based on the transmission packet receiving capability parameter, a downstream splitting strategy and a downstream cache strategy of the first transmission packet are predicted, and the downstream splitting strategy is used to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter, and each second transmission packet has a split level identifier and a sequence identifier corresponding to the second transmission packet, and the downstream cache strategy is used to instruct the target slave to determine a target cache space for each second transmission packet, and perform a cache reordering and merging operation on all second transmission packets based on all split level identifiers and all sequence identifiers; based on the downstream splitting strategy and the downstream cache strategy, a target output instruction is generated, and the target output instruction is used to instruct the target slave to output all second transmission packets based on all split level identifiers and all sequence identifiers, and release the target cache space corresponding to the downstream cache strategy. It can be seen that the implementation of the present invention can identify the target slave machine to which the corresponding first transmission packet currently needs to be transmitted based on the first transmission packet parameters, and predict the downstream splitting strategy and downstream caching strategy of the first transmission packet based on the current transmission packet receiving capability parameters of the determined target slave machine, thereby realizing unified prediction of the multi-level splitting strategy of the transmission packet and unified management of the caching strategy under the multi-level splitting of the transmission packet between the host (master device, such as CPU, GPU, etc.) and the slave machine (slave device, such as DDR controller, peripheral device), getting rid of the dependence on the reordering module (such as ROU) on the slave machine side, reducing the NoC network hardware resource overhead and data transmission delay from the hardware dimension, and further removing the constraints of the reordering processing on the slave machine performance, ensuring the system communication efficiency in complex scenarios, eliminating the resource redundancy of the hierarchical architecture, and dynamically reserving cache space based on the receiving capability parameters of the slave machine. Avoid the waste of static allocation according to the maximum burst size in traditional solutions, improve resource utilization, and achieve accurate dynamic cache allocation. Through the unified management of split level identifiers and sequence identifiers, it ensures that the sub-packets after multi-level splitting can still be merged in the original order after being returned out of order, reducing the overhead of data retransmission or verification, and effectively ensuring end-to-end order. By getting rid of the dependence on back pressure on the slave side (such as DDR command queues being shared by host-side modules), DDR full-pressure access can still be guaranteed even in complex scenarios (such as multi-channel high load), the system bandwidth upper limit can be increased, and system performance decoupling can be achieved. Through the combination of software and hardware, the NoC multi-level out-of-order transmission packet processing efficiency is comprehensively improved. Compared with existing technical solutions, it can significantly reduce the hardware resource overhead and data transmission delay required for merging and reordering, and further remove the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0079] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0080] Figure 1 This is a flow chart of a method for processing NoC multi-stage out-of-order transmission packets based on split prediction disclosed in an embodiment of the present invention;

[0081] Figure 2 This is a schematic diagram of a process for rearranging and merging transmission packets for processing original segments disclosed in an embodiment of the present invention;

[0082] Figure 3 This is a schematic diagram of an improved process flow for reordering and merging segmented transmission packets disclosed in an embodiment of the present invention;

[0083] Figure 4 Schematic diagram of a NoC multi-stage out-of-order transmission packet processing architecture based on split prediction disclosed in an embodiment of the present invention;

[0084] Figure 5 This is a flow chart of another NoC multi-stage out-of-order transmission packet processing method based on split prediction disclosed in an embodiment of the present invention;

[0085] Figure 6 This is a schematic structural diagram of a NoC multi-stage out-of-order transmission packet processing device based on split prediction disclosed in an embodiment of the present invention;

[0086] Figure 7 This is a schematic structural diagram of another NoC multi-stage out-of-order transmission packet processing device based on split prediction disclosed in an embodiment of the present invention;

[0087] Figure 8 This is a structural diagram of another NoC multi-stage out-of-order transmission packet processing device based on split prediction disclosed in an embodiment of the present invention. DETAILED DESCRIPTION

[0088] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings of the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0089] The terms "first," "second," and so on, in the description and claims of the present invention and the accompanying drawings are used to distinguish between different items, not to describe a specific order. Furthermore, the terms "including," "having," and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, apparatus, product, or end comprising a series of steps or elements is not limited to the listed steps or elements but may optionally include steps or elements not listed therein, or may optionally include other steps or elements inherent to such process, method, product, or end.

[0090] References herein to "embodiments" mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present invention. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute a separate or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0091] The present invention discloses a NoC multi-level disordered transmission packet processing method and device based on split prediction, which can identify the target slave machine to which the corresponding first transmission packet needs to be currently transmitted based on the first transmission packet parameter, and predict the downstream splitting strategy and downstream caching strategy of the first transmission packet based on the current transmission packet receiving capability parameter of the determined target slave machine, thereby realizing unified prediction of transmission packet multi-level splitting strategy and unified management of transmission packet caching strategy under multi-level splitting between the host (master device, such as CPU, GPU, etc.) and the slave machine (slave device, such as DDR controller, peripheral device), getting rid of the dependence on the reordering module (such as ROU) on the slave machine side, reducing the NoC network hardware resource overhead and data transmission delay from the hardware dimension, and further relieving the constraints of the reordering processing on the slave machine performance, ensuring the system communication efficiency in complex scenarios, eliminating the resource redundancy of the hierarchical architecture, and, based on the receiving capability of the slave machine Dynamically reserving cache space based on force parameters avoids the waste of static allocation based on the maximum burst size in traditional solutions, improves resource utilization, and achieves precise dynamic cache allocation. Through unified management of split level identifiers and sequence identifiers, it ensures that sub-packets after multi-level splitting can still be merged in the original order after being returned out of order, reducing the overhead of data retransmission or verification, and effectively ensuring end-to-end order. By getting rid of the dependence on slave-side back pressure (such as DDR command queues being shared by host-side modules), DDR full-pressure access can still be guaranteed even in complex scenarios (such as multi-channel high load), increasing the system bandwidth limit and achieving system performance decoupling. Through the combination of software and hardware, the NoC multi-level out-of-order transmission packet processing efficiency is comprehensively improved. Compared with existing technical solutions, it can significantly reduce the hardware resource overhead and data transmission delay required for merging and reordering, and further remove the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios. The following are detailed explanations.

[0092] Example 1

[0093] See also Figure 1 , Figure 1 This is a flow chart of a NoC multi-stage out-of-order transmission packet processing method based on split prediction disclosed in an embodiment of the present invention. Figure 1 The described NoC multi-level out-of-order transmission packet processing method based on split prediction can be applied to system-level chips, and can also be applied to smart devices related to system-level chips, such smart devices including but not limited to battery devices, cloud devices, edge computing devices, relay devices, base station devices, city management devices, smart network devices, smart home devices, etc., which are not limited in the embodiments of the present invention. Figure 1 As shown, the NoC multi-stage out-of-order transmission packet processing method based on split prediction may include the following operations:

[0094] 101. Identify a target slave device according to a first transmission packet parameter of a host device, wherein the target slave device is configured to receive a first transmission packet corresponding to the first transmission packet parameter.

[0095] In an embodiment of the present invention, the method execution subject optionally parses the first transmission packet parameters of the master (e.g., destination address, transmission type, data volume, and destination ID information) to determine the identification information of the target slave (e.g., DDR controller ID). For example, if the destination address of the transmission packet falls within the DDR address space, the target slave is identified as a DDR controller to determine the recipient of the transmission packet, providing a basis for subsequent segmentation prediction.

[0096] 102. Determine the current transmission packet receiving capability parameter of the target slave;

[0097] In an embodiment of the present invention, optionally, by querying the slave configuration register, parameters such as its address alignment (e.g., 64-byte alignment), maximum burst transmission data volume (e.g., 128 bytes), transmission type (read / write), buffer capacity (e.g., 8KB), and multi-channel configuration (e.g., dual-channel support) are obtained to dynamically monitor the current status of the slave (e.g., cache occupancy, processing delay), and then comprehensively evaluate the processing capability of the slave to provide data support for the splitting strategy;

[0098] 103. Predicting a downstream splitting strategy and a downstream caching strategy for the first transmission packet based on the transmission packet receiving capability parameter. The downstream splitting strategy is used to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter. Each second transmission packet has a splitting level identifier and a sequence identifier corresponding to the second transmission packet. The downstream caching strategy is used to instruct the target slave to determine a target cache space for each second transmission packet and perform a cache reordering and merging operation on all second transmission packets based on all splitting level identifiers and all sequence identifiers.

[0099] In an embodiment of the present invention, optionally, for splitting strategy prediction, the splitting starting address and sub-packet length can be determined based on the address alignment mode of the slave (for example, the original transmission packet is 256 bytes, which is split into 4 sub-packets according to 64-byte alignment); combined with the maximum burst data volume of the slave, it is determined whether multi-level splitting is required (if the sub-packets still exceed the capacity of the slave after splitting by the host, a secondary splitting on the slave side is triggered);

[0100] For cache strategy prediction, the total amount of required cache space can be calculated (for example, if the first-level split is 4 sub-packets, and each sub-packet is further split into 2 at the second-level split, a total of 8 sub-packet cache spaces are required). Consecutive or non-consecutive cache addresses are dynamically allocated and marked as "reserved" to ensure that the split sub-packets can be cached, avoiding insufficient or wasted space.

[0101] In the embodiment of the present invention, Figure 2 、 Figure 3 As shown, Figure 2 A schematic diagram of a process for rearranging and merging transmission packets of original segmented processing disclosed in an embodiment of the present invention; Figure 3 This is a schematic diagram of an improved process flow for reordering and merging segmented transmission packets disclosed in an embodiment of the present invention; Figure 3 This paper describes a case study on unified processing of merging and reordering in a dual-channel NoC system: Based on the transmission split prediction and data sequence management scheme proposed in this invention, an improved reordering processing unit can be integrated at each host interface module to uniformly process the reordering and merging of two-level transmission packets. Compared with the traditional hierarchical processing scheme, this invention does not require the integration of a reordering module at the slave interface (e.g. Figure 2 The shaded modules ROU5 and ROU6 (in the middle) handle the merging and reordering of secondary transmission packets, saving at least 16KB of storage resources (each DDR access transaction has 64B of data. To ensure full DDR command queue capacity, the slave-side reordering module requires 8KB of cache space). Furthermore, by removing the slave-side reordering module, the DDR command queue can be shared with the host-side reordering module. Therefore, even in complex scenarios, the NoC system can ensure full DDR access capacity, fully guaranteeing system communication performance.

[0102] In the embodiment of the present invention, Figure 4 As shown, Figure 4 This is a schematic diagram of a NoC multi-level out-of-order transmission packet processing architecture based on split prediction disclosed in an embodiment of the present invention; in the scenario where the transmission is split at multiple levels and returned out of order, it is necessary to further add an indicator of the subsequent split on the basis of monitoring the transmission packet sequence, and carry out the merging management of the sub-transmission packets accordingly. Figure 4The data sequence management mechanism in the two-level splitting scenario is described: the host NI performs the first splitting of the original transmission transaction, and uses the split end identifier (last) and sequence identifier - transmission sequence number (seqid) of the first splitting level to indicate the splitting and sequence of the first-level transmission packet, and packages it into the request for delivery; the slave NI performs the second-level splitting of the transmission packet, adds the PTR pointer indicating the sequence of the second-level transmission packet and the end identifier of the transmission packet splitting completion, and merges it into the request for delivery. These split-related indicator identifiers of each level will eventually be returned with the response, and will be forwarded to the return path after being shaped into the NoC internal packet format in the slave NI. The host NI monitors the return status of the transmission packets at each level according to the splitting indicator identifier in the response packet, and tracks the sub-transmission packet cache address through a multi-level pointer linked list. After recognizing that the transmission is completely returned and meets the reordering order, the transmission packets are returned in sequence according to the splitting order, and the cache space occupied is released at the same time;

[0103] It should be noted that the current diagram shows the split prediction and sequence management mechanism for a two-level split scenario. For more complex split scenarios, it can be expanded by adding a new level of split indicator.

[0104] To sum up, the above-mentioned split level identifier and sequence identifier, in addition to being used to indicate the current level and sequence identifier, can also include the split end identifier (last) and sequence identifier - transmission sequence number (seqid) of the first split level, as well as the PTR pointer of the transmission packet sequence of the second split level and the end identifier of the completion of the transmission packet splitting; for splitting scenarios with more levels, the expansion can be completed by adding a new level of split indication identifier.

[0105] In an embodiment of the present invention, as an optional implementation manner, the transmission packet receiving capability parameter includes at least one of an address alignment parameter, a burst transmission data volume parameter, a transmission type parameter, a buffer capacity parameter, a multi-channel configuration parameter, a transmission priority parameter, a response delay parameter, and a transmission protocol parameter; and predicting a downstream splitting strategy for the first transmission packet based on the transmission packet receiving capability parameter includes:

[0106] Calculating a downstream splitting level and a downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter;

[0107] predicting a downstream transmission path of the first transmission packet based on a NoC routing policy between the host and the target slave;

[0108] A downstream splitting strategy for the first transmission packet is predicted according to the downstream splitting level, the downstream splitting granularity, and the downstream transmission path.

[0109] In an embodiment of the present invention, optionally, for calculating the splitting level and granularity, the splitting level calculation is as follows: if the maximum burst data size of the slave is 128 bytes and the original transmission packet is 512 bytes, it needs to be split into at least 4 sub-packets (512 / 128=4); the splitting granularity calculation is as follows: according to the address alignment method (such as 64-byte alignment), the sub-packet length is adjusted to an integer multiple of 64 (such as 64 or 128 bytes);

[0110] For predicting the downstream transmission path, the NoC routing table (such as the XY routing algorithm) is used to determine the path of the sub-packet from the host to the target slave (such as through channel A or B). Combined with the multi-channel configuration, the sub-packets are evenly distributed to different channels to improve throughput, thereby predicting the transmission path of the sub-packet, avoiding congestion and optimizing transmission efficiency.

[0111] For the comprehensive prediction of downstream splitting strategy, the splitting level, granularity and path prediction results are integrated to generate the final splitting strategy. For example: the first level is split into 4 sub-packets (64 bytes), which are transmitted alternately through channels A and B; the slave side is further split into 2 sub-packets (32 bytes) to meet the burst capability of the DDR controller;

[0112] It can be seen that the implementation of this optional embodiment can accurately predict downstream splitting requirements (such as the necessity of secondary splitting) through comprehensive analysis of parameters such as address alignment, burst volume, and multi-channel configuration, avoid bandwidth loss caused by insufficient or excessive splitting, and combine NoC routing strategies (such as XY routing, channel load balancing) to predict sub-packet transmission paths, reduce congestion and delays caused by path conflicts, support different slave characteristics (such as the difference between DDR controllers and AI accelerators), dynamically generate differentiated splitting strategies, improve the versatility of the solution, and reduce repeated splitting operations caused by splitting granularity mismatch through granularity calculation (such as matching slave burst capacity), reduce processing overhead, and realize the combination of multi-dimensional parameter collaborative prediction, routing path optimization, flexible adaptation of heterogeneous slaves, and avoidance of invalid splitting, and comprehensively predict the downstream splitting strategy of the first transmission packet.

[0113] In this optional embodiment, as an optional implementation manner, the above-mentioned calculation of the downstream splitting level and downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter includes:

[0114] Analyze the current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter;

[0115] Determining a second transmission timeliness parameter of the host according to the target required timeliness parameter of the first transmission packet and the first transmission timeliness parameter;

[0116] A downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated according to the first transmission timeliness parameter and the second transmission timeliness parameter.

[0117] In an embodiment of the present invention, optionally, for analyzing the first transmission timeliness parameter of the target slave, its current transmission timeliness (e.g., maximum throughput of 100Gb / s) can be calculated based on the slave's processing delay (e.g., 10ns per sub-packet processing time) and buffer idle rate. If the slave's cache occupancy rate is high, the timeliness parameter is reduced, and the split level needs to be reduced;

[0118] To determine the second transmission time efficiency parameter of the host, the maximum time efficiency (e.g., 150 Gb / s) that can be supported can be calculated based on the host's splitting capability (e.g., splitting engine frequency) and transmission priority.

[0119] For the computational splitting level and granularity, if the slave's efficiency is 100Gb / s and the master's efficiency is 150Gb / s, the splitting strategy needs to balance the difference between the two. Choose a splitting level of two (master-level splitting, slave-level splitting), with a granularity of 64 bytes per level. This allows for efficiency matching and prevents the master or slave from becoming a performance bottleneck.

[0120] It can be seen that the implementation of this optional embodiment can adjust the splitting level according to the real-time processing capability of the slave machine (such as the current load of the DDR controller), reduce the splitting level when the load is high to reduce the processing pressure, and increase the level when idle to improve bandwidth utilization. Through the coordinated matching of the transmission timing of the master and slave machines (such as reducing the splitting granularity when the host timing is greater than the slave timing), the system load is balanced to prevent one side from becoming a performance bottleneck. In a dynamically changing system environment (such as burst traffic, multi-tasking concurrency), the splitting strategy is automatically adjusted to ensure the stability of communication efficiency; it realizes the combination of time-driven dynamic splitting, avoiding unilateral performance bottlenecks, and adapting to complex scenarios, and dynamically adjusting the splitting level and granularity.

[0121] In this optional embodiment, as another optional implementation manner, the above-mentioned analyzing the current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter includes:

[0122] analyzing, according to the transmission packet receiving capability parameter, a splitting level capability parameter of the target slave machine to determine a first available splitting level parameter and a first splitting granularity parameter of the target slave machine, wherein the splitting level capability parameter includes at least one of a splitting logic configuration parameter, a hardware processing depth limit parameter, and a protocol constraint parameter;

[0123] Analyzing a current first transmission timeliness parameter of the target slave machine according to the first available splitting level parameter and the first splitting granularity parameter;

[0124] Optionally, the above-mentioned calculating the downstream splitting level and downstream splitting granularity of the first transmission packet according to the first transmission timeliness parameter and the second transmission timeliness parameter includes:

[0125] Acquire a splitting policy configuration parameter of the host, where the splitting policy configuration parameter includes at least one of a second available splitting level parameter, a second splitting granularity parameter, and a splitting priority parameter;

[0126] Analyze the current third transmission time efficiency parameters of the host according to the split strategy configuration parameters;

[0127] Calculating a target distance value between the second transmission time aging parameter and the third transmission time aging parameter;

[0128] Generate collaborative split matching parameters between the master and the target slave according to the target distance value, the first available split level parameter, the first split granularity parameter, and the split strategy configuration parameter;

[0129] According to the collaborative splitting matching parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated, where the downstream splitting level includes at least one splitting level, and the downstream splitting granularity includes a splitting granularity corresponding to each splitting level.

[0130] In the embodiment of the present invention, optionally, to analyze the splitting level capability of the target slave, the splitting level configuration of the slave may be read (e.g., supporting a maximum of 2 levels of splitting), its splitting logic constraints may be obtained (e.g., only supporting splitting by address alignment), and the hardware processing depth may be analyzed (e.g., buffer capacity limits the splitting level).

[0131] For the collaborative matching master-slave splitting strategy, if the master supports 3-level splitting but the slave only supports 2-level, the final splitting level is 2-level; if the master splitting granularity (128 bytes) exceeds the slave capacity (64 bytes), the slave supplementary split is triggered; to ensure that the splitting strategy adapts to the master and slave capabilities and avoid invalid splitting.

[0132] For generating collaborative split matching parameters, a matching parameter table can be generated based on the split level capabilities, granularity, and priority of the master and slave machines to guide the final split strategy;

[0133] It can be seen that the implementation of this optional embodiment can dynamically select the optimal splitting level based on the splitting capability of the host (such as supporting 3-level splitting) and the processing constraints of the slave (such as only supporting 2 levels) to avoid idle or over-limited resources; by parsing the protocol constraints of the slave (such as AXI burst length limit), ensure that the splitting strategy complies with the protocol specification and reduce transmission errors; according to the transmission priority parameters (such as high real-time tasks), give priority to the splitting granularity of critical transmissions to ensure low latency requirements; and realize dynamic adaptation of levels and granularity that combines resource integration of master-slave collaboration, protocol compatibility enhancement, and priority-driven splitting optimization.

[0134] In an embodiment of the present invention, as another optional implementation, the above-mentioned predicting the downstream caching strategy of the first transmission packet based on the transmission packet receiving capability parameter includes:

[0135] According to the transmission packet receiving capability parameter, it is determined whether the target slave has the required buffer space to meet the downstream splitting strategy;

[0136] When it is determined that the target slave has a reserve cache space required to satisfy the downstream splitting strategy, predicting the downstream cache strategy of the first transmission packet based on the reserve cache space;

[0137] When it is determined that the target slave machine does not have the reserve cache space required to meet the downstream splitting strategy, an upstream back pressure instruction of the target slave machine is generated according to the target priority parameter of the first transmission packet to regulate the current cache space of the target slave machine and re-trigger the execution of the operation of determining whether the target slave machine has the reserve cache space required to meet the downstream splitting strategy.

[0138] In the embodiment of the present invention, to determine the prepared cache space, the cache status table of the target slave can be queried to check whether there is the continuous space required for the predicted split (e.g., 8 sub-packets × 64 bytes = 512 bytes); if the space is sufficient, it is marked as "allocated"; otherwise, back pressure is triggered;

[0139] For generating back pressure instructions, if the cache is insufficient, a back pressure signal can be sent to the host to suspend the issuance of new requests until the slave frees up space (e.g., 256 bytes are released after merging the outputs);

[0140] For re-triggering judgment, you can re-execute the cache space check after the back pressure is relieved until the reserved space meets the demand;

[0141] It can be seen that the implementation of this optional embodiment can accurately trigger back pressure when the cache is insufficient, suspend the issuance of non-critical requests (such as low-priority transmission), and give priority to resource allocation for high-priority tasks; through space reallocation after the back pressure is released, the "cache dead zone" caused by fixed reservation in traditional solutions is avoided, and the resource turnover rate is improved; in burst traffic scenarios, by dynamically adjusting cache allocation, the system is prevented from crashing due to cache overflow and the fault tolerance capability is enhanced; dynamic cache regulation is realized that combines intelligent back pressure mechanism, elastic cache recovery, and system robustness improvement.

[0142] 104. Generate a target output instruction according to the downstream splitting strategy and the downstream cache strategy. The target output instruction is used to instruct the target slave to output all second transmission packets based on all splitting level identifiers and all sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

[0143] In an embodiment of the present invention, optionally, after all split sub-packets have completed cache reordering and merging, an output instruction is generated according to the split level identifier (such as level 1 L1, level 2 L2) and the sequence identifier (such as SEQ01, SEQ02); the output instruction triggers the slave to send the merged data in sequence and release the occupied cache space; to ensure that the data is output in the original order and reclaim resources for subsequent transmission;

[0144] It can be seen that the implementation of the embodiment of the present invention can identify the target slave machine to which the corresponding first transmission packet currently needs to be transmitted based on the first transmission packet parameters, and predict the downstream splitting strategy and downstream caching strategy of the first transmission packet based on the current transmission packet receiving capability parameters of the determined target slave machine, thereby realizing unified prediction of the multi-level splitting strategy of the transmission packet and unified management of the caching strategy under the multi-level splitting of the transmission packet between the host (master device, such as CPU, GPU, etc.) and the slave machine (slave device, such as DDR controller, peripheral device), getting rid of the dependence on the reordering module (such as ROU) on the slave machine side, reducing the NoC network hardware resource overhead and data transmission delay from the hardware dimension, and further relieving the constraints of the reordering processing on the slave machine performance, ensuring the system communication efficiency in complex scenarios, eliminating the resource redundancy of the hierarchical architecture, and dynamically reserving cache space based on the receiving capability parameters of the slave machine. , avoid the waste of static allocation according to the maximum burst size in traditional solutions, improve resource utilization, and achieve accurate dynamic cache allocation. Through the unified management of split level identifiers and sequence identifiers, it ensures that the sub-packets after multi-level splitting can still be merged in the original order after being returned out of order, reducing the overhead of data retransmission or verification, and effectively ensuring end-to-end order. By getting rid of the dependence on back pressure on the slave side (such as DDR command queues being shared by host-side modules), DDR full-pressure access can still be guaranteed even in complex scenarios (such as multi-channel high load), the system bandwidth upper limit can be increased, and system performance decoupling can be achieved. Through the combination of software and hardware, the NoC multi-level out-of-order transmission packet processing efficiency is comprehensively improved. Compared with the existing technical solutions, it can significantly reduce the hardware resource overhead and data transmission delay required for merging and reordering, and further remove the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios.

[0145] Example 2

[0146] See also Figure 5 , Figure 5 This is a flow chart of another NoC multi-stage out-of-order transmission packet processing method based on split prediction disclosed in an embodiment of the present invention. Figure 5The described NoC multi-level out-of-order transmission packet processing method based on split prediction can be applied to system-level chips, and can also be applied to smart devices related to system-level chips, such smart devices including but not limited to battery devices, cloud devices, edge computing devices, relay devices, base station devices, city management devices, smart network devices, smart home devices, etc., which are not limited in the embodiments of the present invention. Figure 5 As shown, the NoC multi-stage out-of-order transmission packet processing method based on split prediction may include the following operations:

[0147] 201. Identify a target slave device according to a first transmission packet parameter of a host device, wherein the target slave device is configured to receive a first transmission packet corresponding to the first transmission packet parameter.

[0148] 202. Determine the current transmission packet receiving capability parameter of the target slave;

[0149] 203. Predicting a downstream splitting strategy and a downstream caching strategy for the first transmission packet based on the transmission packet receiving capability parameter. The downstream splitting strategy is used to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter. Each second transmission packet has a splitting level identifier and a sequence identifier corresponding to the second transmission packet. The downstream caching strategy is used to instruct the target slave to determine a target cache space for each second transmission packet and perform a cache reordering and merging operation on all second transmission packets based on all splitting level identifiers and all sequence identifiers.

[0150] In the embodiment of the present invention, for the supplementary explanation of steps 201 to 203, please refer to the supplementary explanation of steps 101 to 103 in the first embodiment, which will not be repeated in the embodiment of the present invention.

[0151] 204. Determine whether all second transmission packets have completed the cache reordering and merging operation at the target slave machine according to the downstream splitting strategy and the downstream cache strategy;

[0152] In an embodiment of the present invention, as an optional implementation, the method further includes: determining whether all second transmission packets are received before the target slave completes the cache reordering and merging operation based on the downstream splitting strategy and the downstream cache strategy;

[0153] Determining a cache address of each second transmission packet according to the multi-level pointer linked list;

[0154] For each split level identifier, judging, based on the cache addresses and sequence identifiers of all second transmission packets corresponding to the split level identifier, whether all second transmission packets corresponding to the split level identifier are completely transmitted to the target slave and all sequence identifiers match the preset sequence identifier;

[0155] When it is determined that all second transmission packets corresponding to all split level identifiers are completely transmitted to the target slave machine and all sequence identifiers match the preset sequence identifiers, the operation of determining whether all second transmission packets have completed the cache reordering and merging operation in the target slave machine is triggered according to the downstream splitting strategy and the downstream cache strategy.

[0156] 205. When it is determined that all second transmission packets have completed the cache reordering and merging operation in the target slave machine, a target output instruction is generated based on all split level identifiers and all sequence identifiers. The target output instruction is used to instruct the target slave machine to output all second transmission packets based on all split level identifiers and all sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

[0157] In the embodiment of the present invention, optionally, for multi-level pointer linked list management, a linked list head node (such as the first-level head node L1 and the second-level head node L2) can be created for each split level; each sub-packet generates a linked list child node, recording its cache address, sequence identifier and next node pointer;

[0158] To determine whether cache reordering is complete, you can traverse the linked list nodes and check whether all sub-packets at the same level have been returned and are in the correct order (such as SEQ01→SEQ02). If missing or disordered packets are detected, wait until the conditions are met.

[0159] For generating target output instructions, after all the sub-packages at all levels are merged, the data can be output in the order of the linked list, and the linked list nodes can be deleted to release the cache.

[0160] It can be seen that the implementation of the embodiment of the present invention can dynamically associate the cache address and sequence identifier (such as seqid, PTR) of the sub-packet through a multi-level pointer linked list, so that even if the sub-packet is returned out of order across levels, it can still be quickly located and merged; after detecting that all sub-packets of the same level have returned completely, the merge operation is automatically triggered, reducing manual intervention and improving processing efficiency; after the merge is completed, all associated cache space is released at one time, avoiding resource waste caused by partial cache residue in traditional solutions; by verifying the sequence identifier (such as the end mark of the second-level sub-packet) level by level, it is ensured that the merged data block is completely consistent with the original transmission packet, reducing the risk of data errors; it realizes the combination of efficient disorder management, automatic merge triggering, cache release atomicity, and cross-level data integrity, significantly reducing the hardware resource overhead and data transmission delay required for merging and reordering, and further removing the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios.

[0161] Example 3

[0162] See also Figure 6 , Figure 6This is a structural diagram of a NoC multi-level out-of-order transmission packet processing device based on split prediction disclosed in an embodiment of the present invention. The NoC multi-level out-of-order transmission packet processing device based on split prediction can be applied to system-level chips, and can also be applied to smart devices related to system-level chips, including but not limited to battery devices, cloud devices, edge computing devices, relay devices, base station devices, city management devices, smart network devices, smart home devices, etc., which are not limited in the embodiment of the present invention. Figure 6 As shown, the NoC multi-stage out-of-order transmission packet processing device based on split prediction may include:

[0163] An identification module 301 is configured to identify a target slave device according to a first transmission packet parameter of the host device, and the target slave device is configured to receive a first transmission packet corresponding to the first transmission packet parameter;

[0164] A determination module 302 is configured to determine a current transmission packet receiving capability parameter of a target slave;

[0165] A prediction module 303 is configured to predict a downstream splitting strategy and a downstream caching strategy for a first transmission packet based on a transmission packet receiving capability parameter. The downstream splitting strategy is configured to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter. Each second transmission packet has a splitting level identifier and a sequence identifier corresponding to the second transmission packet. The downstream caching strategy is configured to instruct a target slave to determine a target cache space for each second transmission packet and to perform a cache reordering and merging operation on all second transmission packets based on all splitting level identifiers and all sequence identifiers.

[0166] The generation module 304 is used to generate a target output instruction according to the downstream splitting strategy and the downstream cache strategy. The target output instruction is used to instruct the target slave to output all second transmission packets based on all split level identifiers and all sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

[0167] It can be seen that the implementation of the embodiment of the present invention can identify the target slave machine to which the corresponding first transmission packet currently needs to be transmitted based on the first transmission packet parameters, and predict the downstream splitting strategy and downstream caching strategy of the first transmission packet based on the current transmission packet receiving capability parameters of the determined target slave machine, thereby realizing unified prediction of the multi-level splitting strategy of the transmission packet and unified management of the caching strategy under the multi-level splitting of the transmission packet between the host (master device, such as CPU, GPU, etc.) and the slave machine (slave device, such as DDR controller, peripheral device), getting rid of the dependence on the reordering module (such as ROU) on the slave machine side, reducing the NoC network hardware resource overhead and data transmission delay from the hardware dimension, and further relieving the constraints of the reordering processing on the slave machine performance, ensuring the system communication efficiency in complex scenarios, eliminating the resource redundancy of the hierarchical architecture, and dynamically reserving cache space based on the receiving capability parameters of the slave machine. , avoid the waste of static allocation according to the maximum burst size in traditional solutions, improve resource utilization, and achieve accurate dynamic cache allocation. Through the unified management of split level identifiers and sequence identifiers, it ensures that the sub-packets after multi-level splitting can still be merged in the original order after being returned out of order, reducing the overhead of data retransmission or verification, and effectively ensuring end-to-end order. By getting rid of the dependence on back pressure on the slave side (such as DDR command queues being shared by host-side modules), DDR full-pressure access can still be guaranteed even in complex scenarios (such as multi-channel high load), the system bandwidth upper limit can be increased, and system performance decoupling can be achieved. Through the combination of software and hardware, the NoC multi-level out-of-order transmission packet processing efficiency is comprehensively improved. Compared with the existing technical solutions, it can significantly reduce the hardware resource overhead and data transmission delay required for merging and reordering, and further remove the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios.

[0168] In an embodiment of the present invention, as an optional implementation, the transmission packet receiving capability parameter includes at least one of an address alignment parameter, a burst transmission data volume parameter, a transmission type parameter, a buffer capacity parameter, a multi-channel configuration parameter, a transmission priority parameter, a response delay parameter, and a transmission protocol parameter. The specific manner in which the prediction module 303 predicts the downstream splitting strategy for the first transmission packet based on the transmission packet receiving capability parameter includes:

[0169] Calculating a downstream splitting level and a downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter;

[0170] predicting a downstream transmission path of the first transmission packet based on a NoC routing policy between the host and the target slave;

[0171] A downstream splitting strategy for the first transmission packet is predicted according to the downstream splitting level, the downstream splitting granularity, and the downstream transmission path.

[0172] It can be seen that the implementation of this optional embodiment can accurately predict downstream splitting requirements (such as the necessity of secondary splitting) through comprehensive analysis of parameters such as address alignment, burst volume, and multi-channel configuration, avoid bandwidth loss caused by insufficient or excessive splitting, and combine NoC routing strategies (such as XY routing, channel load balancing) to predict sub-packet transmission paths, reduce congestion and delays caused by path conflicts, support different slave characteristics (such as the difference between DDR controllers and AI accelerators), dynamically generate differentiated splitting strategies, improve the versatility of the solution, and reduce repeated splitting operations caused by splitting granularity mismatch through granularity calculation (such as matching slave burst capacity), reduce processing overhead, and realize the combination of multi-dimensional parameter collaborative prediction, routing path optimization, flexible adaptation of heterogeneous slaves, and avoidance of invalid splitting, and comprehensively predict the downstream splitting strategy of the first transmission packet.

[0173] In this optional embodiment, as an optional implementation, the specific manner in which the prediction module 303 calculates the downstream splitting level and downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter includes:

[0174] Analyze the current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter;

[0175] Determining a second transmission timeliness parameter of the host according to the target required timeliness parameter of the first transmission packet and the first transmission timeliness parameter;

[0176] A downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated according to the first transmission timeliness parameter and the second transmission timeliness parameter.

[0177] It can be seen that the implementation of this optional embodiment can adjust the splitting level according to the real-time processing capability of the slave machine (such as the current load of the DDR controller), reduce the splitting level when the load is high to reduce the processing pressure, and increase the level when idle to improve bandwidth utilization. Through the coordinated matching of the transmission timing of the master and slave machines (such as reducing the splitting granularity when the host timing is greater than the slave timing), the system load is balanced to prevent one side from becoming a performance bottleneck. In a dynamically changing system environment (such as burst traffic, multi-tasking concurrency), the splitting strategy is automatically adjusted to ensure the stability of communication efficiency; it realizes the combination of time-driven dynamic splitting, avoiding unilateral performance bottlenecks, and adapting to complex scenarios, and dynamically adjusting the splitting level and granularity.

[0178] In this optional embodiment, as another optional implementation, the specific manner in which the prediction module 303 analyzes the current first transmission timeliness parameter of the target slave according to the transmission packet receiving capability parameter includes:

[0179] analyzing, according to the transmission packet receiving capability parameter, a splitting level capability parameter of the target slave machine to determine a first available splitting level parameter and a first splitting granularity parameter of the target slave machine, wherein the splitting level capability parameter includes at least one of a splitting logic configuration parameter, a hardware processing depth limit parameter, and a protocol constraint parameter;

[0180] Analyzing a current first transmission timeliness parameter of the target slave machine according to the first available splitting level parameter and the first splitting granularity parameter;

[0181] Optionally, the prediction module 303 calculates the downstream splitting level and downstream splitting granularity of the first transmission packet according to the first transmission timeliness parameter and the second transmission timeliness parameter in a specific manner including:

[0182] Acquire a splitting policy configuration parameter of the host, where the splitting policy configuration parameter includes at least one of a second available splitting level parameter, a second splitting granularity parameter, and a splitting priority parameter;

[0183] Analyze the current third transmission time efficiency parameters of the host according to the split strategy configuration parameters;

[0184] Calculating a target distance value between the second transmission time aging parameter and the third transmission time aging parameter;

[0185] Generate collaborative split matching parameters between the master and the target slave according to the target distance value, the first available split level parameter, the first split granularity parameter, and the split strategy configuration parameter;

[0186] According to the collaborative splitting matching parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated, where the downstream splitting level includes at least one splitting level, and the downstream splitting granularity includes a splitting granularity corresponding to each splitting level.

[0187] It can be seen that the implementation of this optional embodiment can dynamically select the optimal splitting level based on the splitting capability of the host (such as supporting 3-level splitting) and the processing constraints of the slave (such as only supporting 2 levels) to avoid idle or over-limited resources; by parsing the protocol constraints of the slave (such as AXI burst length limit), ensure that the splitting strategy complies with the protocol specification and reduce transmission errors; according to the transmission priority parameters (such as high real-time tasks), give priority to the splitting granularity of critical transmissions to ensure low latency requirements; and realize dynamic adaptation of levels and granularity that combines resource integration of master-slave collaboration, protocol compatibility enhancement, and priority-driven splitting optimization.

[0188] In the embodiment of the present invention, as another optional implementation, the specific manner in which the prediction module 303 predicts the downstream caching strategy of the first transmission packet according to the transmission packet receiving capability parameter includes:

[0189] According to the transmission packet receiving capability parameter, it is determined whether the target slave has the required buffer space to meet the downstream splitting strategy;

[0190] When it is determined that the target slave has a reserve cache space required to satisfy the downstream splitting strategy, predicting the downstream cache strategy of the first transmission packet based on the reserve cache space;

[0191] When it is determined that the target slave machine does not have the reserve cache space required to meet the downstream splitting strategy, an upstream back pressure instruction of the target slave machine is generated according to the target priority parameter of the first transmission packet to regulate the current cache space of the target slave machine and re-trigger the execution of the operation of determining whether the target slave machine has the reserve cache space required to meet the downstream splitting strategy.

[0192] It can be seen that the implementation of this optional embodiment can accurately trigger back pressure when the cache is insufficient, suspend the issuance of non-critical requests (such as low-priority transmission), and give priority to resource allocation for high-priority tasks; through space reallocation after the back pressure is released, the "cache dead zone" caused by fixed reservation in traditional solutions is avoided, and the resource turnover rate is improved; in burst traffic scenarios, by dynamically adjusting cache allocation, the system is prevented from crashing due to cache overflow and the fault tolerance capability is enhanced; dynamic cache regulation is realized that combines intelligent back pressure mechanism, elastic cache recovery, and system robustness improvement.

[0193] In an embodiment of the present invention, as another optional implementation, the specific manner in which the above-mentioned generating module 304 generates the target output instruction according to the downstream splitting strategy and the downstream caching strategy includes:

[0194] According to the downstream splitting strategy and the downstream cache strategy, determining whether all second transmission packets have completed the cache reordering and merging operation at the target slave;

[0195] When it is determined that all second transmission packets have completed the cache reordering and merging operations in the target slave machine, a target output instruction is generated according to all split level identifiers and all sequence identifiers;

[0196] Optionally, the determination module 302 is further configured to determine, according to the downstream splitting strategy and the downstream cache strategy, whether all second transmission packets are before the target slave completes the cache reordering and merging operation, and determine the cache address of each second transmission packet according to the multi-level pointer linked list;

[0197] Optional, such as Figure 7 As shown, the device also includes:

[0198] The judgment module 305 is used to judge, for each split level identifier, whether all the second transmission packets corresponding to the split level identifier are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifiers based on the cache addresses and sequence identifiers of all the second transmission packets corresponding to the split level identifier; when it is judged that all the second transmission packets corresponding to all the split level identifiers are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifier, the generation module 304 is triggered to execute the operation of judging whether all the second transmission packets have completed the cache reordering and merging operation at the target slave machine according to the downstream splitting strategy and the downstream cache strategy.

[0199] It can be seen that the implementation of the embodiment of the present invention can dynamically associate the cache address and sequence identifier (such as seqid, PTR) of the sub-packet through a multi-level pointer linked list, so that even if the sub-packet is returned out of order across levels, it can still be quickly located and merged; after detecting that all sub-packets of the same level have returned completely, the merge operation is automatically triggered, reducing manual intervention and improving processing efficiency; after the merge is completed, all associated cache space is released at one time, avoiding resource waste caused by partial cache residue in traditional solutions; by verifying the sequence identifier (such as the end mark of the second-level sub-packet) level by level, it is ensured that the merged data block is completely consistent with the original transmission packet, reducing the risk of data errors; it realizes the combination of efficient disorder management, automatic merge triggering, cache release atomicity, and cross-level data integrity, significantly reducing the hardware resource overhead and data transmission delay required for merging and reordering, and further removing the constraints of reordering processing on slave performance, ensuring system communication efficiency in complex scenarios.

[0200] Example 4

[0201] An embodiment of the present invention discloses an electronic unit, wherein the electronic unit is integrated in a host, and the electronic power supply is used to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction described in the first or second embodiment of the present invention.

[0202] Example 5

[0203] See also Figure 8 , Figure 8 This is a structural diagram of another NoC multi-stage out-of-order transmission packet processing device based on split prediction disclosed in an embodiment of the present invention. The NoC multi-stage out-of-order transmission packet processing device based on split prediction can be applied to system-level chips, and can also be applied to smart devices related to system-level chips, which include but are not limited to one or more of battery devices, cloud devices, edge computing devices, relay devices, base station devices, city management devices, smart network devices, and smart home devices, which are not limited in the embodiment of the present invention. Figure 8 As shown, the NoC multi-stage out-of-order transmission packet processing device based on split prediction may include:

[0204] The memory 401 stores executable program codes.

[0205] A processor 402 is coupled to the memory 401 .

[0206] The processor 402 calls the executable program code stored in the memory 401 to execute the steps of the NoC multi-stage out-of-order transmission packet processing method based on split prediction described in the first embodiment of the present invention or the second embodiment of the present invention.

[0207] Example 6

[0208] An embodiment of the present invention discloses a computer storage medium storing computer instructions. When the computer instructions are called, they are used to execute the steps of the NoC multi-stage out-of-order transmission packet processing method based on split prediction described in the first embodiment or the second embodiment of the present invention.

[0209] Example 7

[0210] An embodiment of the present invention discloses a computer program product, which includes a non-transitory computer storage medium storing a computer program, and the computer program is operable to cause a computer to execute the steps of the NoC multi-stage out-of-order transmission packet processing method based on split prediction described in Example 1 or Example 2.

[0211] The device embodiments described above are merely illustrative, wherein the modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, i.e., they may be located in one place or distributed across multiple network modules. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Those skilled in the art can understand and implement the present invention without inventive effort.

[0212] Through the detailed description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus the necessary general hardware platform, or of course, by means of hardware. Based on this understanding, the above technical solution, in essence, or the portion that contributes to the prior art, can be embodied in the form of a software product, which can be stored in a computer-readable storage medium, including a read-only memory (ROM), a random access memory (RAM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a one-time programmable read-only memory (OTPROM), an electronically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, magnetic disk storage, magnetic tape storage, or any other computer-readable medium capable of carrying or storing data.

[0213] Finally, it should be noted that the method and device for processing NoC multi-stage out-of-order transmission packets based on split prediction disclosed in the embodiments of the present invention are only preferred embodiments of the present invention, and are only used to illustrate the technical solutions of the present invention, rather than to limit them. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.

Claims

1. A NoC multi-stage out-of-order transmission packet processing method based on split prediction, characterized in that: The method comprises: identifying a target slave machine according to a first transmission packet parameter of the host machine, wherein the target slave machine is configured to receive a first transmission packet corresponding to the first transmission packet parameter; Determining a current transmission packet receiving capability parameter of the target slave; predicting, based on the transmission packet receiving capability parameter, a downstream splitting strategy and a downstream caching strategy for the first transmission packet, wherein the downstream splitting strategy is used to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter, each second transmission packet having a splitting level identifier and a sequence identifier corresponding to the second transmission packet, and the downstream caching strategy is used to instruct the target slave to determine a target cache space for each second transmission packet, and perform a cache reordering and merging operation on all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers; According to the downstream splitting strategy and the downstream cache strategy, a target output instruction is generated, wherein the target output instruction is used to instruct the target slave to output all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

2. The NoC multi-stage out-of-order transmission packet processing method based on split prediction according to claim 1 is characterized in that: The transmission packet receiving capability parameter includes at least one of an address alignment parameter, a burst transmission data volume parameter, a transmission type parameter, a buffer capacity parameter, a multi-channel configuration parameter, a transmission priority parameter, a response delay parameter, and a transmission protocol parameter; The predicting, based on the transmission packet receiving capability parameter, a downstream splitting strategy for the first transmission packet includes: Calculating a downstream splitting level and a downstream splitting granularity of the first transmission packet according to the transmission packet receiving capability parameter; predicting a downstream transmission path of the first transmission packet according to a NoC routing policy between the host and the target slave; A downstream splitting strategy for the first transmission packet is predicted according to the downstream splitting level, the downstream splitting granularity, and the downstream transmission path.

3. The NoC multi-stage out-of-order transmission packet processing method based on split prediction according to claim 2 is characterized in that: The calculating, according to the transmission packet receiving capability parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet includes: Analyzing a current first transmission timeliness parameter of the target slave machine according to the transmission packet receiving capability parameter; Determining a second transmission timeliness parameter of the host according to the target required timeliness parameter of the first transmission packet and the first transmission timeliness parameter; The downstream splitting level and downstream splitting granularity of the first transmission packet are calculated according to the first transmission timeliness parameter and the second transmission timeliness parameter.

4. The NoC multi-stage out-of-order transmission packet processing method based on split prediction according to claim 3 is characterized in that: The analyzing, according to the transmission packet receiving capability parameter, the current first transmission timeliness parameter of the target slave device includes: analyzing, according to the transmission packet receiving capability parameter, a splitting level capability parameter of the target slave machine to determine a first available splitting level parameter and a first splitting granularity parameter of the target slave machine, the splitting level capability parameter comprising at least one of a splitting logic configuration parameter, a hardware processing depth limit parameter, and a protocol constraint parameter; Analyzing a current first transmission timeliness parameter of the target slave machine according to the first available splitting level parameter and the first splitting granularity parameter; Furthermore, calculating the downstream splitting level and downstream splitting granularity of the first transmission packet according to the first transmission timeliness parameter and the second transmission timeliness parameter includes: Acquire a splitting policy configuration parameter of the host, where the splitting policy configuration parameter includes at least one of a second available splitting level parameter, a second splitting granularity parameter, and a splitting priority parameter; Analyzing the current third transmission timeliness parameter of the host according to the splitting strategy configuration parameter; Calculating a target distance value between the second transmission timeliness parameter and the third transmission timeliness parameter; generating a collaborative splitting matching parameter between the master and the target slave according to the target distance value, the first available splitting level parameter, the first splitting granularity parameter, and the splitting strategy configuration parameter; According to the collaborative splitting matching parameter, a downstream splitting level and a downstream splitting granularity of the first transmission packet are calculated, where the downstream splitting level includes at least one splitting level, and the downstream splitting granularity includes a splitting granularity corresponding to each splitting level.

5. The NoC multi-stage out-of-order transmission packet processing method based on split prediction according to any one of claims 1 to 4, characterized in that: The predicting, based on the transmission packet receiving capability parameter, a downstream caching strategy for the first transmission packet includes: determining, based on the transmission packet receiving capability parameter, whether the target slave has a reserve cache space required to satisfy the downstream splitting strategy; When it is determined that the target slave has the reserve cache space required to satisfy the downstream splitting strategy, predicting the downstream cache strategy of the first transmission packet according to the reserve cache space; When it is determined that the target slave machine does not have the reserve cache space required to meet the downstream splitting strategy, an upstream back pressure instruction of the target slave machine is generated according to the target priority parameter of the first transmission packet to regulate the current cache space of the target slave machine and re-trigger the execution of the operation of determining whether the target slave machine has the reserve cache space required to meet the downstream splitting strategy.

6. The NoC multi-stage out-of-order transmission packet processing method based on split prediction according to any one of claims 1 to 4, characterized in that: Generating a target output instruction according to the downstream splitting strategy and the downstream caching strategy includes: determining, according to the downstream splitting strategy and the downstream cache strategy, whether all the second transmission packets have completed the cache reordering and merging operation at the target slave; When it is determined that all the second transmission packets have completed the cache reordering and merging operation in the target slave machine, a target output instruction is generated according to all the split level identifiers and all the sequence identifiers; Furthermore, before determining, based on the downstream splitting strategy and the downstream cache strategy, whether all the second transmission packets have completed the cache reordering and merging operation on the target slave, the method further comprises: Determining a cache address of each second transmission packet according to the multi-level pointer linked list; For each split level identifier, determining, based on the cache addresses and sequence identifiers of all the second transmission packets corresponding to the split level identifier, whether all the second transmission packets corresponding to the split level identifier are completely transmitted to the target slave and all the sequence identifiers match a preset sequence identifier; When it is determined that all the second transmission packets corresponding to all the split level identifiers are completely transmitted to the target slave machine and all the sequence identifiers match the preset sequence identifiers, the operation of determining whether all the second transmission packets have completed the cache reordering and merging operation in the target slave machine according to the downstream splitting strategy and the downstream cache strategy is triggered.

7. A NoC multi-stage out-of-order transmission packet processing device based on split prediction, characterized in that: The device comprises: an identification module, configured to identify a target slave machine according to a first transmission packet parameter of the host machine, wherein the target slave machine is configured to receive a first transmission packet corresponding to the first transmission packet parameter; a determination module, configured to determine a current transmission packet receiving capability parameter of the target slave; a prediction module, configured to predict a downstream splitting strategy and a downstream caching strategy for the first transmission packet based on the transmission packet receiving capability parameter, wherein the downstream splitting strategy is configured to split the first transmission packet into at least one level of second transmission packets that matches the transmission packet receiving capability parameter, each second transmission packet having a splitting level identifier and a sequence identifier corresponding to the second transmission packet, and the downstream caching strategy is configured to instruct the target slave to determine a target cache space for each second transmission packet, and to perform a cache reordering and merging operation on all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers; A generation module is used to generate a target output instruction based on the downstream splitting strategy and the downstream cache strategy, and the target output instruction is used to instruct the target slave machine to output all the second transmission packets based on all the splitting level identifiers and all the sequence identifiers, and release the target cache space corresponding to the downstream cache strategy.

8. An electronic unit, characterized in that: The electronic unit is integrated in a host, and is used to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction according to any one of claims 1 to 6.

9. A NoC multi-stage out-of-order transmission packet processing device based on split prediction, characterized in that: The device comprises: a memory storing executable program code; a processor coupled to the memory; The processor calls the executable program code stored in the memory to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction according to any one of claims 1 to 6.

10. A computer storage medium, characterized in that The computer storage medium stores computer instructions, and when the computer instructions are called, they are used to execute the NoC multi-stage out-of-order transmission packet processing method based on split prediction according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Descrambling method, device and system under multistage parallel switching architecture

    CN111953618A

  • Method and system for reordering out-of-order response based on AXI protocol

    CN116414767A

  • Burst data transmission method and device

    CN118337723A

  • Various methods and apparatus to support transactions whose data address sequence within that transaction crosses an interleaved channel address boundary

    US20080320254A1

  • Method and device for setting out-of-order value of network

    US20200213041A1