Robustness verification method and related equipment based on dynamic node tracking

By injecting interruption events into nodes where the state information of key elements changes, the problems of low verification efficiency and insufficient coverage in existing technologies are solved, and efficient and accurate verification of emergency interruption recovery is achieved.

CN122132299APending Publication Date: 2026-06-02BEIJING CEC HUADA ELECTRONIC DESIGN CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
BEIJING CEC HUADA ELECTRONIC DESIGN CO LTD
Filing Date
2026-01-23
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

In existing technologies, reliability verification methods based on fault injection cannot effectively cover critical state transition nodes in dynamic operation, resulting in low verification efficiency and insufficient coverage.

Method used

By establishing a list of key elements, obtaining the nodes where their status information changes, and determining the timing of injecting interruption events at these nodes, including at least one timing before, during, and after the change node, interruption events are injected to simulate sudden events and verify that the system recovers to the expected goal.

Benefits of technology

It significantly improves the coverage, accuracy, and efficiency of emergency interruption recovery verification, can fully cover dynamic state changes, and is highly adaptable and widely applicable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122132299A_ABST
    Figure CN122132299A_ABST
Patent Text Reader

Abstract

This invention discloses a robustness verification method and related equipment based on dynamic node tracking. The robustness verification method based on dynamic node tracking according to an embodiment of the invention includes establishing a list of key elements of the object to be verified, the list including state information of at least one key element; acquiring the nodes where the state information of the key elements changes when the object to be verified is executed without interruption; determining the injection timing based on the nodes where the state information of the key elements changes, and injecting an interruption event at the injection timing; verifying whether the object to be verified recovers to the expected target after the interruption event injection. The robustness verification method and related equipment based on dynamic node tracking according to an embodiment of the invention balance coverage, accuracy, and verification efficiency in the verification of recovery from sudden event interruptions.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of reliability verification, in particular to a robustness verification method based on dynamic node tracking and related equipment. BACKGROUND

[0002] In the field of modern electronic devices, computer systems, chips and complex engineering product development, reliability verification, as a key link of product quality guarantee, undertakes the important mission of ensuring that the system can still run stably under various abnormalities and extreme conditions.

[0003] In the prior art, the reliability evaluation method based on fault injection is widely used, which simulates various abnormalities that may be encountered in actual operation by injecting faults into the system, and then observes the response behavior and recovery ability. The existing fault injection method mainly has the following defects in the verification of state recovery after continuous events are interrupted by sudden events:

[0004] 1. Static verification limitation: by predefining the sudden event node, the key state transition node in dynamic operation cannot be covered;

[0005] 2. Random injection inefficiency: random injection of sudden events cannot cover the state transition node, and a high time cost is required to improve the coverage rate;

[0006] 3. Low efficiency of traversal by time: the traversal coverage is performed by injecting sudden events by time, which requires a long verification time and low verification efficiency.

[0007] Therefore, it is hoped that there will be a new robustness verification method based on dynamic node tracking and related equipment, which can solve at least one of the above problems. SUMMARY

[0008] In view of the above problems, the purpose of the present application is to provide a robustness verification method based on dynamic node tracking and related equipment, in particular a method for verifying state recovery after continuous events are interrupted by sudden events, so as to balance the coverage rate, accuracy and verification efficiency in the verification of recovery after interruption by sudden events.

[0009] According to one aspect of the present application, a robustness verification method based on dynamic node tracking is provided, comprising:

[0010] establishing a key element list of a to-be-verified object, the key element list including state information of at least one key element;

[0011] obtaining a change node of the state information of the key element when the to-be-verified object is executed without interruption;

[0012] The injection timing is determined based on the change nodes of the state information of the key elements, and an interruption event is injected at the injection timing.

[0013] After the interruption event is injected, verify whether the object to be verified has recovered to the expected target.

[0014] Optionally, the key elements include at least one selected from the group of status registers, memory pointer variables, transaction flags, pipeline counters, interrupt mask registers, and analog-to-digital control signals.

[0015] Optionally, the change node includes the moment when the state information of the key element changes;

[0016] The step of determining the injection timing based on the change nodes of the state information of the key element, and injecting an interruption event at the injection timing, includes:

[0017] Inject the interrupt event before the changed node; and / or

[0018] Inject the interrupt event when the node changes; and / or

[0019] The interrupt event is injected after the changed node.

[0020] Optionally, verifying whether the object to be verified has recovered to the expected target after the interruption event injection includes:

