# NEORV32 Software Framework This folder provides the core of the NEORV32 software framework. This is a short description of the main folders. ## [bootloader](bootloader) Source(s) of the default NEORV32 bootloader. A pre-built image is already installed into the rtl design via the `rtl/core/neorv32_bootloader_image.vhd` file. ## [common](common) NEORV32-specific common files for all bootloader and application programs: linker script for executable generation and processor start-up code. ## [example](example) Several example programs for testing and for getting started. ## [image_gen](image_gen) This folder contains a simple program that is used to create NEORV32 executables (for upload via bootloader) and VHDL memory initialization files (for memory-persistent applications and for the bootloader). This program is automatically compiled using the native GCC when invoking one of the application compilation makefiles. ## [isa-test](isa-test) NEORV32 RISC-V Architecture Test Framework. See [sim/README](../sim/README.md). ## [lib](lib) Core libraries (sources and header files) and helper functions for using the processor peripherals and the CPU itself. ## [ocd-firmware](ocd-firmware) Firmware (debugger "park loop") for the on-chip debugger. This folder is just for documenting the source code. Modifying the sources is not recommended as this could break the on-chip debugger. ## [openocd](openocd) Configuration file for openOCD to connect to the NEORV32 on-chip debugger via JTAG. ## [svd](svd) Contains a CMSIS-SVD compatible system view description file including _all_ peripherals.