Reworking things a bit based on some excellent feedback. I will be using an 8 bit ALU based on @roelh 's 4 bit ALU. Instead of having hardwired to the AB, XY registers, it will have an input and output register. It will then use the data-bus and it's input register for inputs and it's output can go anywhere one cycle later.
I have been thinking about addressing modes for instructions. I think I will keep it to direct, register, and immediate. I have been thinking about offset addressing, but with only an 8 bit ALU I will run into page overrun problems. Better to do this in software I think. I don't think it's worth building a 16 ALU, as this would introduce a whole new set of problems in this new design, and I have to remember to try and keep it simple.
I've updated my block diagram, working on the new instruction set. These are both a work in progress and very flexible.
https://docs.google.com/drawings/d/1BW84zwO5effvYcdKjxzyki9cuvuHsM98z6nAamw4iTM/edit?usp=sharing
https://docs.google.com/spreadsheets/d/1kbxYGDeIOszgvjPYRdes-bELOBlojT_tjxe_RD9MVUQ/edit?usp=sharing
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.