Fault detection method and device in network-on-chip, equipment and storage medium

By generating detection data packets and configuring counter status in an on-chip network, dynamically evaluating fault types, the problem of high fault detection error rate in the prior art is solved, precise distinction between transient and permanent faults is achieved, and resource utilization and communication efficiency are optimized.

CN120547041APending Publication Date: 2025-08-26YUANQIXIN (SHANDONG) SEMICONDUCTOR TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510702295.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-28
Publication Date
2025-08-26

AI Technical Summary

Technical Problem

The existing fault detection schemes of on-chip networks lack the ability to accurately distinguish fault types, resulting in a high misjudgment rate, transient faults are misjudged as permanent faults, resulting in waste of resources, and repeated transmission of corrupt data during permanent faults can lead to deadlocks or communication congestion.

Method used

By generating detection data packets, dynamically evaluate error events based on counter status and retransmission processing, distinguishing transient faults and permanent faults, using feature verification codes for multiple detections, configuring status registers and counters for routing scheduling, and optimizing resource utilization.

Benefits of technology

It significantly reduces the misjudgment rate of transient faults and permanent faults, avoids resource misalignment, reduces the situation where long transient faults are mislabeled as permanent faults, and improves the robustness and communication efficiency of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120547041A_ABST
    Figure CN120547041A_ABST
Patent Text Reader

Abstract

The invention provides a fault detection method and device in a network-on-chip, equipment and a storage medium, and the method comprises the steps: carrying out the retransmission processing based on an error event signal if the error event signal is received, and carrying out the fault detection based on the error event signal and a retransmission processing result. Updating the state of the counter corresponding to the error event signal; if the state of the counter reaches a fault question condition, generating a detection data packet, and detecting an error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; if the detection result shows that the error event passes the detection, determining that the target fault type of the error event is a transient fault; and if the detection result shows that the error event does not pass the detection, determining that the target fault type of the error event is a permanent fault. Through the technical scheme provided by the invention, a dynamic evaluation system based on a counter and a permanent fault questioning mechanism is realized, and the misjudgment rate of transient faults and permanent faults can be remarkably reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network-on-chip technology, and in particular to a fault detection method, apparatus, device and storage medium in a network-on-chip. Background Art

[0002] With the widespread adoption of Network-on-Chip (NoC) systems in multi-core systems, fault detection and recovery in communication links and routers have become critical issues affecting system reliability. Existing fault detection solutions lack the ability to accurately distinguish fault types. On the one hand, they may misidentify transient faults (such as data errors caused by transient electromagnetic interference) as permanent faults, resulting in long-term isolation of links or routers and wasted hardware resources. On the other hand, when faced with permanent faults (such as physical cable breaks), repeated transmission of corrupted data can cause deadlock or communication congestion. As a result, existing fault detection solutions have a high misjudgment rate. Summary of the Invention

[0003] The present invention provides a fault detection method, apparatus, device and storage medium in an on-chip network, which are used to solve the defects in the prior art and reduce the misjudgment rate of fault detection.

[0004] The present invention provides a fault detection method in a network on chip, comprising: If an error event signal is received, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; If the state of the counter reaches a fault questioning condition, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; If the detection result indicates that the error event passes the detection, determining that the target fault type of the error event is a transient fault; If the detection result indicates that the error event fails the detection, it is determined that the target fault type of the error event is a permanent fault.

[0005] According to a fault detection method in a network on chip provided by the present invention, generating a detection data packet, and detecting an error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result, includes: generating a characteristic check code, and generating the detection data packet based on the characteristic check code; Based on the detection data packet, the error event is detected multiple times to obtain the detection result corresponding to each detection; If the number of the test results indicating that the verification has passed reaches a threshold number, it is determined that the error event has passed the detection; If the number of the test results indicating that the verification has passed does not reach the number threshold, it is determined that the error event has failed the detection.

[0006] According to a fault detection method in a network on chip provided by the present invention, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing, includes: Based on the error event signal, decrementing a counter corresponding to the error event signal; If the state of the counter does not reach the fault questioning condition, generating a retransmission request signal based on the error event signal; Stop the current route allocation and control the upstream node corresponding to the error event to cache the data to be retransmitted; performing retransmission processing on the data to be retransmitted based on the retransmission request signal; If no retransmission response signal is received within the first time threshold, decrementing the counter corresponding to the error event signal; If the retransmission response signal is received within the first time threshold, a counter corresponding to the error event signal is reset.

