PROCESSOR SPECIFICATIONS
- 32 bit design
- 8 registers, including 4 general purpose registers
- up to 4 GB of RAM without banking
- Written in VHDL for easy FPGA implementation
- VBCC C compiler seems to work!
I designed it to be simple, effective, and useful. I have gotten pretty far with it, and I eventually would like to port python and Java.
The instruction set is, in my opinion the biggest advancement. It is more RISC than my older designs, allowing me to build processors that are less complex, use less logic, and have faster clock speeds in FPGAs.
Admittedly, I have not done much with the CPU yet, so although I have developed it a lot, it still has not been used much in the real world.
The whole idea was to make a simple yet powerful CPU. Powerful meant having extra useful instructions (like lodsb), but mostly having fast and simple instructions, and being 32 bits. I wanted each instruction that did not take in a constant to be one byte, so I utilized my understanding of 8-bit CPU architectures to design a fast and simple instruction set. The register names are from x86 CPUs, but most of the instruction set itself is actually based off the Z80 instruction set, the only other instruction set I know intimately enough to use.
I still have some ideas to make the CPU even faster and the instruction set simpler, too.