Skip to content
STIMSMITH

interrupt handling

Concept

Interrupt handling appears in the provided evidence as both generated RISC-V trap-handler code and as a verification concern for asynchronous external stimuli. In riscv-dv, interrupt and exception handling are generated as assembly-program sections, including an mtvec_handler section with interrupt_handler and exception_handler definitions. In co-simulation, interrupts require explicit messaging because asynchronous events can make standalone trace comparison diverge; Dromajo supports this through mechanisms such as raise_interrupt(), which communicates the interrupt cause and sets the trap vector.

First seen 5/27/2026
Last seen 5/27/2026
Evidence 5 chunks
Wiki v2

WIKI

Overview

In the provided RISC-V verification evidence, interrupt handling is a trap-related part of generated assembly programs and a special case for reference-model co-simulation. The riscv-dv riscv_asm_program_gen class generates multiple assembly-program sections, including initialization, instruction, data, stack, page-table, interrupt-handling, and exception-handling sections.

Interrupt handling in generated RISC-V assembly

READ FULL ARTICLE →

NEIGHBORHOOD

No graph connections found for this entity yet. It may appear in future ingestion runs.

explore full graph →

RELATIONSHIPS

2 connections
Dromajo ← uses 100% 2e
Dromajo supports handling of asynchronous interrupts during co-simulation.
gen_section ← implements 1e
gen_section selects and implements interrupt handling instructions in the generated program.

CITATIONS

9 sources
9 citations — click to expand
[1] riscv-dv generated assembly programs include interrupt and exception handling sections RISC-V source class riscv_asm_program_gen, the brain behind ...
[2] gen_program() generates all sections of the program and uses helper functions such as gen_section() RISC-V source class riscv_asm_program_gen, the brain behind ...
[3] trap-handler generation includes push_gpr_to_kernel_stack() and an mtvec_handler section with exception_handler and interrupt_handler definitions RISC-V source class riscv_asm_program_gen, the brain behind ...
[4] trace comparison can fail for interrupts because external stimuli are asynchronous and can cause execution logs to diverge [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[5] co-simulation for asynchronous interrupts requires messaging so the RTL can inform the emulator or reference model to follow the interrupt-driven execution path [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[6] Dromajo can handle external stimuli such as interrupts and debug requests [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[7] Dromajo co-simulation uses step() for committed instructions and raise_interrupt() to communicate an interrupt cause and set the trap vector [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[8] A formal ARINC 653 operating-system specification includes interrupt handling A Formal Specification of Operating System based on ARINC 653
[9] vCLIC addresses interrupt handling in virtualized RISC-V mixed-criticality systems, including challenges around interrupt vectoring, nesting, and tail-chaining vCLIC: Towards Fast Interrupt Handling in Virtualized RISC-V Mixed-criticality Systems