[0007] According to a fault detection method in a network on chip provided by the present invention, if an error event signal is received, before retransmission processing is performed based on the error event signal, the method further includes: If it is detected in the data transmission link that N consecutive data slices fail to pass the check, the error event is obtained, and the target error type of the error event is determined to be the first error type for the link; wherein N is a natural number greater than or equal to 2; If it is detected at the output port of the switch that the data slice fails verification, the error event is obtained, and a target error type of the error event is determined to be a second error type for routing; Event information of the error event is recorded, and the error event signal is generated based on the event information and the target error type.

[0008] According to a method for fault detection in a network on chip provided by the present invention, the method further includes: A corresponding status register is configured for the input and output port paths of a switch in an on-chip network; wherein the status register includes a non-fault table, a transient fault table, and a permanent fault table, wherein the non-fault table is used to store first information of a non-fault routing path, the transient fault table is used to store second information of a routing path with a transient fault, and the permanent fault table is used to store third information of a routing path with a permanent fault.

[0009] According to a method for fault detection in a network on chip provided by the present invention, the method further includes: Routing scheduling is performed based on the routing paths in the non-fault table, the transient fault table, and the permanent fault table.

[0010] According to a fault detection method in a network on chip provided by the present invention, if an error event signal is received, before retransmission processing is performed based on the error event signal, the method further includes: A corresponding counter is configured for each communication link and input and output port path of the switch in the on-chip network.

[0011] The present invention also provides a fault detection device in a network on chip, comprising: a retransmission processing module configured to, upon receiving an error event signal, perform retransmission processing based on the error event signal, and update a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; a detection module configured to generate a detection data packet if the state of the counter reaches a fault questioning condition, and detect the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; a first determining module configured to determine that a target fault type of the error event is a transient fault if the detection result indicates that the error event passes detection; The second determining module is configured to determine that a target fault type of the error event is a permanent fault if the detection result indicates that the error event fails the detection.

[0012] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the fault detection method in the on-chip network as described above is implemented.

[0013] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements any of the above-described methods for detecting faults in a network on a chip.

[0014] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements any of the above-mentioned methods for detecting faults in a network on chip.

[0015] The fault detection method, apparatus, device, and storage medium for a network-on-chip (NOC) provided by the present invention, upon receiving an error event signal, attempts to resolve the error event through retransmission. Simultaneously, a counter updates its own status using the error event signal and the retransmission results. When the status reaches a fault query condition, a detection data packet is generated. The error event is detected based on the detection data packet, and the fault type is distinguished based on the detection results. The technical solution provided by the present invention implements a dynamic evaluation system based on a counter and a permanent fault query mechanism, significantly reducing the misjudgment rate for transient and permanent faults and avoiding resource misisolation caused by transient interference. The permanent fault query mechanism, on the other hand, significantly reduces the incidence of long transient faults being mistakenly labeled as permanent faults by rechecking the detection data packet. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] In order to more clearly illustrate the technical solutions in the present invention or the prior art, a brief introduction is given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0017] Figure 1 It is a flow chart of the fault detection method in the on-chip network provided by the present invention.

[0018] Figure 2 It is a schematic diagram of routing scheduling in the embodiment provided by the present invention.

[0019] Figure 3 It is a structural diagram of the fault detection device in the on-chip network provided by the present invention.

[0020] Figure 4 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0021] To make the objectives, technical solutions, and advantages of the present invention more clear, the technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only some of the embodiments of the present invention, not all of them. 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.

[0022] Figure 1FIG. 1 is a flow chart showing a method for fault detection in a network on chip according to an exemplary embodiment. Figure 1 As shown, in an exemplary embodiment, the fault detection method in a network on chip includes steps 110 to 140, which are described in detail as follows.

[0023] Step 110: If an error event signal is received, retransmission processing is performed based on the error event signal, and a status of a counter corresponding to the error event signal is updated based on the error event signal and a result of the retransmission processing.

