Re:Microcode: the place where hardware and software meet
by kens on Sunday March 10, 2013 @03:53PM
(#5353198)
The 6502 is an interesting case. The decode ROM (PLA) gets instructions about 1/3 of the way decoded, and then there's a whole pile of random control logic [1], [2] that generates the actual control lines [3]. The output from the decode ROM consists of semi-meaningless things such as ADC/SBC in state T0, or JSR in T5 [4], and after a whole bunch of gates these get turned into the actual control functions such as S bus to A register. [3]
[1] image of the 6502 at http://www.visual6502.org/images/6502/index.html
[2] schematic http://www.visual6502.org/wiki/index.php?title=650X_Schemati...
[3] block diagram http://www.weihenstephan.org/~michaste/pagetable/6502/6502.j...
[4] details of ROM http://visual6502.org/wiki/index.php?title=6507_Decode_ROM
Re:Microcode: the place where hardware and software meet
by grannyg00se on Sunday March 10, 2013 @04:26PM
(#5353317)
"Random control logic"
Oxymoron?
Is the control logic really random in some way? That sounds impossible. Or at least, very highly inefficient.
Re:Microcode: the place where hardware and software meet
by ColinWright on Sunday March 10, 2013 @04:55PM
(#5353422)
No, it's obviously not random. It is carefully designed, but there is no regularity to it. The expression "random logic" is used to describe the circuitry that is "ad hoc" rather than a matrix, like RAM, registers, or an ALU.
Google the expression to learn more.
Does microcode have to execute like traditional software to be called microcode?