I've been going over the optimization steps of my design, and I'm wondering if I have the right approach with a one-instruction set computer. Ultimately, is there much difference between having multiple instructions and multiple source/destination addresses? Decoding my addresses is very similar to decoding an instruction. I technically do have microcode, but it does the same thing every instruction. I still need multiple clock cycles to do memory fetching and execution.
I'm wondering if maybe I could optimize my design by going to a no-instruction set computer. In this case, I would do no instruction decoding at all. The bits of the control path are stored directly as the instruction. So the instructions are then very wide. But if I make my datapath simple enough, maybe it wouldn't be that big. Given that I could have a very large memory, perhaps this is a more optimized path. However, this violates the very root of my project - a one instruction computer driven by data transfers with a memory map. I'll have to think on which direction I want to go. I really want a minimal architecture which can be done with couple dozen TTL chips, but still powerful and flexible.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
This seems like a good thought: don't worry so much about what category your machine fits into, because really what you wanted is a simple implementation. There may be more than one way! if you do allow yourself EPROM, you can hide a lot of complexity in your inner interpreter. Your visible instruction might just be a start address in your EPROM code, and your EPROM could be very wide, giving direct control of a (simple) datapath.
Are you sure? yes | no