[0024] In an embodiment of the present invention, the data transmission process is monitored in real time. When a link error or routing error is detected, an error event signal is generated, and retransmission processing is performed based on the error event signal. It is expected that the error will be resolved through retransmission. At the same time, based on the error event signal and the result of the retransmission processing, the status of the counter corresponding to the error event signal is updated.

[0025] Step 120 : If the state of the counter reaches a fault questioning condition, a detection data packet is generated, and the error event corresponding to the error event signal is detected based on the detection data packet to obtain a corresponding detection result.

[0026] In an embodiment of the present invention, whether a fault questioning condition is met is determined by the state of a counter. For example, when the counter is a decrementing counter, as error events continue to occur and retransmissions fail multiple times, the value of the counter gradually decreases. It is detected whether the value of the counter is 0. If normal transmission is still not restored when it is 0, it is determined that the fault questioning condition is met.

[0027] When the status of the counter reaches the fault query condition, a detection packet is generated to further detect the target fault type of the error event. Step 130 : If the detection result indicates that the error event passes the detection, determine that the target fault type of the error event is a transient fault.

[0028] In the embodiment of the present invention, if the detection result indicates that the error event passes the detection, that is, the error event is resolved through retransmission, the target fault type of the error event is determined to be a transient fault.

[0029] Step 140 : If the detection result indicates that the error event fails the detection, determine that the target fault type of the error event is a permanent fault.

[0030] In the embodiment of the present invention, if the detection result indicates that the error event fails the detection, that is, the error event is still not resolved through retransmission, the target fault type of the error event is determined to be a permanent fault.

[0031] In an embodiment of the present invention, upon receiving an error event signal, a retransmission process is performed in an attempt to resolve the error event. Simultaneously, a counter updates its own state using the error event signal and the retransmission result. When the state reaches a fault query condition, a detection data packet is generated, and the error event is detected based on the detection data packet. The fault type is then distinguished based on the detection result. The technical solution provided by the present invention implements a dynamic evaluation system based on a counter and a permanent fault query mechanism, significantly reducing the misjudgment rate for transient and permanent faults and avoiding incorrect resource isolation caused by transient interference. The permanent fault query mechanism, through rechecking the detection data packet, significantly reduces the number of cases where long transient faults are mistakenly marked as permanent faults.

[0032] In an exemplary embodiment of the present invention, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result includes: generating a characteristic check code, and generating the detection data packet based on the characteristic check code; Based on the detection data packet, the error event is detected multiple times to obtain the detection result corresponding to each detection; If the number of the test results indicating that the verification has passed reaches a threshold number, it is determined that the error event has passed the detection; If the number of the test results indicating that the verification has passed does not reach the number threshold, it is determined that the error event has failed the detection.

[0033] In an embodiment of the present invention, an error event has a corresponding output side and input side. For example, for a link-level error event, its corresponding output side and input side may be a switch respectively; for a routing-level error event, its corresponding output side and input side may be the input port and output port corresponding to the switch respectively.

[0034] Generate a feature check code, and generate a detection data packet based on the feature check code. The detection data packet is sent continuously multiple times through the output side corresponding to the error event, with an interval of 100ns each time, to verify its communication reliability and obtain the corresponding detection result. If the number of detection results returning correct verification results reaches the number threshold, it is determined to be a false marking, the error event is marked as a transient fault, a fault relief signal is generated, and the routing table is updated; if the number of detection results returning correct verification results reaches the number threshold, the error event is marked as a permanent fault.

[0035] In an embodiment of the present invention, the data to be retransmitted includes at least one data slice. The bytes of all data slices in the data to be retransmitted are accumulated, and the remainder or phase result of the accumulation result is taken to obtain a signature check code. A cyclic redundancy check code or hash value may also be generated based on the data to be retransmitted, and the generated cyclic redundancy check code or hash value may be used as the signature check code.

[0036] In an exemplary embodiment of the present invention, a permanent fault candidate table may be provided to store the interconnect ID, target error type, and first marking timestamp of each event marked as an error, as well as the history of the corresponding counter and the detection cycle status (not started / in progress / released). When an error event signal is detected, the corresponding error event is added to the permanent fault candidate table, and a query cycle (e.g., 10 ms) is set. At each query cycle, error events that have been in the permanent fault candidate table for more than a preset time (e.g., 5 ms) are detected.

