3 ms·
> Yes, an interpreter is exactly what microcoding is. In a sense, yes, it is indeed! But when I think "microcode" then I think something like the 8086's horiz
by kiwidrew 6y ago
> Yes, an interpreter is exactly what microcoding is.
In a sense, yes, it is indeed!
But when I think "microcode" then I think something like the 8086's horizontal microcode [1], where each line of microcode is wired directly to the various functional units and the microcode jumps and branches are (in some sense) determined based off (some of) the bits in the instruction register.
Characteristics of microcode include: wide instructions (20-40 bits) that perform multiple operations in parallel (e.g. ALU operation and register-register copy) and hardware dispatch to the appropriate microcode to handle each microcoded instruction via zero-overhead multiway branches.
I wouldn't call a 6502-like assembly language microcode, even if it implements an interpreter for a user-level instruction set, because it lacks the relevant characteristics of true CPU microcode.
[1] https://www.reenigne.org/blog/8086-microcode-disassembled/ https://www.reenigne.org/blog/8086-microcode-disassembled/
- brucehoult 6y agoare you in kiwi-land Mr kiwidrew?