microRISC is a easy to understand CPU architecture implemented in Logisim.
- Detailed Manual here
- 32 32-bit General Purpose Registers
- SP Register (Stack Pointer)
- LR Register (Link Register)
- 32-bit Instructions
- Multitude of operations (check manual for specifics):
- Arithmetic
- Logical
- Memory
- Control Flow
- Simple Instruction Set and Assembly Language
- Easy to use Assembler
- Clone the repository
- Open a terminal and navigate to the root of the repository
- Run the assembler with the following command:
python3 assembler/main.py <input_file_name>This will generate two files in the directory of where you ran the command:
instructions.hexwhich contains the machine code of the programram.hexwhich contains the data section of the program (if you declared one)
- Open Logisim and load the
microRISC.circfile - Load
instructions.hexinto the Instruction Memory,ram.hexinto the Data Memory (if you declared a data section) - Run the simulation
- Manual
- Introduction
- Architecture
- Instruction Set
- Assembly Language
- Assembler
- Examples
- Design the architecture/spec
- Define the instruction set
- Implement the architecture in Logisim
- PC
- RegFile
- ALU
- Control Unit
- Memory Unit
- Pipeline
- Write an assembler
- Label resolution
- Data and control hazard resolution
- Make MOV a psuedo instruction