Control and Status Registers
ConceptControl and Status Registers (CSRs) are RISC-V architectural registers that control and hold processor state. CSRs are part of the architectural state and play a central role in modern RISC-V processor verification: ProcessorFuzz uses CSR transitions as HDL-agnostic coverage feedback; UVM-based verification environments verify CSRs alongside other core blocks; retirement-level lockstep co-simulation adds CSRs to the state-mask progression to exercise privilege and exception handling; and research systems such as SNAP use new CSRs as hardware/OS configuration interfaces for fuzzing instrumentation.
WIKI
Control and Status Registers
Control and Status Registers (CSRs) are RISC-V architectural registers that "contain additional information about the results of instructions in the CPU," and which are "in charge of controlling and holding the state of the processor." As a core component of the Architectural State, CSRs are visible at the ISA level alongside the program counter (PC), general-purpose registers (GPRs), and memory contents relevant to execution.
In RISC-V, CSR access and the execution of privileged instructions are gated by the current privilege level: User (U) for unprivileged applications, Supervisor (S) for operating systems, and Machine (M) for full hardware control and low-level operations. Only M is required to be implemented, but most non-embedded RISC-V CPUs implement all three.