[0037] In an exemplary embodiment of the present invention, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing, includes: Based on the error event signal, decrementing a counter corresponding to the error event signal; If the state of the counter does not reach the fault questioning condition, generating a retransmission request signal based on the error event signal; Stop the current route allocation, and control the upstream node corresponding to the error event to cache the data to be retransmitted; and retransmit the data to be retransmitted based on the retransmission request signal; If no retransmission response signal is received within the first time threshold, decrementing the counter corresponding to the error event signal; If the retransmission response signal is received within the first time threshold, a counter corresponding to the error event signal is reset.

[0038] In an embodiment of the present invention, upon receiving an error event signal, the counter value corresponding to the error event signal is decremented (i.e., the counter value is reduced by 1), a retransmission request signal is generated, the current route allocation is suspended, and the upstream node corresponding to the error event is instructed to cache the data to be retransmitted. A retransmission timer is simultaneously started, with a first time threshold set. If the time recorded by the retransmission timer exceeds the first time threshold and no retransmission response signal (i.e., handshake feedback TRANSMIT_OK signal) is received, the retransmission is determined to have failed, triggering a corresponding counter to be decremented. If the time recorded by the retransmission timer does not exceed the first time threshold and a retransmission response signal is received, the counter is reset to the initial value, and a transient fault clear signal is generated. The error event is eliminated based on the transient fault clear signal. If the counter value decreases to 0 and no retransmission is successful, a permanent fault pre-marking signal is generated, pre-marking the error event as a permanent fault.

[0039] In another embodiment of the present invention, the counter can be incremented based on the error event signal and the result of the retransmission processing, that is, the value of the counter is increased by 1. When the value of the counter increases to the number threshold, a permanent fault pre-marking signal is generated to pre-mark the error event as a permanent fault.

[0040] In an exemplary embodiment of the present invention, if an error event signal is received, before performing retransmission processing based on the error event signal, the method further includes: If it is detected in the data transmission link that N consecutive data slices fail to pass the check, the error event is obtained, and the target error type of the error event is determined to be the first error type for the link; wherein N is a natural number greater than or equal to 2; If it is detected at the output port of the switch that the data slice fails verification, the error event is obtained, and a target error type of the error event is determined to be a second error type for routing; Event information of the error event is recorded, and the error event signal is generated based on the event information and the target error type.

[0041] In an embodiment of the present invention, a parity check mechanism is used to monitor the data transmission process in real time. Specifically, a data packet to be transmitted is fragmented to obtain multiple data slices. The payload of each data slice in the data transmission process is checked byte by byte through a two-dimensional parity check combined with vertical and horizontal parity checks, which can detect single-bit and partial double-bit errors. In a communication link, if N consecutive data slices trigger a check error during link transmission, it is determined to be a link-level error event, and the target error type of the error event is determined to be the first error type for the link. When the data slice is transmitted, it is forwarded through a switch, which has multiple input and output port paths. Before the data slice is input into the switch, the data slice is checked by a parity check mechanism. At the same time, when the switch outputs the data slice, the data slice is checked by a parity check mechanism. If the results of the two checks are inconsistent, it is determined that the check of the data slice has failed and it is determined to be a route-level error event. The target error type of the error event is determined to be the second error type for the route, and the input port is located by the source port label in the packet header.

[0042] Record the event information of the error event, such as input port, output port, source address, destination address, etc., and then generate a 16-bit error event signal containing the target error type and event information to trigger the response of the subsequent process.

[0043] In an exemplary embodiment of the present invention, the fault detection method in a network on chip further includes: A corresponding status register is configured for the input and output port paths of a switch in an on-chip network; wherein the status register includes a non-fault table, a transient fault table, and a permanent fault table, wherein the non-fault table is used to store first information of a non-fault routing path, the transient fault table is used to store second information of a routing path with a transient fault, and the permanent fault table is used to store third information of a routing path with a permanent fault.

[0044] In this embodiment of the present invention, each switch's 12 input and output port paths are configured with an 8-bit status register corresponding to each of the switch's 12 input and output port paths. This register stores three fault states and additional information. The three fault states include no fault (FAULT_FREE), transient fault (TRANSMIT_FAULT), and permanent fault (PERM_FAULT). Additional information includes event information, the timestamp of the most recent error, and the current value of a counter. When an error event is detected, the source port identifier (e.g., a 4-bit code) carried in the packet header is combined with the output port error location information (e.g., a byte offset) to identify the input and output port pair corresponding to the error event and update the corresponding status register.

