Multistage interconnection network based on real-time flow monitoring and dynamic priority adjustment
By using a multi-level interconnected network arbitration circuit with real-time traffic monitoring and dynamic priority adjustment, the problem of traditional static arbitrators being unable to detect sudden changes in traffic patterns caused by task switching is solved. Through the multi-level interconnected network with real-time traffic monitoring and dynamic priority adjustment, communication efficiency and system fairness are improved, achieving strong robustness to sudden traffic and enhanced system fairness. This significantly improves communication efficiency, system communication adaptability, and data flow scheduling capabilities.
Patent Information
- Application Number
- CN202511219206.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2025-11-28
AI Technical Summary
Traditional static arbitration schemes cannot detect sudden changes in traffic patterns caused by task switching, resulting in a decrease in hardware resource utilization. Existing dynamic arbitrators lack the ability to model global traffic characteristics, causing bandwidth waste and low-priority flow starvation, which affects system efficiency and reliability.
Design a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment. Through real-time traffic monitoring, urgency calculation and dynamic arbitration mechanism, optimize arbitration decision-making and improve communication efficiency and system fairness.
It significantly improves the communication efficiency of multi-core systems, ensures the quality of service for high-priority traffic, prevents starvation of low-priority requests, and provides a highly reliable and low-latency interconnect solution.
Smart Images

