A multi-physical-path dynamic congestion factor updating method and device
Patent Information
- Application Number
- CN202610846432.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-12
- Publication Date
- 2026-08-28
- Estimated Expiration
- 2046-06-12
AI Technical Summary
[0006]本发明提供了一种多物理路径的动态拥塞因子更新方法及装置,以解决请求调控无法提前感知各物理路径的实时拥塞态势,无法针对不同路径、不同时钟域进行精细化延时采样与状态量化,导致拥塞判断准确性低、调控时机滞后,引发响应积压、反压传导、片上网络阻塞及时延增大的问题
[0021]本发明实施例的技术方案,通过为每条物理路径独立分配多个统计时间窗口,并仅对每个窗口内发出的首个请求进行往返延时计时,能够以最小开销精准获取各路径真实传输延时;通过对设定数量的单次实际延时值取平均,能够滤除瞬时波动干扰,得到稳定可靠的延时平均值;基于延时平均值与物理延时值的比值动态更新拥塞因子,使得拥塞因子能够实时、精准地反映每条物理路径的实际拥塞程度,从而实现对多物理路径拥塞状态的细粒度、自适应、提前感知,为请求注入控制提供精准依据,及时调控,保证响应处理能力与请求发送速率匹配,避免响应拥塞与反压传播,提升片上系统整体传输效率与稳定性。
Smart Images

Figure CN122387915B_ABST
Abstract
Claims
1. A dynamic congestion factor update method for multiple physical paths, characterized in that, The method, which involves hardware execution initiating a request from an on-chip system, wherein the on-chip system includes request initiation hardware, at least one level of request transmission module, and request response module, comprises: Multiple statistical time windows are independently allocated to each physical path; where the physical path is the path that the request takes from being sent to the request response module via the request transmission module to being returned to the request initiating hardware via the request transmission module. Whenever the request initiating hardware detects that it has issued the first request within any statistical time window on any physical path, the round-trip delay timer for the first request within the detected window from the sending of the request to the return of the response is started. Based on the round-trip delay timing results, the actual delay value of a single trip within the set time window is obtained compared with the set physical path; For each physical path, whenever a set number of single actual delay values are calculated consecutively, the average delay value of that physical path is obtained based on the set number of single actual delay values. The dynamic congestion factor of the matching physical path is updated based on the calculation result obtained by dividing the average delay by the physical delay value of the matching physical path.
2. The method according to claim 1, characterized in that, The method further includes: By using the statistical time window counter corresponding to each physical path, the count is periodically cyclically counted according to the clock frequency of the hardware that initiates the request, and the number of the first requests issued within the window under that physical path is counted in real time. Specifically, whenever the statistical time window counter of the preset physical path counts to the set number, a zeroing operation is performed and the physical path is triggered to perform a dynamic congestion factor update operation.
3. The method according to claim 2, characterized in that, The method further includes: During on-chip system initialization or application scenario switching, a corresponding congestion factor register and statistical time window counter are allocated to each physical path, and the statistical time of each physical path is divided into multiple consecutive statistical time windows. Configure the congestion factor register to store the initial and dynamically updated congestion factor values for the corresponding physical path; The statistical time window counter is configured to perform periodic cyclic counting according to the clock frequency of the request initiating hardware.
4. The method according to claim 1, characterized in that, The method further includes: During system-on-chip initialization or application scenario switching, the operating clock frequency of each module in the system-on-chip and the physical delay information of each module along all physical paths are written into the configuration register, and the physical delay information of each module along its physical path is written into the corresponding delay configuration register. Based on the operating clock frequency of each module and the physical delay information of each module under its respective physical path, the physical delay of each physical path is normalized to obtain a normalized physical delay value counted by the hardware clock frequency of the request initiation, which is used as the physical delay value corresponding to each physical path.
5. The method according to claim 1, characterized in that, The method further includes: Whenever a current request to be sent is obtained, the routing flag information carried in the current request is parsed, and the target physical path corresponding to the current request is determined according to the preset mapping relationship between the routing flag information and the physical path. Accordingly, after detecting that the request-initiating hardware has issued its first request within any statistical time window on any physical path, the process also includes: Generate a delay statistics flag matching the first request detected within the window, and construct a delay counter matching the delay statistics flag; Accordingly, the round-trip timer for the first request within the detected window, from request sending to response return, begins, including: Start the delay counter; Simultaneously with starting the delay counter, the generated delay statistics flag is sent to the request transmission module along with the first request in the window; Accordingly, based on the round-trip delay timing results, the actual delay value for a single trip within the set time window is obtained relative to the set physical path, including: If the current delay statistics flag and the current routing flag information are extracted from the received response, the current delay counter matching the current delay statistics flag is terminated, and the timing result in the current delay counter is obtained as a single actual delay value for the current physical path matching the current routing flag information.
6. The method according to claim 5, characterized in that, After determining the target physical path corresponding to the current request, the process also includes: Obtain the physical delay value of the target physical path, and predict the maximum physical capacity of the target physical path to receive a response based on the physical delay value; Based on the current dynamic congestion factor of the target physical path and the maximum physical capacity that the target physical path can receive, calculate the maximum actual capacity that the target physical path can receive. Obtain the current determined response processing capacity of the target physical path in the response buffer within the request initiating hardware, and combine the maximum actual capacity with the current determined response processing capacity to calculate the total response processing capacity of the target physical path; Set the maximum number of incomplete requests currently allowed for the target physical path based on the total response processing capacity; The system counts the number of incomplete requests that have been sent to the target physical path but have not yet received a response. When the number of incomplete requests is less than the maximum number of incomplete requests, the current request can be sent through the request initiating hardware.
7. The method according to any one of claims 1-6, characterized in that, The request initiating hardware is a peripheral interface module, including a high-speed peripheral component interconnect module; correspondingly, the method is executed by the request injection control hardware independently configured in the peripheral interface module.
8. A dynamic congestion factor update device for multiple physical paths, characterized in that, A request initiating hardware configured in a system-on-a-chip, the system-on-a-chip including the request initiating hardware, at least one level of request transmission module and request response module, the device comprising: The allocation window module is used to independently allocate multiple statistical time windows for each physical path; where the physical path is the path that the request takes from being sent to the request response module via the request transmission module to being returned to the request initiating hardware via the request transmission module. The delay timing module is used to start timing the round-trip delay from the sending of the request to the return of the response whenever the request initiating hardware sends the first request within any statistical time window on any physical path. The single delay module is used to obtain the actual single delay value within a set time window based on the round-trip delay timing results and the set physical path. The delay averaging module is used to obtain the average delay of each physical path based on the set number of single actual delay values calculated consecutively for each physical path. The factor update module is used to update the current dynamic congestion factor of the matching physical path based on the calculation result obtained by dividing the average delay by the physical delay value of the matching physical path.
9. A request initiating hardware, characterized in that, It includes request injection control hardware for performing the dynamic congestion factor update method for multiple physical paths as described in any one of claims 1-7.
10. A system-on-a-chip, characterized in that, It includes the request initiation hardware as described in claim 9, at least one request transmission module, and request response module.
Citation Information
Patent Citations
Precise quantification method of network on chip limit flow coefficient
CN106789704A
Congestion control method and device, equipment, storage medium and program product
CN121441842A