[0045] The status register maintains a hierarchical routing table structure consisting of a no-fault table, a transient fault table, and a permanent fault table. When transmitting data packets, they will be transmitted preferentially through the routing path in the no-fault table to ensure efficient and stable communication.

[0046] In an example tree embodiment of the present invention, the fault detection method in the network on chip further includes: Routing scheduling is performed based on the routing paths in the non-fault table, the transient fault table, and the permanent fault table.

[0047] In an embodiment of the present invention, when transmitting a data packet to be transmitted, if there is no suitable routing path to be selected in the fault-free table, a routing path is selected from the transient fault table, and a retransmission mechanism is triggered to provide an opportunity for the transient fault to return to normal; the routing paths of permanent faults stored in the permanent fault table will be permanently excluded from the routing selection range, thereby avoiding the data packet to be transmitted from attempting to be transmitted through these routing paths, reducing the risk of invalid retransmission and deadlock.

[0048] like Figure 2 As shown, the data packet to be transmitted is transmitted from core (0,0) to core (2,2). Figure 2 The dotted line in is the original routing path. When a permanent link failure occurs somewhere in the routing path, that is, Figure 2 The cross in the will bypass the faulty link and switch to a different direction for data transmission, such as Figure 2 Change the vertical direction in to the horizontal direction.

[0049] In the embodiment of the present invention, when selecting a routing path from the transient fault table, based on the number of times each routing path is marked as a transient fault, a routing path with a smaller number of times is preferentially selected.

[0050] In this embodiment of the present invention, when multiple faulty paths exist within a switch, available path resources are dynamically allocated through a priority queue. For real-time services, such as cache coherence messages, low-latency paths are prioritized. For non-real-time services, round-robin scheduling is used to balance the load and avoid overloading a single path, ensuring that the entire network system can continue to operate as stably as possible even in the event of a permanent fault.

[0051] In an exemplary embodiment of the present invention, if an error event signal is received, before performing retransmission processing based on the error event signal, the method further includes: A corresponding counter is configured for each communication link and input and output port path of the switch in the on-chip network.

[0052] In this embodiment of the present invention, an independent 16-bit counter is assigned to each link or input / output port path of a switch. The counter can be a decrement counter or an increment counter. The counter's count threshold can be dynamically set based on the failure rate of each link or input / output port path.

[0053] In the embodiment of the present invention, the fault location granularity is reduced from the entire switch level to the port path level through the refined path marking of the counter, which can retain most normal communication paths, greatly improve the utilization of hardware resources, and control the fault processing delay at a low level, thereby ensuring the continuity of high-real-time services. On the other hand, the adaptive routing and multi-path collaborative scheduling mechanism significantly enhances the robustness of the system. The hierarchical routing table structure combined with routing rules can realize dynamic detour of routing paths in permanent fault scenarios, almost avoiding deadlock problems; the priority queue and load balancing algorithm optimize resource allocation in fault scenarios, effectively control the end-to-end delay fluctuations of real-time services, and significantly reduce the throughput loss of non-real-time services.

[0054] The following describes the fault detection device for a network-on-chip (NOC) provided by the present invention. The NOC fault detection device described below and the NOC fault detection method described above can be used in conjunction with each other. It should be noted that the device provided in the following embodiments and the method provided in the above embodiments share the same concept. The specific manner in which each module and unit performs operations has been described in detail in the method embodiments and will not be repeated here.

[0055] In an exemplary embodiment of the present invention, see Figure 3 , Figure 3 A fault detection device in a network on chip is shown according to an exemplary embodiment, and includes the following modules.

[0056] The retransmission processing module 310 is configured to, upon receiving an error event signal, perform retransmission processing based on the error event signal, and update a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; a detection module 320 configured to generate a detection data packet if the state of the counter reaches a fault questioning condition, and detect the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; A first determining module 330 is configured to determine that a target fault type of the error event is a transient fault if the detection result indicates that the error event passes the detection; The second determining module 340 is configured to determine that the target fault type of the error event is a permanent fault if the detection result indicates that the error event fails the detection.

