2021-05-31 22:57:05 +08:00
|
|
|
== Introduction
|
|
|
|
|
|
|
|
Hazard3 is a 3-stage RISC-V processor, providing the following architectural support:
|
|
|
|
|
|
|
|
* `RV32I`: 32-bit base instruction set
|
2021-11-28 11:16:45 +08:00
|
|
|
* `M`: integer multiply/divide/modulo
|
2021-12-07 13:10:20 +08:00
|
|
|
* `A`: atomic memory operations
|
2021-11-28 11:16:45 +08:00
|
|
|
* `C`: compressed instructions
|
|
|
|
* `Zba`: address generation
|
|
|
|
* `Zbb`: basic bit manipulation
|
|
|
|
* `Zbc`: carry-less multiplication
|
|
|
|
* `Zbs`: single-bit manipulation
|
2021-05-31 22:57:05 +08:00
|
|
|
* M-mode privileged instructions `ECALL`, `EBREAK`, `MRET`
|
2021-11-28 11:16:45 +08:00
|
|
|
* The `WFI` instruction
|
|
|
|
* `Zicsr`: CSR access
|
2021-05-31 22:57:05 +08:00
|
|
|
* The machine-mode (M-mode) privilege state, and standard M-mode CSRs
|
2021-07-17 19:58:08 +08:00
|
|
|
* Debug support, fully compliant with version 0.13.2 of the RISC-V external debug specification
|
2021-05-31 22:57:05 +08:00
|
|
|
|
|
|
|
The following are planned for future implementation:
|
|
|
|
|
2021-11-28 11:16:45 +08:00
|
|
|
* Trigger unit for debug mode
|
|
|
|
** Likely breakpoints only
|