To understand microcontroller systems and CPU architectures in detail, I am trying to make an emulator of a multi-core processor using Python language. I focus on extendabiliy of a code, easy reuse and simplicity. As I also want to learn more about OOP, this task is almost ideal to practice with.
- Functional single-core model
- Functional multi-core model
- Easy to add new instructions
- Pipelining
- RISC-V compatibility