Nuclei embedded Software Development Kit, Release 0.7.0
This is release version 0.7.0 of Nuclei SDK.
-
Application
- Add
demo_plic
case to show how to use PLIC related API in PLIC interrupt mode. - Add
demo_clint_timer
case to show how to use systimer in CLINT interrupt mode not ECLIC interrupt mode. - Update
demo_pmp
case to make it suitable for when PMP not present. - Change download mode from
ddr
tosram
for smp and cache cases to be suitable for some custom soc sdk.
- Add
-
NMSIS
- Add more ECC related macros for
milm_ctl/mdlm_ctl/mcache_ctl
csr - Add more PLIC interrupt API in
core_feature_plic.h
- Add more interrupt related API when in plic interrupt mode, see changes in
core_feature_base.h
- Bump NMSIS version to 1.3.0 with updated NMSIS Core/DSP/NN header files and prebuilt library
- Add more ECC related macros for
-
SoC
- Add Terapines ZCC NPK support, require Nuclei Studio >= 2024.06
- Merge newlib stub code from many files into one file called
stubs.c
for all SoC supported in Nuclei SDK - Enable I/D cache for evalsoc before data/bss initialization steps using
cpufeature.h
for faster data initialization - gd32vf103 default CORE name changed from
n205
ton203
which are the same in software - gd32vw55x default CORE name changed from
n307fd
ton300fd
which are the same in software - evalsoc default CORE name changed from
n307fd
ton300fd
which are the same in software - Add plic interrupt and exception related handling code for evalsoc
- Fix BPU is not enabled during startup for startup code for IAR compiler, which will increase performance of 600/900/1000 series a lot
-
Build System
- Introduce
XLCFG_xxx
make variable for evalsoc which is only internally used by Nuclei to overwrite default cpufeature.h macro definition, which will be useful for some applications such as demo_cidu, demo_cache, demo_spmp, demo_smpu and demo_smode_eclic - Introduce
ECC_EN
make variable for evalsoc which is only internally used by Nuclei to control whether ECC check is enabled or disabled. - Add core
n200e/n202/n202e
and removen205/n205e/n305/n307/n307fd
which can be replaced byn203/n203e/n300/n300f/n300fd
- Prebuilt IAR projects and workbench are updated due to evalsoc support changes for plic and clint interrupt modes.
- Add
SYSCLK
make variable for manually set default SYSTEM_CLOCK macro in evalsoc, it is useful forCODESIZE=1
case - Add
QEMU_MC_EXTOPT
make variable to pass extra Nuclei Qemu-M
machine options for evalsoc. - Add
QEMU_CPU_EXTOPT
make variable to pass extra Nuclei Qemu-cpu
cpu options for evalsoc.
- Introduce
Full Changelog: 0.6.0...0.7.0