Skip to content

Getting Started

LiteX, as a SoC builder and library, directly supports the RISC-V trend by making RISC-V softcores instantiable. Specifically, VexRiscv RISC-V cores support is very mature with the availibilty to support both RTOS and Linux.

RISC-V supports multiple types of interrupt controllers, depending on the implementation and platform as shown below :

Controller Scope Interrupt Types Prioritization Nesting Use Case
CLINT Core-local Timer, software Minimal No Simple, non-virtualized system
CLIC Core-local Local Fine-grained Yes RTOS, embedded systems
PLIC Platform-level External (global) Coarse No Linux, multiprocessor systems
CSRs Core-local Timer, software, external Minimal No Bare-metal, low-level control

By integrating RISC-V CLIC support into the LiteX SoC framework, we aim to enhance LiteX with modern interrupt handling capabilities. Instead it currently uses custom, memory-mapped peripheral for each RISC-V CPU cores.