- Program memory: a byte-addressed read-only memory space that contains the program being executed.
- Register memory: a word-addressed read-write memory space that contains the 32 32-bit registers specified by RISC-V RV32I.
- Data memory: a byte-addressed read-write memory space that accounts for all remaining memory used by the program.