OpenCores
URL https://opencores.org/ocsvn/neorv32/neorv32/trunk

Subversion Repositories neorv32

[/] [neorv32/] [trunk/] [README.md] - Diff between revs 47 and 48

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 47 Rev 48
Line 56... Line 56...
  * optional embedded memories (instructions/data/bootloader, RAM/ROM) and caches
  * optional embedded memories (instructions/data/bootloader, RAM/ROM) and caches
  * timers (watch dog, RISC-V-compliant machine timer)
  * timers (watch dog, RISC-V-compliant machine timer)
  * serial interfaces (SPI, TWI, UART)
  * serial interfaces (SPI, TWI, UART)
  * general purpose IO and PWM channels
  * general purpose IO and PWM channels
  * external bus interface (Wishbone / [AXI4](#AXI4-Connectivity))
  * external bus interface (Wishbone / [AXI4](#AXI4-Connectivity))
 
  * subsystem for custom co-processors
  * [more ...](#NEORV32-Processor-Features)
  * [more ...](#NEORV32-Processor-Features)
* Software framework
* Software framework
  * core libraries for high-level usage of the provided functions and peripherals
  * core libraries for high-level usage of the provided functions and peripherals
  * application compilation based on [GNU makefiles](https://github.com/stnolting/neorv32/blob/master/sw/example/blink_led/makefile)
  * application compilation based on [GNU makefiles](https://github.com/stnolting/neorv32/blob/master/sw/example/blink_led/makefile)
  * GCC-based toolchain ([pre-compiled toolchains available](https://github.com/stnolting/riscv-gcc-prebuilt))
  * GCC-based toolchain ([pre-compiled toolchains available](https://github.com/stnolting/riscv-gcc-prebuilt))
Line 105... Line 106...
 
 
### To-Do / Wish List / Help Wanted
### To-Do / Wish List / Help Wanted
 
 
* Use LaTeX for data sheet
* Use LaTeX for data sheet
* Further size and performance optimization
* Further size and performance optimization
* Further expand associativity configuration of instruction cache (4x/8x set-associativity)
* Further expand associativity configuration of instruction cache (4x/8x set-associativity)?
* Add data cache
* Add data cache?
* Burst mode for the external memory/bus interface
* Burst mode for the external memory/bus interface?
* RISC-V `F` (using [`Zfinx`](https://github.com/riscv/riscv-zfinx/blob/master/Zfinx_spec.adoc)?) CPU extension (single-precision floating point)
* RISC-V `F` (using [`Zfinx`](https://github.com/riscv/riscv-zfinx/blob/master/Zfinx_spec.adoc)?) CPU extension (single-precision floating point)
* Add template (HW module + intrinsics skeleton) for custom instructions?
* Add template (HW module + intrinsics skeleton) for custom instructions?
* Implement further RISC-V (or custom?) CPU extensions
* Implement further RISC-V (or custom) CPU extensions?
* More support for FreeRTOS (like *all* traps)
* More support for FreeRTOS (like *all* traps)?
* Port additional RTOSs (like [Zephyr](https://github.com/zephyrproject-rtos/zephyr) or [RIOT](https://www.riot-os.org))
* Port additional RTOSs (like [Zephyr](https://github.com/zephyrproject-rtos/zephyr) or [RIOT](https://www.riot-os.org))?
* Maybe port [CircuitPython](https://circuitpython.org/) (just for fun)
* Add debugger ([RISC-V debug spec](https://github.com/riscv/riscv-debug-spec))?
* Add debugger ([RISC-V debug spec](https://github.com/riscv/riscv-debug-spec))
* Add encryption/decryption/hash accelerator (maybe [XTEA](https://en.wikipedia.org/wiki/XTEA))?
* ...
* ...
* [Ideas?](#ContributeFeedbackQuestions)
* [Ideas?](#ContributeFeedbackQuestions)
 
 
 
 
 
 
Line 226... Line 227...
 
 
 
 
#### NEORV32-specific CPU extensions (`X` extension)
#### NEORV32-specific CPU extensions (`X` extension)
 
 
* The NEORV32-specific extensions are always enabled and are indicated via the `X` bit set in the `misa` CSR.
* The NEORV32-specific extensions are always enabled and are indicated via the `X` bit set in the `misa` CSR.
* Eight *fast interrupt* request channels with according control/status bits in `mie` and `mip` and custom exception codes in `mcause`
* 16 *fast interrupt* request channels with according control/status bits in `mie` and `mip` and custom exception codes in `mcause`
* `mzext` CSR to check for implemented `Z*` CPU extensions (like `Zifencei`)
* `mzext` CSR to check for implemented `Z*` CPU extensions (like `Zifencei`)
* All undefined/umimplemented/malformed/illegal instructions do raise an illegal instruction exception
* All undefined/umimplemented/malformed/illegal instructions do raise an illegal instruction exception
 
 
 
 
#### Privileged architecture - CSR access (`Zicsr` extension)
#### Privileged architecture - CSR access (`Zicsr` extension)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.