[0057] In an exemplary embodiment of the present invention, the detection module 320 includes: a first generating submodule, configured to generate a feature check code, and generate the detection data packet based on the feature check code; a detection submodule, configured to perform multiple detections on the error event based on the detection data packet, and obtain the detection result corresponding to each detection; A first determination submodule is configured to determine that the error event has passed the detection if the number of the detection results indicating that the verification has passed reaches a number threshold; The second determining submodule is configured to determine that the error event has failed the detection if the number of the detection results indicating that the verification has passed does not reach the number threshold.

[0058] In an exemplary embodiment of the present invention, the retransmission processing module 310 includes: A first decrement processing submodule is configured to decrement a counter corresponding to the error event signal based on the error event signal; a second generating submodule, configured to generate a retransmission request signal based on the error event signal if the state of the counter does not reach a fault questioning condition; a cache submodule configured to stop current route allocation and control the upstream node corresponding to the error event to cache data to be retransmitted; a retransmission processing submodule, configured to perform retransmission processing on the data to be retransmitted based on the retransmission request signal; A second decrement processing submodule is configured to decrement a counter corresponding to the error event signal if no retransmission response signal is received within a first time threshold; The reset processing submodule is configured to reset the counter corresponding to the error event signal if the retransmission response signal is received within the first time threshold.

[0059] In an exemplary embodiment of the present invention, the fault detection device in the network on chip further includes: A third determining module is configured to obtain the error event if N consecutive data slices fail to pass the check in the data transmission link, and determine that the target error type of the error event is a first error type for the link; wherein N is a natural number greater than or equal to 2; a fourth determining module configured to obtain the error event if it is detected at the output port of the switch that the data slice fails verification, and determine that the target error type of the error event is the second error type for routing; The recording module is configured to record event information of the error event and generate the error event signal based on the event information and the target error type.

[0060] In an exemplary embodiment of the present invention, the fault detection device in the network on chip further includes: A first configuration module is configured to configure corresponding status registers for input and output port paths of a switch in an on-chip network; wherein the status registers include a non-fault table, a transient fault table, and a permanent fault table, the non-fault table being used to store first information of fault-free routing paths, the transient fault table being used to store second information of routing paths with transient faults, and the permanent fault table being used to store third information of routing paths with permanent faults.

[0061] In an exemplary embodiment of the present invention, the fault detection device in the network on chip further includes: The routing scheduling module is configured to perform routing scheduling based on the routing paths in the non-fault table, the transient fault table, and the permanent fault table.

[0062] In an exemplary embodiment of the present invention, the fault detection device in the network on chip further includes: The second configuration module is configured to configure a corresponding counter for each communication link and input and output port path of the switch in the on-chip network.

[0063] Figure 4 An example of a physical structure diagram of an electronic device is shown below. Figure 4As shown, the electronic device may include: a processor 410, a communication interface 420, a memory 430, and a communication bus 440, wherein the processor 410, the communication interface 420, and the memory 430 communicate with each other via the communication bus 440. The processor 410 may call logic instructions in the memory 430 to execute a fault detection method in an on-chip network, the method comprising: if an error event signal is received, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; If the state of the counter reaches a fault questioning condition, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; If the detection result indicates that the error event passes the detection, determining that the target fault type of the error event is a transient fault; If the detection result indicates that the error event fails the detection, it is determined that the target fault type of the error event is a permanent fault.

[0064] Furthermore, the logic instructions in the aforementioned memory 430 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product, stored in a storage medium, includes instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0065] On the other hand, the present invention further provides a computer program product, the computer program product including a computer program, the computer program being storable on a non-transitory computer-readable storage medium, and when the computer program is executed by a processor, the computer is capable of executing the fault detection method in a network on chip provided by each of the above methods, the method including: if an error event signal is received, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; If the state of the counter reaches a fault questioning condition, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; If the detection result indicates that the error event passes the detection, determining that the target fault type of the error event is a transient fault; If the detection result indicates that the error event fails the detection, it is determined that the target fault type of the error event is a permanent fault.

[0066] In another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the method for detecting a fault in a network on a chip provided by the above methods is implemented, the method comprising: if an error event signal is received, performing a retransmission process based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission process; If the state of the counter reaches a fault questioning condition, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; If the detection result indicates that the error event passes the detection, determining that the target fault type of the error event is a transient fault; If the detection result indicates that the error event fails the detection, it is determined that the target fault type of the error event is a permanent fault.