[0021] Check whether the state recovery record flag of the object to be verified is consistent with the expectation when it is interrupted by the interruption event during the continuous execution of the event;

[0022] Verify whether the continuous execution of the event to be verified continues and is completed after the interruption event during the continuous execution of the event to be verified and the status record is processed.

[0023] Optionally, the interrupt event includes at least one selected from hardware failure, software anomaly, external interrupt, voltage glitches, clock jitter, bus access anomaly, and signal interruption.

[0024] Optionally, the key elements include elements affected when the object to be verified is interrupted during the continuous execution of the event;

[0025] The steps for obtaining the change nodes of the state information of the key elements of the object to be verified during uninterrupted execution include:

[0026] Perform uninterrupted continuous event operations on the object to be verified, and record the change nodes of the key element list throughout the entire event cycle;

[0027] The step of determining the injection timing based on the change nodes of the state information of the key element, and injecting an interruption event at the injection timing, includes:

[0028] The object to be verified repeatedly performs continuous event operations, injecting the interruption event at the injection timing, until all injection timings have been traversed.

[0029] Optionally, the recording of changes in the list of key elements throughout the event lifecycle includes:

[0030] Monitor the list of key elements and capture the status changes in the list of key elements in real time;

[0031] Record the state transition sequence;

[0032] Create a set of change points marked with timestamps.

[0033] According to another aspect of the present invention, a robustness verification system based on dynamic node tracking is provided, comprising:

[0034] A creation unit is used to create a list of key elements of an object to be verified, the list of key elements including the status information of at least one key element.

[0035] The acquisition unit is used to acquire the change nodes of the state information of the key elements of the object to be verified when it is executed without interruption;

[0036] An injection unit determines the injection timing based on the change nodes of the state information of the key element, and injects an interruption event at the injection timing.

[0037] The verification unit verifies whether the object to be verified has recovered to the expected target after the interruption event is injected.

[0038] According to another aspect of the present invention, a server is provided, comprising:

[0039] processor;

[0040] Memory, used to store one or more programs;

[0041] When the processor executes one or more programs, the processor implements the robust verification method based on dynamic node tracing as described above.

[0042] According to another aspect of the present invention, a computer-readable storage medium is provided having a computer program stored thereon, wherein the program, when executed by a processor, implements the robust verification method based on dynamic node tracing as described above.

[0043] The robustness verification method and related equipment based on dynamic node tracking provided by this invention obtains the changing nodes of the key element state information of the object to be verified when it is executed without interruption, and then determines the injection timing of the interruption event based on the changing nodes. It can efficiently, accurately and comprehensively realize the injection of sudden events, thereby significantly improving the coverage, accuracy and verification efficiency of sudden event interruption recovery verification.

[0044] Furthermore, the injection timing is at least one of the following: before, during, and after the change node, which comprehensively covers the potential impact of sudden events and ensures the coverage of the verification.

[0045] Furthermore, by monitoring the list of key elements and capturing the state changes in the list in real time, it is possible to dynamically capture changed nodes and thus dynamically determine the timing of interruption event injection. The verification coverage is high, fully covering dynamic state changes, and it is highly adaptable and has a wide range of applications.

[0046] Furthermore, based on the node sequence information, verification is performed sequentially, resulting in efficient and comprehensive verification. Attached Figure Description

[0047] The above and other objects, features and advantages of the present invention will become more apparent from the following description of embodiments of the invention with reference to the accompanying drawings, in which:

[0048] Figure 1 A flowchart of a robustness verification method based on dynamic node tracking according to Embodiment 1 of the present invention is shown;

[0049] Figures 2a to 2b A flowchart of a robustness verification method based on dynamic node tracking according to Embodiment 2 of the present invention is shown.

[0050] Figure 3 A schematic diagram of the structure of a robustness verification system based on dynamic node tracking according to an embodiment of the present invention is shown;

[0051] Figure 4 A schematic diagram of the server structure according to an embodiment of the present invention is shown. Detailed Implementation

[0052] Various embodiments of the invention will now be described in more detail with reference to the accompanying drawings. In the various drawings, the same elements are indicated by the same or similar reference numerals. For clarity, the various parts in the drawings are not drawn to scale. Furthermore, certain well-known parts may not be shown in the drawings.

[0053] The specific embodiments of the present invention will be described in further detail below with reference to the accompanying drawings and examples. Many specific details of the invention, such as the structure, materials, dimensions, processing techniques, and methods of the components, are described below to provide a clearer understanding of the invention. However, as those skilled in the art will understand, the invention may be implemented without following these specific details.