Figure CN121037307A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of integrated circuit design, and more specifically to a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment. Background Technology
[0002] The core value of intelligent reconfigurable computing systems lies in their ability to dynamically reconfigure hardware resources based on real-time task requirements (such as AI inference, streaming data processing, or low-latency control). This places high demands on the communication scheduling mechanism of multilevel interconnected networks (NoC). However, traditional static arbitration schemes (such as fixed priority or round-robin scheduling) have fundamental limitations. Their rigid scheduling strategies cannot detect sudden changes in traffic patterns caused by task switching, resulting in a hardware resource utilization rate drop of over 40%. More seriously, existing dynamic arbitrators can only respond to single-point congestion events and lack the ability to model global traffic characteristics. This lack of dynamic adaptability not only wastes bandwidth but also hinders real-time performance guarantees during concurrent execution of multiple tasks.
[0003] With the increasing adoption of reconfigurable architectures in edge computing and real-time control systems, their communication loads are increasingly exhibiting hybrid criticality characteristics. Existing arbitration mechanisms, unable to dynamically balance bandwidth allocation across different priorities, lead to severe fairness imbalances, with low-priority flows experiencing prolonged starvation in congested scenarios. This imbalance not only reduces overall system efficiency but may also trigger cascading failures, seriously threatening the safe operation of high-reliability scenarios such as autonomous driving and the Industrial Internet of Things. Summary of the Invention
[0004] The technical problem solved by this invention is to provide a multi-level interconnected network arbitration circuit that optimizes arbitration decisions and improves the overall communication efficiency of the system by real-time monitoring of traffic and dynamic priority adjustment. This enhances the communication adaptability and data flow scheduling capabilities of intelligent reconfigurable architectures to handle diverse computing loads.
[0005] The technical solution adopted in this invention is: a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment, including several computing clusters, several cluster gateways, a secondary routing network, and a shared resource pool; each computing cluster includes several processing units, a shared L1 / L2 cache controller, and a fully connected cross switch; the several processing units share an L1 / L2 cache, and the fully connected cross switch is used for data transmission between processing units; each processing unit and the shared L1 / L2 cache controller are directly connected to the fully connected cross switch, and the output of the fully connected cross switch is connected to the cluster gateway;
[0006] Each cluster gateway includes a protocol conversion module, a credit-based traffic shaper, and a dynamic arbitration unit.
[0007] The protocol conversion module converts the extensible interface protocol into a custom network protocol packet, which is then sent to the credit-based traffic shaper and the real-time traffic statistician.
[0008] The dynamic arbitration unit includes a real-time traffic statistician, a urgency calculation engine, a strategy decision-maker, and an arbitration execution matrix. The real-time traffic statistician monitors the real-time traffic intensity of each output virtual channel. The urgency calculation engine calculates the urgency score of each output virtual channel based on the real-time traffic intensity, queue depth, global congestion signal, and static priority. The strategy decision-maker selects an arbitration strategy based on the urgency score. The arbitration execution matrix executes the generated arbitration strategy.
[0009] The credit-based traffic shaper is used to customize network protocol packet admission control, injecting the data packets after arbitration decisions into the secondary routing network. The routers select the shortest path for forwarding based on the destination address. The congestion signals generated by the routers in the secondary routing network are fed back to the dynamic arbitration unit to adjust the arbitration strategy in real time. There are bidirectional links between routers in the secondary routing network, and the terminals in the secondary routing network connect to the shared resource pool.
[0010] Furthermore, the real-time traffic counter employs a monitoring system consisting of a 32-bit sliding window counter and a 64-bit throughput accumulator. The sliding window size is configured to be 16–256 clock cycles, and the number of data packets and the total number of bytes in the output channel are automatically recorded in each cycle. When a new data packet arrives, the window register performs a cyclic shift operation, discarding the earliest cycle data and storing the latest data. The traffic intensity of the data sent by the cluster is calculated by a traffic intensity calculation circuit, which is implemented using a shift divider. The current cycle packet count is shifted right by n bits to obtain a normalized traffic intensity index.
[0011] Furthermore, the urgency calculation engine employs a multi-factor weighted accumulator to calculate the urgency value:
[0012] Acquire real-time traffic data, perform 8-bit fixed-point multiplication, perform 32-bit addition tree accumulation, and output a 4-bit urgency value after saturation processing.
[0013] The calculation formula for the multi-factor weighted accumulator is as follows: Urgency = α × Traffic Intensity + β × Queue Occupancy + γ × Congestion Flag + δ × Static Priority; The urgency calculation engine supports single-cycle calculation, where the configurable coefficients α, β, γ, and δ are stored in the configuration register.
[0014] Furthermore, the strategy decision-maker includes three comparator circuits operating in parallel: the first comparator triggers a fixed-priority arbitrator when urgency > 0.75, the second comparator triggers a weighted round-robin arbitrator when 0.5 < urgency ≤ 0.75, and the third comparator triggers a round-robin arbitrator when urgency ≤ 0.5; the arbitration result is output in real time through a 4:1 multiplexer, and the switching delay is controlled at the single-gate level;
[0015] The policy decision maker adopts a finite state machine architecture, with idle state, congestion-dominated mode state, flow-dominated mode state and fair-dominated mode state; the congestion-dominated mode has higher priority than the flow-dominated mode, and the congestion-dominated mode is activated when a congestion event is detected.
[0016] Furthermore, the configurable coefficients of the urgency calculation engine support dynamic updates and execute optimization algorithms according to the working mode: congestion-dominated mode increases the γ coefficient while decreasing the β coefficient, flow-dominated mode increases the α coefficient while decreasing the δ coefficient, and fairness-dominated mode increases the β coefficient while decreasing the γ coefficient.
[0017] Furthermore, the weights of each port of the weighted round-robin arbitrator are determined based on a time factor, a depth factor, and a fairness factor:
[0018] Time factor = 0.05·2 timer / 16 ;
[0019] Depth factor = queue depth × 0.3;
[0020] Fairness factor = 1.0 / (Number of services / Total number of arbitrations · Base weight + 0.1);
[0021] Dynamic factor = min(0.6, time factor + depth factor + fairness factor);
[0022] The final weight of the weighted round-robin arbitrator = round(base weight × (1 + dynamic factor)).
[0023] Furthermore, the credit-based traffic shaper maintains a credit value for each port when using a weighted round-robin arbitrator. The initial credit value is equal to the weight value. In each cycle, the weighted round-robin arbitrator selects the port with the highest credit value for service. After the selected port sends data, its credit value is reduced by the total weight value, which refers to the sum of the weights of all ports. In each cycle, regardless of whether there is service, the credit value of each port is increased by the port's own weight value.
[0024] Furthermore, the fairness-dominated mode is activated when the fairness index is below a threshold, where the fairness index = (Σ(weighting factor × port throughput)). 2 / (Number of ports × Σ(weighting factor × port throughput)) 2 )).
[0025] Furthermore, the secondary routing network adopts an improved Flattened Butterfly topology, where each router forms a physical connection with routers in the same row, column, and diagonal positions. Data packet transmission follows these rules: priority is given to transmission along the row direction, followed by transmission along the column direction, and the diagonal path is dedicated to congestion avoidance and hotspot area routing. The diagonal path establishes direct physical links between routing nodes (i,j) and (i+1,j+1), and between routing nodes (i,j) and (i+1,j-1).
[0026] Furthermore, the routers in the secondary routing network include a traffic monitoring unit for generating congestion signals and transmitting them to the dynamic arbitration unit;
[0027] The congestion signal and fairness index generated by the router are fed back to the dynamic arbitration unit. The dynamic arbitration unit adjusts the arbitration strategy in real time according to the signal. After the urgency calculation engine adjusts the parameters, it sends them to the arbitration execution matrix through a dedicated configuration bus to form a closed-loop control.
[0028] The advantages of this invention compared to the prior art are:
[0029] (1) This invention significantly improves the communication efficiency of large-scale multi-core systems through innovative dynamic arbitration mechanism and hierarchical interconnection architecture. The hardware-integrated real-time traffic monitoring and dynamic arbitration unit solves the latency bottleneck of traditional centralized arbitrators and achieves nanosecond-level decision response.
[0030] (2) The present invention is based on a urgency calculation engine with multi-dimensional parameter fusion combined with a strategy switching mechanism. While ensuring the service quality of high-priority traffic, it effectively prevents starvation of low-priority requests and significantly optimizes system fairness.
[0031] (3) The present invention adopts a collaborative control of global congestion feedback and local decision-making to form an adaptive closed loop, which enables the overall architecture to have strong robustness against burst traffic, improves throughput while reducing energy consumption, and provides a scalable, low-latency and highly reliable interconnect solution for multi-core processors. Attached Figure Description
[0032] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0033] Figure 1 This is a detailed structural diagram of a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment in an embodiment of the present invention;
[0034] Figure 2This is a specific structural diagram of the dynamic arbitration unit in a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment in this embodiment of the invention;
[0035] Figure 3 This is a specific structural diagram of the real-time traffic statistician in a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment in this embodiment of the invention;
[0036] Figure 4 This is a specific structural diagram of the arbitration execution matrix in a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment in this embodiment of the invention;
[0037] Figure 5 This is the internal structure of a router node in a secondary routing network within a multi-level interconnected network based on real-time traffic monitoring and dynamic priority adjustment, as described in this embodiment of the invention.
[0038] Figure 6 This is a schematic diagram of traffic shaping and arbitration collaboration in a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment in an embodiment of the present invention;
[0039] Figure 7 This is a schematic diagram of the dynamic adjustment mechanism of a multi-level interconnected network based on real-time traffic monitoring and dynamic priority adjustment in an embodiment of the present invention. Detailed Implementation
[0040] The present application will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the invention. Furthermore, it should be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings.
[0041] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.
[0042] A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment includes several computing clusters, several cluster gateways, a secondary routing network, and a shared resource pool. Each computing cluster includes several processing units, a shared L1 / L2 cache controller, and a fully connected crossbar switch. The processing units share an L1 / L2 cache, and the fully connected crossbar switch is used for data transmission between processing units. Each processing unit and the shared L1 / L2 cache controller are directly connected to the fully connected crossbar switch, and the output of the fully connected crossbar switch is connected to the cluster gateway.
[0043] Each cluster gateway includes a protocol conversion module, a credit-based traffic shaper, and a dynamic arbitration unit.
[0044] The protocol conversion module converts the extensible interface protocol into a custom network protocol packet, which is then sent to the credit-based traffic shaper and the real-time traffic statistician.
[0045] The dynamic arbitration unit includes a real-time traffic statistician, a urgency calculation engine, a strategy decision-maker, and an arbitration execution matrix. The real-time traffic statistician monitors the real-time traffic intensity of each output virtual channel. The urgency calculation engine calculates the urgency score of each output virtual channel based on the real-time traffic intensity, queue depth, global congestion signal, and static priority. The strategy decision-maker selects an arbitration strategy based on the urgency score. The arbitration execution matrix executes the generated arbitration strategy.
[0046] The credit-based traffic shaper is used to customize network protocol packet admission control, injecting the data packets after arbitration decisions into the secondary routing network. The routers select the shortest path for forwarding based on the destination address. The congestion signals generated by the routers in the secondary routing network are fed back to the dynamic arbitration unit to adjust the arbitration strategy in real time. There are bidirectional links between routers in the secondary routing network, and the terminals in the secondary routing network connect to the shared resource pool.
[0047] The real-time traffic counter uses a monitoring system consisting of a 32-bit sliding window counter and a 64-bit throughput accumulator. The sliding window size is configured to be 16 to 256 clock cycles, and the number of data packets and the total number of bytes in the output channel are automatically recorded in each cycle. When a new data packet arrives, the window register performs a cyclic shift operation, discarding the earliest cycle data and storing the latest data. The traffic intensity of the data sent by the cluster is calculated by a traffic intensity calculation circuit, which is implemented using a shift divider. The current cycle packet count is shifted right by n bits to obtain a normalized traffic intensity index.
[0048] The urgency calculation engine uses a multi-factor weighted accumulator to calculate the urgency value:
[0049] Acquire real-time traffic data, perform 8-bit fixed-point multiplication, perform 32-bit addition tree accumulation, and output a 4-bit urgency value after saturation processing.
[0050] The calculation formula for the multi-factor weighted accumulator is as follows: Urgency = α × Traffic Intensity + β × Queue Occupancy + γ × Congestion Flag + δ × Static Priority; The urgency calculation engine supports single-cycle calculation, where the configurable coefficients α, β, γ, and δ are stored in the configuration register.
[0051] The strategy decision-maker includes three comparator circuits operating in parallel: the first comparator triggers a fixed-priority arbitrator when urgency > 0.75, the second comparator triggers a weighted round-robin arbitrator when 0.5 < urgency ≤ 0.75, and the third comparator triggers a round-robin arbitrator when urgency ≤ 0.5; the arbitration result is output in real time through a 4:1 multiplexer, and the switching delay is controlled at the single-gate level;
[0052] The policy decision maker adopts a finite state machine architecture, with idle state, congestion-dominated mode state, flow-dominated mode state and fair-dominated mode state; the congestion-dominated mode has higher priority than the flow-dominated mode, and the congestion-dominated mode is activated when a congestion event is detected.
[0053] The configurable coefficients of the urgency calculation engine support dynamic updates, executing optimization algorithms based on the operating mode: congestion-dominated mode increases the γ coefficient while decreasing the β coefficient; flow-dominated mode increases the α coefficient while decreasing the δ coefficient; and fairness-dominated mode increases the β coefficient while decreasing the γ coefficient. The adjustment range of the configurable coefficients is determined by the bit width of the configurable coefficients in the urgency engine. For example, if the design bit width is 4, the normalized value expressed as the configurable coefficient will range from 0 to 1, with each adjustment increment being 1 / 2. 4 =0.0625.
[0054] The weights of each port of the weighted round-robin arbitrator are determined based on a time factor, a depth factor, and a fairness factor:
[0055] Time factor = 0.05·2 timer / 16 ;
[0056] Depth factor = queue depth × 0.3;
[0057] Fairness factor = 1.0 / (Number of services / Total number of arbitrations · Base weight + 0.1);
[0058] Dynamic factor = min(0.6, time factor + depth factor + fairness factor);
[0059] The final weight of the weighted round-robin arbitrator = round(base weight × (1 + dynamic factor)).
[0060] The credit-based traffic shaper maintains a credit value for each port when using a weighted round-robin arbitrator. The initial credit value is equal to the weight value. In each period, the weighted round-robin arbitrator selects the port with the highest credit value to provide service. After the selected port sends data, its credit value is reduced by the total weight value, which refers to the sum of the weights of all ports. In each period, regardless of whether there is service, the credit value of each port is increased by the port's own weight value.
[0061] The fairness-driven mode is activated when the fairness index is below a threshold, where the fairness index = (Σ(weighting factor × port throughput)). 2 / (Number of ports × Σ(weighting factor × port throughput)) 2 )).
[0062] The secondary routing network adopts an improved Flattened Butterfly topology, where each router forms a physical connection with routers in the same row, column, and diagonal. Data packet transmission follows these rules: priority is given to transmission along the row direction, followed by transmission along the column direction, and the diagonal path is dedicated to congestion avoidance and hotspot area routing. The diagonal path establishes direct physical links between routing nodes (i,j) and (i+1,j+1), and between routing nodes (i,j) and (i+1,j-1).
[0063] The routers in the secondary routing network include a traffic monitoring unit for generating congestion signals and transmitting them to the dynamic arbitration unit;
[0064] The congestion signal and fairness index generated by the router are fed back to the dynamic arbitration unit. The dynamic arbitration unit adjusts the arbitration strategy in real time according to the signal. After the urgency calculation engine adjusts the parameters, it sends them to the arbitration execution matrix through a dedicated configuration bus to form a closed-loop control.
[0065] Example:
[0066] This invention provides a multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment, including multiple computing clusters, cluster gateways, secondary routing networks, shared resources, etc. To more clearly illustrate this invention, the various parts of the embodiments are described in detail below with reference to the accompanying drawings.
[0067] Specifically, such as Figure 1 As shown, the computing cluster layer comprises multiple computing clusters n, each centered around a processing unit (PE). Within each cluster, multiple PEs share a 2MB L2 cache, and data consistency between PEs is guaranteed by the MOESI consistency protocol. A fully connected crossbar switch employs a 64×64 multiplexer matrix, supporting a 256-bit width, for data transmission between PEs. PEs and the cache controller are directly connected to the crossbar switch via an AXI4-Stream interface, and the crossbar switch output is connected to the cluster gateway (arrows indicate the data flow direction).
[0068] like Figure 1 As shown, the cluster gateway layer includes a protocol converter, a traffic shaper, and a Dynamic Arbitration Unit (DAU). The protocol converter reassembles AXI4 protocol packets into a custom frame structure with an 8-byte header, a 24-byte address, 128 bytes of data, and an 8-byte CRC. The traffic shaper is based on a credit system. The DAU includes a real-time traffic statistics unit, a urgency calculation engine, a policy decision-maker, and an arbitration execution matrix.
[0069] Figure 1The secondary routing network employs an improved Flattened Butterfly topology with bidirectional links between routers. Each router integrates four virtual channels and a traffic monitoring unit, enabling real-time collection of VC occupancy, dynamic threshold congestion detection, and ultimately, DAU policy adjustment to achieve traffic shaping. Network terminals connect to a shared resource pool, including a final-level cache (LLC), a DDR memory controller, and a PCIe high-speed I / O interface.
[0070] The Dynamic Arbitration Unit (DAU) is an internal module circuit of the cluster gateway, consisting of a collaborative working chain of four dedicated hardware modules, including a real-time traffic statistician, a urgency calculation engine, a strategy decision-maker, and an arbitration execution matrix. Figure 2 The internal components of the DAU and their logical relationships are shown. The system takes a real-time traffic statistician, network interface, queue status register, and configuration register group as inputs. The urgency calculation engine generates a traffic shaping strategy, the policy decision-maker determines the arbitration strategy, and finally, the arbitration execution matrix produces the final decision, completing the feedback adjustment of the secondary routing network.
[0071] The real-time traffic counter employs a monitoring system consisting of a 32-bit sliding window counter and a 64-bit throughput accumulator. The window size is configurable from 16 to 256 clock cycles, automatically recording the number of data packets and the total number of bytes in the output channel each cycle. When a new data packet arrives, the window register performs a cyclic shift operation, discarding the oldest cycle data and storing the latest data. The traffic intensity of the data emitted by the cluster is calculated by a traffic intensity calculation circuit, which uses a shift divider to right-shift the current cycle packet count by n bits to obtain a normalized traffic intensity index.
[0072] The internal structure of the real-time traffic counter is as follows: Figure 3As shown. The real-time traffic counter adopts a sliding window-based hardware monitoring mechanism, realizing real-time acquisition and analysis of traffic characteristics through multi-level collaborative circuits. The core of the circuit includes a 256×40-bit shift register array, which automatically records the valid status and byte size of arriving data packets every cycle. When a data packet arrives, 8 bits of packet size data are stored in the register, and the packet counter is incremented by 1, while the byte accumulator is incremented by the corresponding number of bytes. The shift register adopts a circular storage structure, automatically discarding the oldest data when new data arrives, maintaining a fixed time window. The subtractor unit extracts the historical data that has been shifted out in real time, and synchronously updates the packet counter and byte accumulator to ensure that the statistical data always reflects the accurate traffic within the current window. The traffic intensity calculation is completed by a dedicated shift divider, which shifts the current packet count value to the right by n bits (n = log2 window size) and directly outputs a normalized value of 0-255. For example, when the window is configured to 256 cycles, a packet count value of 128 corresponds to a traffic intensity of 128 (128 / 256 = 0.5). The entire data processing path adopts a four-stage pipeline design: the first stage acquires input data; the second stage updates registers and accumulators; the third stage performs subtraction operations; and the fourth stage completes division output.
[0073] The core of the urgency calculation engine is a multi-factor weighted accumulator, which performs hardware calculations of the following formula: Urgency = α × Traffic Intensity + β × Queue Occupancy + γ × Congestion Flag + δ × Static Priority. Traffic Intensity = Current Packet Count / Window Size; Queue Depth = Current Queue Occupancy / Total Capacity; Congestion Flag = Upstream VC Occupancy Exceeds Threshold Flag.
[0074] α, β, γ, and δ are 4-bit configurable coefficients stored in a dedicated register set. The calculation engine employs a four-stage pipeline design: the first stage acquires real-time traffic data; the second stage performs 8-bit fixed-point multiplication (coefficient × input); the third stage performs 32-bit addition tree accumulation; and the fourth stage performs saturation processing to output a 4-bit urgency value, supporting single-cycle completion of the calculation. The congestion flag comes from the 8-bit status bus of the secondary network router, and the corresponding bit is set when the occupancy rate of any virtual channel exceeds the dynamic threshold (initial value 85%).
[0075] A communication pattern feature matrix is established based on typical workloads. Typical general initial values are as follows: traffic intensity weight α = 0.4; queue depth weight β = 0.25; congestion signal weight γ = 0.25; static priority weight δ = 0.1.
[0076] The policy decision-maker consists of three comparator circuits operating in parallel: the first comparator (urgency > 0.75) triggers a fixed priority enable signal; the second comparator (0.5 < urgency ≤ 0.75) triggers a weighted polling enable; and the third comparator (urgency ≤ 0.5) triggers a polling enable. A "pre-computation-selection" architecture is adopted: the three arbitrators always operate in parallel, and the policy decision-maker outputs the decision result of the currently active arbitrator in real time through a 4:1 multiplexer. The switching delay is controlled at the single-gate level, greatly eliminating the policy transition window.
[0077] The arbitration enforcement matrix structure is as follows: Figure 4 As shown, the hardware implementation includes three types of arbitrators: The fixed-priority arbitrator uses a hard-wired priority encoder, with processing core 0 having the highest priority, followed by processing core 7. The weighted round-robin arbitrator integrates an adaptive weight adjustment circuit, with each port configured with a 4-bit weight register. When a port is found to have been unserved for three consecutive cycles, the dynamic weight factor is automatically adjusted; after servicing, the dynamic factor gradually decays, achieving dynamic balance. The round-robin arbitrator is based on a cyclic shift register, automatically switching to the next port after each authorization. The arbitration matrix output is connected to the output channel via a multiplexer, with the selection signal coming directly from the policy decision-maker.
[0078] If a sudden surge in traffic occurs, the packet_valid value in the real-time traffic statistics unit will remain high, indicating an increase in traffic intensity. Based on this, the DAU will increase its urgency score and switch to fixed-priority mode. The arbitrator will then prioritize scheduling higher-priority data streams to prevent computational stagnation. Once the traffic stabilizes, the statistics unit will detect a decrease in intensity, and the DAU will resume weighted round-robin mode.
[0079] The internal structure of the router nodes in the secondary routing network is as follows: Figure 5 As shown. Each input port is configured with four Control Flow (VC) buffers, with priorities from highest to lowest: VC0, VC1, VC2, and VC3, corresponding to control flow, real-time flow, data flow, and background flow, respectively. Each VC buffer has a depth of 128 entries and is implemented using dual-port SRAM. When the buffer occupancy rate is >95%, a backpressure signal is triggered to stop upstream transmission. The router uses a weighted decision based on packet age and VC priority, with arbitration weight = base weight × (1 + packet wait period / 64). The hardware employs a two-level arbitration mechanism: arbitration within the VC group followed by cross-VC arbitration. The packet with the highest priority is ultimately authorized to be sent to the cross switch for transmission to the next routing node. When a VC packet waits for more than a threshold (default 32 periods), its priority weight is increased by 50%. If there is still no authorization, the resources of the lowest priority VC are forcibly replaced.
[0080] The secondary routing network employs a modified Flattened Butterfly topology, a low-diameter topology that reduces hop count by increasing physical connections. Each router is directly connected to other routers in the same row and column. Furthermore, diagonal router connections are added, with physical paths formed between routers at positions (i,j) and (i+1,j+1) and (i+1,j-1). During packet transmission, row-oriented transmission is prioritized, followed by column-oriented transmission. The diagonal paths are used for congestion avoidance, hotspot routing, and long-distance direct communication.
[0081] In the multi-level interconnected network, when a processing unit initiates a cross-cluster communication request, the data packet first reaches the gateway through the crossover switch within the cluster. The gateway's traffic shaper performs admission control based on a credit system, and the data packet then enters the DAU processing queue. The real-time traffic statistician continuously updates window data, and the urgency calculation engine generates the latest score every cycle. The policy decision-maker activates the corresponding arbitrator based on the score: high-urgency traffic (such as cache consistency requests) directly enters the fixed-priority channel; medium-urgency traffic (such as computational data exchange) is allocated time slots according to weight; low-urgency traffic (such as background synchronization) uses fair round-robin. After the arbitration decision, the data packet is injected into the secondary routing network, and the router selects the shortest path for forwarding based on the destination address. The entire process forms a closed-loop control: the congestion signals generated by the router are fed back to the DAU, adjusting the arbitration strategy in real time. Different feedback mechanisms are formed for different congestion events to generate different coefficient adjustment strategies.
[0082] Traffic shaping and arbitration collaboration, such as Figure 6As shown. When the processing unit (PE) sends a request packet, the gateway's protocol conversion module first converts the AXI4 protocol into a custom network protocol packet. This packet is simultaneously sent to the shaping path and the arbitration path. The shaping path uses a credit-based traffic shaper, with the credit counter dynamically adjusted based on the credit feedback from the target router. In the arbitration path, the real-time traffic statistician immediately captures packet characteristics, and the 32-bit sliding window register completes traffic strength calculation within one clock cycle. The urgency calculation engine synchronously receives the 16-bit queue depth provided by the traffic shaper, the 8-bit congestion flag fed back by the secondary router, and the static priority parameters preloaded in the configuration register, and calculates the urgency value. The policy decision-maker triggers a three-level response based on the urgency value. High urgency (>0.75) activates the fixed-priority arbitrator, which directly sends a preemption request to the output port. At this point, the traffic shaper is bypassed, and data packets are injected into the network with the highest priority. For medium urgency (0.5-0.75), a weighted round-robin arbitrator is activated, simultaneously triggering a credit allocation algorithm. The weight calculation module dynamically adjusts based on historical service records, and the credit counter allocates sending quotas according to weight, ensuring that high-weight ports can send 2-4 packets per cycle. For low urgency (<0.5), the round-robin arbitrator is activated, and the traffic shaper switches to strict fairness mode. Each port rotates service according to a fixed period, with credit values uniformly set to 1:1:1:1. After data packets are injected into the secondary network, the router's traffic monitoring unit continuously collects key indicators such as virtual channel occupancy, end-to-end packet latency, and packet loss rate. When a congestion event occurs, a congestion flag signal is generated and broadcast to all gateways via a dedicated control link.
[0083] The weights of the weighted round-robin arbitrator are influenced by a time factor, a depth factor, and a fairness factor. The time factor is 0.05·2. timer / 16 Depth factor = queue depth × 0.3; Fairness factor = 1.0 / (number of services / total number of arbitrations × base weight + 0.1); Dynamic factor = min(0.6, time factor + depth factor + fairness factor). Final weight = round(base weight × (1 + dynamic factor)).
[0084] The weighted round-robin arbitrator employs a credit-based decision-making mechanism, maintaining a credit value for each port, initially equal to its weight value. In each period, the arbitrator selects the port with the highest credit value for service (if multiple maximum values exist, the port with the lowest value is selected). After sending data, the selected port's credit value is reduced by its total weight value. Regardless of whether service is provided in each period, each port's credit value is increased by its own weight value.
[0085] Figure 7This demonstrates the runtime dynamic adjustment mechanism of DAU. By monitoring system status in real time and adaptively modifying the urgency calculation coefficient, intelligent optimization scheduling of communication resources is achieved. The policy decision-maker is the core control unit of the adjustment mechanism, employing a finite state machine architecture to implement mode switching. The idle state is the default working state, continuously monitoring event flags. The congestion-dominated mode is activated upon detecting a congestion event, prioritizing high-urgency traffic. The traffic-dominated mode is used to respond to low-throughput events, focusing on improving system bandwidth utilization. Congestion mode has higher priority than traffic mode. The fairness-dominated mode is activated when the fairness index is insufficient, preventing low-priority requests from starving.
[0086] The fairness index adopts the improved Jain index, and the fairness index = (Σ(weight factor × port throughput)). 2 / (Number of ports × Σ(weighting factor × port throughput)) 2 This index reflects the system designer's fairness requirements for different types of traffic through weighting factors, providing a quantitative basis for dynamic arbitration. The weighting factor actually refers to the weight value of each port. The fairness index is calculated by summing the throughput and weight of each port. When the fairness index is lower than the threshold, it will switch to the fairness-dominated mode.
[0087] After receiving the signal, the DAU dynamically adjusts the calculation parameters. The congestion signal feedback will trigger the adjustment of configuration parameters in response to different events.
[0088] Event Type Coefficient adjustment strategy Triggering conditions Severe congestion (>85% VC occupancy) γ+1,β-1 Exceeding the threshold for 3 consecutive periods Low throughput (<50% bandwidth) α+1,δ-1 128 cycles Fairness violation (Jain < 0.8) β+1,γ-1 Tested once every 512 cycles.
[0089] When the bit width of the configurable coefficient in the urgency engine is 4, the parameter step size is 0.0625. The coefficient adjustment unit executes the coefficient optimization algorithm according to the current working mode. In congestion-driven mode, the γ coefficient (congestion response weight) is increased by 0.0625, and the β coefficient (queue depth weight) is decreased by 0.0625 to strengthen the impact of congestion signals and intervene in congestion control in advance. In traffic-driven mode, the α coefficient (traffic intensity weight) is increased by 0.0625, and the δ coefficient (static priority weight) is decreased by 0.0625 to increase the weight of high-activity channels and break the static priority limit. In fairness-driven mode, the β coefficient (queue depth weight) is increased by 0.0625, and the γ coefficient (congestion response weight) is decreased by 0.0625 to focus on long-queued requests and prevent low-priority flow starvation. Adjustment in the same direction stops when the coefficient reaches the limit value (0 or 0.9375).
[0090] The following example illustrates the system's dynamic adjustment mechanism. Port0 has a static priority of 0.9, Port1 has a static priority of 0.7, and Port2 has a static priority of 0.3. Initially, traffic on each port is normal. Then, a sudden surge in traffic on Port0 causes insufficient service on other ports. The system restores balance through a dynamic adjustment mechanism. Initial state: Port0 = 0.6, Port1 = 0.5, Port2 = 0.4; Port0 = 30%, Port1 = 40%, Port2 = 50%; No congestion signal (γ input = 0); Coefficients: α = 0.4, β = 0.25, γ = 0.25, δ = 0.1. The initial urgency value for each port is calculated using the urgency calculation formula: Port0 = 0.405, Port1 = 0.37, and Port2 = 0.315. Based on the urgency selection strategy, since the urgency of all ports is less than 0.5, the round-robin (RR) strategy is chosen. In period T1, the traffic intensity of Port0 suddenly increases to 0.9, the queue depth increases to 70%, and the urgency values are updated to Port0 = 0.625, Port1 = 0.37, and Port2 = 0.315. At this time, the urgency of Port0 (0.625 > 0.5), and the system switches to Weighted Round Robin (WRR) mode. In WRR mode, a weight needs to be assigned to each port. The weight is determined by a base weight and a dynamic adjustment factor. For simplicity, the base weight is mapped according to the static priority: Port0 has a weight of 9, Port1 has a weight of 7, and Port2 has a weight of 3, for a total weight of 19. The service ratio is: Port0 47.4%, Port1 36.8%, and Port2 15.8%. When Port2 has not received service for 3 consecutive periods, a dynamic weight adjustment is triggered, the dynamic adjustment factor increases by 0.6, and the weight becomes 4.8. At the same time, the fairness index decreases, and the system detects that the fairness index < 0.8, entering the fairness-dominated mode. The coefficients are adjusted: the β value increases to 0.3125, and the γ value decreases to 0.1875. The urgency is recalculated: Port0 is 0.66875, Port1 is 0.395, and Port2 is 0.34525. WRR uses new weights: Port0 = 9, Port1 = 7, Port2 = 4.8, for a total weight of 20.8. According to the credit calculation rules, each port's credit value is added to its own weight value. Therefore, Port2 gains more credit value each time, making it easier for Port2 to receive service. The service ratio changes to Port0 ≈ 43.3%, Port1 ≈ 33.6%, and Port2 ≈ 23.1%, ultimately decreasing the queue depth and increasing the fairness index. When the fairness index > 0.8, the fairness-dominated mode is exited, and β and γ gradually return to their initial values. Because Port2 receives service, its dynamic weight begins to decay back to its base value.
[0091] In the example of the dynamic adjustment mechanism, the closed-loop feedback mechanism is as follows: traffic change → urgency change → arbitration strategy change → weight adjustment → service ratio change → queue status change → fairness change → coefficient adjustment → impact on urgency. Through urgency adjustment, arbitration weight amplification, and arbitration mode switching, DAU can achieve precise traffic control.
[0092] Although the steps in the above embodiments are described in the above order, those skilled in the art will understand that in order to achieve the effect of this embodiment, different steps do not need to be executed in such an order. They can be executed simultaneously (in parallel) or in a reverse order. These simple variations are all within the protection scope of this invention.
[0093] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process and related descriptions of the system described above can be found in the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0094] It should be noted that the multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment provided in the above embodiments is only an example of the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the modules or steps in the embodiments of the present invention can be further decomposed or combined. For example, the modules in the above embodiments can be merged into one module, or further divided into multiple sub-modules to complete all or part of the functions described above. The names of the modules and steps involved in the embodiments of the present invention are only for distinguishing the various modules or steps and are not considered as an improper limitation of the present invention.
[0095] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process and related descriptions of the storage device and processing device described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0096] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0097] The term "comprising" or any other similar term is intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus / device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent in such process, method, article, or apparatus / device.
[0098] The technical solution of the present invention has been described above with reference to the preferred embodiments shown in the accompanying drawings. However, it will be readily understood by those skilled in the art that the scope of protection of the present invention is obviously not limited to these specific embodiments. Without departing from the principles of the present invention, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will all fall within the scope of protection of the present invention.
Claims
1. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment, characterized in that, It includes several computing clusters, several cluster gateways, a secondary routing network, and a shared resource pool; each computing cluster includes several processing units, a shared cache controller, and a fully connected cross switch; several processing units share the shared cache controller, and the fully connected cross switch is used for data transmission between processing units; each processing unit and the shared cache controller are directly connected to the fully connected cross switch, and the output of the fully connected cross switch is connected to the cluster gateway; Each cluster gateway includes a protocol conversion module, a credit-based traffic shaper, and a dynamic arbitration unit; The protocol conversion module converts the extensible interface protocol into a custom network protocol packet, which is then sent to the credit-based traffic shaper and the real-time traffic statistician. The dynamic arbitration unit includes a real-time traffic statistician, a urgency calculation engine, a strategy decision-maker, and an arbitration execution matrix; The real-time flow counter monitors the real-time flow intensity of each output virtual channel; The urgency calculation engine calculates the urgency score for each output virtual channel based on real-time traffic intensity, queue depth, global congestion signals, and static priority. The strategy decision-maker selects the arbitration strategy based on the urgency score; The arbitration strategy generated by the arbitration execution matrix is executed. The credit-based traffic shaper is used to customize network protocol packet admission control, injecting the data packets after arbitration decisions into the secondary routing network. The routers select the shortest path for forwarding based on the destination address. The congestion signals generated by the routers in the secondary routing network are fed back to the dynamic arbitration unit to adjust the arbitration strategy in real time. There are bidirectional links between routers in the secondary routing network, and the terminals in the secondary routing network connect to the shared resource pool.
2. The multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 1, characterized in that, The real-time traffic counter uses a monitoring system consisting of a 32-bit sliding window counter and a 64-bit throughput accumulator. The sliding window size is configured to be 16 to 256 clock cycles, and the number of data packets and the total number of bytes in the output channel are automatically recorded in each cycle. When a new data packet arrives, the window register performs a cyclic shift operation, discarding the earliest cycle data and storing the latest data. The traffic intensity of the data sent by the cluster is calculated by a traffic intensity calculation circuit, which is implemented using a shift divider. The current cycle packet count is shifted right by n bits to obtain a normalized traffic intensity index.
3. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 1, characterized in that, The urgency calculation engine uses a multi-factor weighted accumulator to calculate the urgency value: Acquire real-time traffic data, perform 8-bit fixed-point multiplication, perform 32-bit addition tree accumulation, and output a 4-bit urgency value after saturation processing. The calculation formula for the multi-factor weighted accumulator is as follows: Urgency = α × Traffic Intensity + β × Queue Occupancy + γ × Congestion Flag + δ × Static Priority; The urgency calculation engine supports single-cycle calculation, where the configurable coefficients α, β, γ, and δ are stored in the configuration register.
4. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 3, characterized in that, The strategy decision-maker includes three comparator circuits operating in parallel: the first comparator triggers a fixed-priority arbitrator when urgency > 0.75, the second comparator triggers a weighted round-robin arbitrator when 0.5 < urgency ≤ 0.75, and the third comparator triggers a round-robin arbitrator when urgency ≤ 0.5; the arbitration result is output in real time through a 4:1 multiplexer, and the switching delay is controlled at the single-gate level; The policy decision-maker adopts a finite state machine architecture, with idle state, congestion-dominated mode state, flow-dominated mode state and fairness-dominated mode state; Congestion-dominated mode has higher priority than flow-dominated mode, and congestion-dominated mode is activated when a congestion event is detected.
5. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 4, characterized in that, The configurable coefficients of the urgency calculation engine support dynamic updates and execute optimization algorithms according to the working mode: the congestion-dominated mode increases the γ coefficient while decreasing the β coefficient, the flow-dominated mode increases the α coefficient while decreasing the δ coefficient, and the fairness-dominated mode increases the β coefficient while decreasing the γ coefficient.
6. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 4, characterized in that, The weights of each port of the weighted round-robin arbitrator are determined based on a time factor, a depth factor, and a fairness factor: Time factor = 0.05·2 timer / 16 ; Depth factor = queue depth × 0.3; Fairness factor = 1.0 / (Number of services / Total number of arbitrations · Base weight + 0.1); Dynamic factor = min(0.6, time factor + depth factor + fairness factor); The final weight of the weighted round-robin arbitrator = round(base weight × (1 + dynamic factor)).
7. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 6, characterized in that, The credit-based traffic shaper maintains a credit value for each port when using a weighted round-robin arbitrator. The initial credit value is equal to the weight value. In each period, the weighted round-robin arbitrator selects the port with the highest credit value to provide service. After the selected port sends data, its credit value is reduced by the total weight value, which refers to the sum of the weights of all ports. In each period, regardless of whether there is service, the credit value of each port is increased by the port's own weight value.
8. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 4, characterized in that, The fairness-dominated mode is activated when the fairness index is below a threshold, where the fairness index is (Σ(weight factor × port throughput))2 / (number of ports × Σ(weight factor × port throughput2)).
9. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 1, characterized in that, The secondary routing network adopts an improved Flattened Butterfly topology, where each router forms a physical connection with routers in the same row, column, and diagonal. Data packet transmission follows these rules: priority is given to transmission along the row direction, followed by transmission along the column direction, and the diagonal path is dedicated to congestion avoidance and hotspot area routing. The diagonal path establishes direct physical links between routing nodes (i,j) and (i+1,j+1), and between routing nodes (i,j) and (i+1,j-1).
10. A multi-level interconnection network based on real-time traffic monitoring and dynamic priority adjustment according to claim 9, characterized in that, The routers in the secondary routing network include a traffic monitoring unit for generating congestion signals and transmitting them to the dynamic arbitration unit; The congestion signal and fairness index generated by the router are fed back to the dynamic arbitration unit. The dynamic arbitration unit adjusts the arbitration strategy in real time according to the signal. After the urgency calculation engine adjusts the parameters, it sends them to the arbitration execution matrix through a dedicated configuration bus to form a closed-loop control.
Citation Information
Cited By
Data transmission method and system for collaborative operation of multiple intelligent devices with bodies
CN121644678A
Shared memory interconnection device, arbitration method and arbitration circuit
CN122086648A
A deep sequence inference engine dynamic computing power allocation method and acceleration method
CN122242742B