[0067] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.

[0068] Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented using software plus a necessary general-purpose hardware platform, or of course, hardware. Based on this understanding, the essence of the above technical solution, or the portion that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, or an optical disk, and includes a number of instructions for causing a computer device (such as a personal computer, server, or network device) to execute the methods described in each embodiment or certain portions of the embodiments.

[0069] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. 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 fault detection method in a network on chip, characterized in that: include: If an error event signal is received, performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; If the state of the counter reaches a fault questioning condition, generating a detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; If the detection result indicates that the error event passes the detection, determining that the target fault type of the error event is a transient fault; If the detection result indicates that the error event fails the detection, it is determined that the target fault type of the error event is a permanent fault.

2. The fault detection method in a network on chip according to claim 1, characterized in that: The generating of the detection data packet, and detecting the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result, includes: generating a characteristic check code, and generating the detection data packet based on the characteristic check code; Based on the detection data packet, the error event is detected multiple times to obtain the detection result corresponding to each detection; If the number of the test results indicating that the verification has passed reaches a threshold number, it is determined that the error event has passed the detection; If the number of the test results indicating that the verification has passed does not reach the number threshold, it is determined that the error event has failed the detection.

3. The fault detection method in a network on chip according to claim 1, characterized in that: The performing retransmission processing based on the error event signal, and updating a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing, includes: Based on the error event signal, decrementing a counter corresponding to the error event signal; If the state of the counter does not reach the fault questioning condition, generating a retransmission request signal based on the error event signal; Stop the current route allocation and control the upstream node corresponding to the error event to cache the data to be retransmitted; performing retransmission processing on the data to be retransmitted based on the retransmission request signal; If no retransmission response signal is received within the first time threshold, decrementing the counter corresponding to the error event signal; If the retransmission response signal is received within the first time threshold, a counter corresponding to the error event signal is reset.

4. The fault detection method in a network on chip according to claim 1, characterized in that: If an error event signal is received, before performing retransmission processing based on the error event signal, the method further includes: If it is detected in the data transmission link that N consecutive data slices fail to pass the check, the error event is obtained, and the target error type of the error event is determined to be the first error type for the link; wherein N is a natural number greater than or equal to 2; If it is detected at the output port of the switch that the data slice fails verification, the error event is obtained, and a target error type of the error event is determined to be a second error type for routing; Event information of the error event is recorded, and the error event signal is generated based on the event information and the target error type.

5. The fault detection method in a network on chip according to claim 1, characterized in that: The method further comprises: A corresponding status register is configured for the input and output port paths of a switch in an on-chip network; wherein the status register includes a non-fault table, a transient fault table, and a permanent fault table, wherein the non-fault table is used to store first information of a non-fault routing path, the transient fault table is used to store second information of a routing path with a transient fault, and the permanent fault table is used to store third information of a routing path with a permanent fault.

6. The fault detection method in a network on chip according to claim 5, characterized in that: The method further comprises: Routing scheduling is performed based on the routing paths in the non-fault table, the transient fault table, and the permanent fault table.

7. The fault detection method in a network on chip according to any one of claims 1 to 6, characterized in that: If an error event signal is received, before performing retransmission processing based on the error event signal, the method further includes: A corresponding counter is configured for each communication link and input and output port path of the switch in the on-chip network.

8. A fault detection device in a network on chip, characterized in that: include: a retransmission processing module configured to, upon receiving an error event signal, perform retransmission processing based on the error event signal, and update a state of a counter corresponding to the error event signal based on the error event signal and a result of the retransmission processing; a detection module configured to generate a detection data packet if the state of the counter reaches a fault questioning condition, and detect the error event corresponding to the error event signal based on the detection data packet to obtain a corresponding detection result; a first determining module configured to determine that a target fault type of the error event is a transient fault if the detection result indicates that the error event passes detection; The second determining module is configured to determine that a target fault type of the error event is a permanent fault if the detection result indicates that the error event fails the detection.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the fault detection method in the network on chip according to any one of claims 1 to 7 is implemented.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the fault detection method in a network on chip according to any one of claims 1 to 7 is implemented.