We have seen the one-instruction Von Neumann architecture processor converted to a registers on bus architecture processor. Now we will consider how to convert a more typical Von Neumann architecture processor to the registers on bus architecture.
We will mainly consider how to convert small, simple Von Neumann processors to the registers on bus architecture because the registers on bus architecture is meant to allow many processors to work together. To get the most processors, each should be small and, therefore, simple. Because important registers are on the bus and the bus is only 256 bits, the number of registers (on the bus) is kept small. If there is a need for more registers they must be 'in memory' as we have already seen with the registers to hold states until they are needed as well as flags for those registers.
In the single-instruction processor, the instruction was very long, 256 bits. This took up the entire bus. Three 64 bit addresses in one instruction is not necessary, typically. One 32-bit instruction is more typical, which makes for shorter instructions and more room on the bus for non-instruction registers. Also, the instruction is slow because it uses memory 3 times. This can be reduced by having a 32-bit instruction counter ('instruction pointer' or 'program counter') on the bus. This program counter could auto-increment and change in other ways for branch instructions. A 16-bit register could be an index register for vector processing uses. (it could use mask instead of multiply and add.) A 32-bit register could be used as a general-purpose register/accumulator.
Judge for yourself and tell me, Roger Young, your opinion.
THIS IS THE END OF THIS DOCUMENT (for now)