[0054] Figure 1 A flowchart illustrating a robustness verification method based on dynamic node tracking according to Embodiment 1 of the present invention is shown. Figure 1 As shown, the robustness verification method based on dynamic node tracking according to Embodiment 1 of the present invention includes:

[0055] In step S101, a list of key elements of the object to be verified is established, the list of key elements including the status information of at least one key element;

[0056] A list of key elements for the object to be verified is established, including the status information of at least one key element. The object to be verified is, for example, a continuous event in the verification of a computer system or chip. This continuous event can be a data processing pipeline, a transaction processing sequence, etc. The list of key elements records at least one key element. A key element is a core component or event node that affects the stability and functional integrity of the system, and its status information covers normal operation, abnormal response, and recovery behavior. Key elements include at least one selected from status register groups, memory pointer variables, transaction processing flags, pipeline counters, interrupt mask registers, and analog-to-digital control signals.

[0057] In step S102, the change nodes of the state information of the key elements of the object to be verified are obtained when the object is executed without interruption;

[0058] Obtain the change points of the state information of key elements of the object to be verified during uninterrupted execution. For example, execute the object to be verified under conditions of no faults (no sudden events) and obtain the change points of the state information of key elements under uninterrupted execution. Change points include, for example, the time points when the state information of the key elements changes. Taking the key elements including analog-digital control signals as an example, obtain the time points when the analog-digital control signals change during uninterrupted execution of the object to be verified.

[0059] Optionally, the key elements include elements affected when the object to be verified is interrupted during continuous execution of the event. Obtaining the change nodes of the state information of the key elements when the object to be verified is executed without interruption includes: performing continuous event operations on the object to be verified without interruption, and recording the change nodes of the key element list throughout the entire event cycle; determining the injection timing based on the change nodes of the state information of the key elements, and injecting the interruption event at the injection timing includes: repeatedly performing continuous event operations on the object to be verified, injecting the interruption event at the injection timing, until all injection timings have been traversed. Optionally, recording the change nodes of the key element list throughout the entire event cycle includes: monitoring the key element list, capturing the state changes in the key element list in real time; recording the state transition sequence; and forming a set of change points with timestamps.

[0060] In step S103, the injection timing is determined based on the change nodes of the state information of the key element, and an interruption event is injected at the injection timing;

[0061] The timing of injecting interrupt events is determined based on the change nodes of the state information of key elements. The determined injection timing can be before, during, or after the change node, i.e., injecting interrupt events before and / or during and / or after the change node. The injected interrupt events (fault injections) include at least one selected from hardware faults, software anomalies, external interrupts, voltage glitches, clock jitter, bus access anomalies, signal interruptions, etc.

[0062] In step S104, it is verified whether the object to be verified has recovered to the expected target after the interruption event injection.

[0063] After the interruption event is injected, it is verified whether the object to be verified recovers to the expected goal, thereby determining the robustness of the object to be verified in the face of abnormal disturbances. Optionally, verifying whether the object to be verified recovers to the expected goal includes checking whether the state recovery record flag of the object to be verified is consistent with the expectation when it is interrupted by the interruption event during the continuous execution of the event; and verifying whether the object to be verified continues and completes the continuous execution of the event after being interrupted by the interruption event and processed by the state record.

[0064] In one specific embodiment of this application, the key element list configuration automatically records the key element change nodes of a continuous event. By injecting sudden events at different times before, during, and after the node change, the state after the continuous event is interrupted is verified.

[0065] When implementing a robustness verification method based on dynamic node tracking, the impact of sudden events on continuous events is first analyzed, and a list of key elements of the affected objects is set after the continuous events are interrupted by sudden events.

[0066] Subsequently, continuous event operations without sudden events are initiated. The key element list is monitored in real time through the monitoring component. When a change occurs, the relative time node between the change and the start time of the continuous event is automatically recorded, and the change nodes of the key element list are recorded and maintained throughout the entire event cycle.

[0067] The continuous event operation is repeatedly executed. During the continuous event execution, sudden events are injected before, after, and at the moment of occurrence of key element changes, traversing all recorded nodes. In particular, the injection of sudden events before and after nodes can be finely controlled by adding 1-N minimum time units for system-collected sudden events, depending on actual needs.

[0068] Each time a continuous event operation is interrupted by a sudden event, the system state at the time of interruption is recorded, a system recovery operation is performed, and the system state record is checked to see if it meets the design expectations. The system processing of the affected key elements and related unit components after the interruption meets the design expectations, and the system state after the recovery operation meets the design expectations. The detection results are recorded.

