Interrupt and Exception Injection
Overview
Interrupt and Exception Injection is a technique used during RTL-fuzzing input generation to insert interruptions and exceptions into generated inputs. The technique is described in the context of INSTILLER, an RTL fuzzer for CPU bug detection, where it is used to solve the problem of inserting interruptions and exceptions while generating fuzzing inputs. [Definition and placement]
Motivation
The motivating problem is realism in CPU RTL fuzzing. The INSTILLER paper states that related work could not simulate realistic interruptions well, and presents INSTILLER as addressing that limitation by inserting interruptions and exceptions during input generation. [Motivation]
This fits into a broader hardware-verification setting: bugs can exist in hardware such as CPUs, and unlike software bugs, these hardware bugs need to be detected before deployment. [Hardware bug detection context]
Use in INSTILLER
INSTILLER, short for Instruction Distiller, is presented as an RTL fuzzer based on ant colony optimization. Its workflow includes multiple mechanisms: instruction distillation using a variant of ant colony optimization, insertion of interruptions and exceptions during input generation, and hardware-based seed selection and mutation strategies. [INSTILLER context]
Within that system, Interrupt and Exception Injection is not described as a standalone fuzzer; it is one part of the input-generation strategy that aims to make generated RTL fuzzing inputs more realistic. [Definition and placement]
Reported system-level results
The available evidence reports results for INSTILLER as a whole, not an isolated ablation of Interrupt and Exception Injection. In experiments against state-of-the-art fuzzing work on real-world target CPU cores, INSTILLER achieved 29.4% more coverage than DiFuzzRTL and detected 17.0% more mismatches. The same abstract reports that its VACO-based distillation generated 79.3% shorter input instructions than DiFuzzRTL and improved execution speed by 6.7% on average. [INSTILLER results]
Scope and limitations
Based on the available evidence, Interrupt and Exception Injection should be understood specifically as a technique for inserting interruptions and exceptions into generated RTL-fuzzing inputs. The evidence supports its role inside INSTILLER and its motivation in realistic interruption simulation, but does not provide lower-level implementation details such as injection timing, exception classes, interrupt sources, or architectural handling semantics.