A newer version of this document is available. Customers should click here to go to the newest version.
4.3.1. General-Purpose Register File
4.3.2. Arithmetic Logic Unit
4.3.3. Multipy and Divide Units
4.3.4. Floating-Point Unit
4.3.5. Custom Instruction
4.3.6. Reset and Debug Signals
4.3.7. Control and Status Registers
4.3.8. Trap Controller
4.3.9. Memory and I/O Organization
4.3.10. RISC-V based Debug Module
4.3.11. Error Correction Code (ECC)
4.3.12. Branch Prediction
4.3.13. Lockstep Module
3.2.2. Non-pipelined Architecture
The Nios® V/m processor supports a non-pipelined datapath.
Stage | Denotation | Function |
---|---|---|
F | Instruction fetch | Pre-decode for register file read |
D | Instruction decode |
|
E | Instruction execute |
|
M | Memory |
|
The Nios® V/m processor implements the general-purpose register file using the M20K memory blocks. The processor takes one clock cycle to read from an M20K location. Therefore, the F-stage initiates register file reads so general-purpose register values are available in D-stage.
One instruction is available in the processor datapath at any time. Instructions flow from F-stage to M-stages without any stalls. Instruction and associated control logic are registered during D-stage, E-stage, and M-stage.
The processor requests the next instruction during the M-stage.
- For single cycle instructions, the processor makes the request as soon as the single cycle instruction enters M-stage.
- For multicycle instructions, the processor makes the request as soon as the multicycle instruction completes.