[0069] After all nodes have been traversed, the detection results are summarized and the final verification report is output.

[0070] Figures 2a to 2b A flowchart illustrating a robustness verification method based on dynamic node tracking according to Embodiment 2 of the present invention is shown. Figures 2a to 2b As shown, the robustness verification method based on dynamic node tracking according to Embodiment 2 of the present invention includes the following steps:

[0071] In step S201, the list of key elements is configured;

[0072] Analyze the impact of sudden events on continuous events (objects to be verified), and set a list of key elements of the affected objects after the continuous events are interrupted by sudden events.

[0073] In step S202, an uninterrupted continuous event is initiated;

[0074] Initiate continuous event operations without any sudden events.

[0075] In step S203, a continuous event operation is performed;

[0076] Perform continuous event operations.

[0077] In step S204, key elements are monitored in real time;

[0078] The monitoring component performs real-time detection of the list of key elements configured in step S201.

[0079] In step S205, it is determined whether a change has been detected;

[0080] Determine whether a change in the state of a key element has been detected. If a change is detected (determined to be yes), proceed to step S206; if no change is detected (determined to be no), continue to step S207.

[0081] In step S206, the (changed) node is recorded;

[0082] When a change occurs, the relative time point of that change to the start time of the continuous event is automatically recorded, and the change points of the key element list are recorded throughout the entire event cycle. After step S206, step S207 is executed. Optionally, the recording of change points is achieved by monitoring the key element list, capturing state changes in real time, recording state transition sequences, and the set of change points marked with timestamps.

[0083] In step S207, continue execution;

[0084] Continue executing continuous event operations without interruption;

[0085] In step S208, it is determined whether the event has been completed;

[0086] Determine whether the continuous event operation is completed. If it is completed (yes), proceed to step S209; if it is not completed (no), return to step S203.

[0087] In step S209, a node sequence is generated;

[0088] Generate a node sequence that includes all changed nodes.

[0089] In step S210, the continuous event is restarted;

[0090] Initiate continuous event operations.

[0091] In step S211, the node sequence is loaded;

[0092] Load the node sequence generated in step S209 as a reference for subsequent interrupt injection and state recovery. Then, execute step S212.

[0093] In step S212, it is determined whether all nodes need to be traversed;

[0094] Determine whether all changed nodes in the node sequence have been traversed. If all nodes have been traversed (Yes), proceed to step S213; if not, proceed to step S215. Verification is complete in step S213. After step S213, proceed to step S214. In step S214, a verification report is generated. The verification report may include the state change sequence of each key element in continuous events, interruption response latency, recovery consistency indicators, and robustness scores, etc.

[0095] In step S215, select the current node;

[0096] Select the current node that has changed.

[0097] In step S216, the location of the emergency is determined;

[0098] Determine the location of the emergency, i.e., the location where the fault was injected.

[0099] In step S217, the injection time is determined;

[0100] Determine the injection timing (opportunity). The injection timing can be 1-N cycles in advance (step S218), synchronous triggering (step S219), or delayed by 1-N cycles (step S220). After determining the injection timing, execute step S221.

[0101] In step S221, a sudden event is constructed;

[0102] Constructing sudden events, i.e., injecting faults, simulates the abnormal state of the system at a specific time point. Optionally, the construction of sudden events includes injecting sudden events 1-N system-collected sudden event minimum time units before the change point and / or injecting sudden events when the change point occurs and / or injecting sudden events 1-N system-collected sudden event minimum time units after the change point.

[0103] In step S222, the continuous events are interrupted;

[0104] Due to the impact of the sudden event, the continuous events were interrupted, and the system entered the abnormal handling process.

[0105] In step S223, the system status is recorded;

[0106] Record the system status after fault injection.

[0107] In step S224, the recovery mechanism is executed;

[0108] The recovery mechanism is executed to perform state rollback or repair operations on the system according to preset strategies.

[0109] In step S225, the recovery status is verified;

[0110] Verify the recovery status after fault injection.

[0111] In step S226, it is determined whether the result meets expectations;

[0112] Determine whether the restored system state meets the expected design goals. If it meets the expectations (yes), proceed to step S228; if it does not meet the expectations (no), proceed to step S227. In step S228, mark the record as correct; in step S227, mark it as incorrect. After steps S227 / S228, proceed to step S212. Optionally, determining whether it meets the expectations includes checking whether the state recovery and recording flags of the continuous event interrupted by the sudden event are consistent with the design expectations, and verifying that after the continuous event is interrupted by the sudden event and the state recording process is performed, the completion of the continuous event can continue.

