Releases: Nuclei-Software/NMSIS
Nuclei Microcontroller Software Interface Standard V1.0.1
This is the offical V1.0.1
release of Nuclei MCU Software Interface Standard(NMSIS).
-
NMSIS-Core
- Add RISC-V DSP 64bit intrinsic functions in
core_feature_dsp.h
- Add more CSR definitions in
riscv_encoding.h
- Update arm compatiable functions for RISC-V dsp instruction cases in
core_compatiable.h
- Add RISC-V DSP 64bit intrinsic functions in
-
NMSIS-DSP
- Optimize RISC-V 32bit DSP library implementation
- Add support for Nuclei RISC-V 64bit DSP SIMD instruction for DSP library
- Add test cases used for DSP library testing, mainly for internal usage
- Change the examples and tests to use Nuclei SDK as running environment
-
NMSIS-NN
- Add support for Nuclei RISC-V 64bit DSP SIMD instruction for NN library
- Change the examples and tests to use Nuclei SDK as running environment
-
Device Templates
-
Add
DDR
DOWNLOAD_MODE in device templates -
Modifications to
startup_<Device>.S
files_premain_init
is added to replace_init
_postmain_fini
is added to replace_fini
-
If you have implemented your init or de-init functions through
_init
or_fini
,
please use_premain_init
and_postmain_fini
functions definedsystem_<Device>.c
now -
Cache control updates in System_.c
- I-Cache will be enabled if
__ICACHE_PRESENT = 1
defined in<Device>.h
- D-Cache will be enabled if
__DCACHE_PRESENT = 1
defined in<Device>.h
- I-Cache will be enabled if
-
Nuclei Microcontroller Software Interface Standard V1.0.1-RC1
This is release candidate version V1.0.1-RC1
of NMSIS.
-
NMSIS-Core
- Add RISC-V DSP 64bit intrinsic functions in
core_feature_dsp.h
- Add more CSR definitions in
riscv_encoding.h
- Update arm compatiable functions for RISC-V dsp instruction cases in
core_compatiable.h
- Add RISC-V DSP 64bit intrinsic functions in
-
NMSIS-DSP
- Optimize RISC-V 32bit DSP library implementation
- Add support for Nuclei RISC-V 64bit DSP SIMD instruction for DSP library
- Add test cases used for DSP library testing, mainly for internal usage
- Change the examples and tests to use Nuclei SDK as running environment
-
NMSIS-NN
- Add support for Nuclei RISC-V 64bit DSP SIMD instruction for NN library
- Change the examples and tests to use Nuclei SDK as running environment
-
Device Templates
- Add
DDR DOWNLOAD_MODE
in device templates - Modifications to ``startup_.S** files
_premain_init
is added to replace_init
_postmain_fini
is added to replace_fini
- I/D Cache will be enabled by default now if present
- If you have implemented your functions in
_init
or_fini
,
please place the changes in functions definedsystem_<Device>.c
- Add
Nuclei Microcontroller Software Interface Standard V1.0.0-beta1
Main changes in release V1.0.0-beta1.
-
NMSIS-Core
- Fix
SysTick_Reload
implementation - Update
ECLIC_Register_IRQ
implementation to allow handler == NULL - Fix
MTH
offset from 0x8 to 0xB, this will affect function ofECLIC_GetMth
andECLIC_SetMth
- Fix wrong macro check in cache function
- Add missing
SOC_INT_MAX
enum definition in Device template - In
System_<Device>.c
, ECLIC NLBits set to__ECLIC_INTCTLBITS
,
which means all the bits are for level, no bits for priority
- Fix
Nuclei Microcontroller Software Interface Standard V1.0.0-beta
Main changes in release V1.0.0-beta.
-
NMSIS-Core
- Fix error typedef of
CSR_MCAUSE_Type
- Change
CSR_MCACHE_CTL_DE
to future value0x00010000
- Fix names in CSR naming,
CSR_SCRATCHCSW
->CSR_MSCRATCHCSW
,
andCSR_SCRATCHCSWL
->CSR_MSCRATCHCSWL
- Add macros in
riscv_encoding.h
:MSTATUS_FS_INITIAL
,MSTATUS_FS_CLEAN
,MSTATUS_FS_DIRTY
- Fix error typedef of
-
Documentation
- Fix an typo in core_template_intexc.rst
- Add cross references of Nuclei ISA Spec
- Update appendix
- Refines tables and figures
Nuclei Microcontroller Software Interface Standard V1.0.0-alpha.1
From release v1.0.0-alpha to now, these changes have been made to NMSIS.
API changes has been maded to system timer.
-
Start from Nuclei N core version 1.4, MSTOP register is renamed to MTIMECTL to provide more features
-
Changes made to NMSIS/Core/core_feature_timer.h
- MSTOP register name changed to MTIMECTL due to core spec changes
- SysTimer_SetMstopValue renamed to SysTimer_SetControlValue
- SysTimer_GetMstopValue renamed to SysTimer_GetControlValue
- Add SysTimer_Start and SysTimer_Stop to start or stop system timer counter
- SysTick_Reload function is introduced to reload system timer
- Macro names started with SysTimer_xxx are changed, please check in the code.
-
Removed unused lines of code in DSP and NN library source code which has unused macros which will not work for RISCV cores.
-
Fix some documentation issues, mainly typos and invalid cross references.
Nuclei Microcontroller Software Interface Standard V1.0.0-alpha
This is the V1.0.0-alpha
release of Nuclei MCU Software Interface Standard(NMSIS).
In this release, we have release three main compoments:
-
NMSIS-Core: Standardized API for the Nuclei processor core and peripherals.
-
NMSIS-DSP: DSP library collection optimized for the Nuclei Processors which has RISC-V SIMD instruction set.
-
NMSIS-NN: Efficient neural network library developed to maximize the performance and minimize the memory footprint Nuclei Processors which has RISC-V SIMD instruction set.
We also released totally new Nuclei-SDK which is an SDK implementation based on the NMSIS-Core for Nuclei N/NX evaluation cores running on HummingBird Evaluation Kit.