This CPU is based on James Bates's design however i should note that Ben Eater's series was the initial inspiration for this project. Notable things about my design:
- Variable instruction length - SR (Step Reset) resets step counter once the instruction is done,
- 15 bit program memory,
- 15 bit RAM,
- 256B of stack,
- Program memory stored on esp32 which allows programs to be uploaded remotely,
- 4 general purpose registers,
- 16 ALU operations (8 logical and 8 arithmetical),
- 2 rows 16 columns LCD output.
For documentation about specific parts check out wiki.
To the left of the CPU is an esp32 which acts as ROM. It replaced eariler used EEPROM.