[0113] According to embodiments of the present invention, a verification method for state recovery after interruption of continuous events based on dynamic node tracking by a sudden event is proposed. This method constructs a list of key elements affected by the interrupted object; executes continuous events without interruption and automatically records the changed nodes of the key elements; dynamically constructs sudden events at key locations based on the recorded nodes; and verifies the accuracy of state recovery after interruption. By dynamically capturing and precisely injecting sudden events through changed nodes, this method overcomes the technical deficiency of traditional methods that randomly inject sudden events and cannot fully cover dynamic state changes. It is also more efficient than the traditional method of injecting sudden events by traversing time-by-time, significantly improving the coverage, accuracy, and efficiency of sudden event interruption recovery verification.

[0114] According to another aspect of the present invention, a robustness verification system based on dynamic node tracking is provided. This robustness verification system based on dynamic node tracking is used to implement the robustness verification method based on dynamic node tracking as described above.

[0115] Figure 3 A schematic diagram of a robustness verification system based on dynamic node tracking according to an embodiment of the present invention is shown. Figure 3 As shown, the robustness verification system based on dynamic node tracking according to an embodiment of the present invention includes an establishment unit 10, an acquisition unit 20, an injection unit 30, and a verification unit 40.

[0116] Specifically, the establishment unit 10 is used to establish a list of key elements of the object to be verified, the list of key elements including the status information of at least one key element.

[0117] The acquisition unit 20 is used to acquire the change nodes of the state information of the key elements of the object to be verified when it is executed without interruption.

[0118] The injection unit 30 determines the injection timing based on the change nodes of the state information of the key element, and injects an interruption event at the injection timing.

[0119] Verification unit 40 verifies whether the object to be verified has recovered to the expected target after the interruption event injection.

[0120] Figure 4 A schematic diagram of the server structure according to an embodiment of the present invention is shown. It should be understood that... Figure 4 The server shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.

[0121] like Figure 4 As shown, server 200 is presented in the form of a general-purpose computing device. The components of server 200 may include, but are not limited to: one or more processors or processing units 210, memory 220, and bus 201 connecting different system components (including memory 220 and processing unit 210).

[0122] Bus 201 represents one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. For example, these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MAC) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.

[0123] Server 200 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by server 200, including volatile and non-volatile media, removable and non-removable media.

[0124] System memory 220 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 221 and / or cache memory 222. Server 200 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 223 may be used to read and write non-removable, non-volatile magnetic media (… Figure 4 Not shown; usually referred to as a "hard drive"). Although Figure 4Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk") and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 201 via one or more data media interfaces. Memory 220 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of various embodiments of this disclosure.

[0125] A program / utility 224 having a set (at least one) of program modules 2241 may be stored, for example, in memory 220. Such program modules 2241 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. Program modules 2241 typically perform the functions and / or methods described in the embodiments of this disclosure.

[0126] Furthermore, the server 200 can also be communicatively connected to the display 300 to display the results of the filtering and sorting. The display 300 may include, but is not limited to, a liquid crystal display (LCD), a light-emitting diode (LED) display, and a plasma display. In some embodiments, the display 300 may also be a touch screen.

[0127] Furthermore, the server 200 can also communicate with one or more devices that enable users to interact with the server 200, and / or with any device (e.g., network interface card, modem, etc.) that enables the server 200 to communicate with one or more other computing devices. This communication can be performed via input / output (I / O) interface 230. Additionally, the server 200 can communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 240. As shown, network adapter 240 communicates with other modules of the server 200 via bus 201. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with the server 200, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0128] The processing unit 210 executes various functional applications and data processing by running programs stored in the system memory 220, such as implementing the robust verification method based on dynamic node tracking described in the above embodiments of this disclosure.

[0129] This disclosure also provides a computer-readable storage medium storing a computer program (or computer-executable instructions) thereon, which, when executed by a processor, performs the robustness verification method based on dynamic node tracking described in the above embodiments of this disclosure, the method comprising:

[0130] Establish a list of key elements of the object to be verified, wherein the list of key elements includes the status information of at least one key element;

[0131] Obtain the change nodes of the state information of the key elements of the object to be verified when it is executed without interruption;

[0132] The injection timing is determined based on the change nodes of the state information of the key elements, and an interruption event is injected at the injection timing.

[0133] After the interruption event is injected, verify whether the object to be verified has recovered to the expected target.

[0134] The computer storage medium of this disclosure can be any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0135] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.

[0136] Program code contained on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0137] Computer program code for performing the operations of embodiments of this disclosure can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​(such as Java, Smalltalk, C++) and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0138] Furthermore, throughout this document, the terms "comprising," "including," or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0139] Finally, it should be noted that the above embodiments are merely examples for clearly illustrating this disclosure and are not intended to limit the implementation. Those skilled in the art can make other variations or modifications based on the above description. It is neither necessary nor possible to exhaustively list all possible implementations here. However, obvious variations or modifications derived therefrom are still within the scope of this disclosure.

[0140] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0141] As described above, these embodiments of the present invention do not exhaustively cover all details, nor do they limit the invention to the specific embodiments described. Clearly, many modifications and variations can be made based on the above description. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the invention, thereby enabling those skilled in the art to effectively utilize the invention and its modifications. The invention is limited only by the claims and their full scope and equivalents.

Claims

1. A robustness verification method based on dynamic node tracking, comprising: Establish a list of key elements of the object to be verified, wherein the list of key elements includes the status information of at least one key element; Obtain the change nodes of the state information of the key elements of the object to be verified when it is executed without interruption; The injection timing is determined based on the change nodes of the state information of the key elements, and an interruption event is injected at the injection timing. After the interruption event is injected, verify whether the object to be verified has recovered to the expected target.

2. The robustness verification method based on dynamic node tracking according to claim 1, wherein, The key elements include at least one selected from status register groups, memory pointer variables, transaction processing flags, pipeline counters, interrupt mask registers, and analog-to-digital control signals.

3. The robustness verification method based on dynamic node tracking according to claim 1, wherein, The change node includes the point in time when the state information of the key element changes; The step of determining the injection timing based on the change nodes of the state information of the key element, and injecting an interruption event at the injection timing, includes: Inject the interrupt event before the changed node; and / or Inject the interrupt event when the node changes; and / or The interrupt event is injected after the changed node.

4. The robustness verification method based on dynamic node tracking according to claim 1, wherein, The verification process, after the interruption event injection, includes checking whether the object to be verified has recovered to the expected target. Check whether the state recovery record flag of the object to be verified is consistent with the expectation when it is interrupted by the interruption event during the continuous execution of the event; Verify whether the continuous execution of the event to be verified continues and is completed after the interruption event during the continuous execution of the event to be verified and the status record is processed.

5. The robustness verification method based on dynamic node tracking according to claim 1, wherein, The interrupt event includes at least one selected from hardware failure, software anomaly, external interrupt, voltage glitches, clock jitter, bus access anomaly, and signal interruption.

6. The robustness verification method based on dynamic node tracking according to claim 1, wherein, The key elements include those affected when the object to be verified is interrupted during the continuous execution of the event; The steps for obtaining the change nodes of the state information of the key elements of the object to be verified during uninterrupted execution include: Perform uninterrupted continuous event operations on the object to be verified, and record the change nodes of the key element list throughout the entire event cycle; The step of determining the injection timing based on the change nodes of the state information of the key element, and injecting an interruption event at the injection timing, includes: The object to be verified repeatedly performs continuous event operations, injecting the interruption event at the injection timing, until all injection timings have been traversed.

7. The robustness verification method based on dynamic node tracking according to claim 6, wherein, The record of changes in the list of key elements throughout the entire event lifecycle includes: Monitor the list of key elements and capture the status changes in the list of key elements in real time; Record the state transition sequence; Create a set of change points marked with timestamps.

8. A robustness verification system based on dynamic node tracking, comprising: A creation unit is used to create a list of key elements of an object to be verified, the list of key elements including the status information of at least one key element. The acquisition unit is used to acquire the change nodes of the state information of the key elements of the object to be verified when it is executed without interruption; An injection unit determines the injection timing based on the change nodes of the state information of the key element, and injects an interruption event at the injection timing. The verification unit verifies whether the object to be verified has recovered to the expected target after the interruption event is injected.

9. A server, comprising: processor; Memory, used to store one or more programs; Wherein, when the one or more programs are executed by the processor, the processor implements the robust verification method based on dynamic node tracing as described in any one of claims 1 to 8.

10. A computer-readable storage medium having a computer program stored thereon, wherein, When the program is executed by the processor, it implements the robust verification method based on dynamic node tracing as described in any one of claims 1 to 8.