That's a very blurry distinction, and is a path
directly into
quicksand on this list. ;) Where DOES one draw the line between
hardware and firmware?
Hmmm... One 'thought experiemnt' goes like this :
Take your favourite microprocessor and write a stand-alone program for
it. Burn that program into an EPROM and wire it up to the microprosseor
with whatever RAM and peripherla chips are needed. Most people agree that
EPROM cotnains 'firmware'.
But an EPROM is just a combinatorial logic circuit. So for each of the 8
data bits of the EPROM, write down the logic equation giving it as a
functionof the address inputs. Now implement that logic equation using
TTL gates. Repeat for the other EPROM data pins. Wire the mess up, add
tri-state buffers to the oputput, and connect it in place of the EPROM.
The microrpccor runs as before. It must do. It gets the same logic levels
on its data pins in the 2 cases for each address it outputs. The
microprocessor cann't know whether it's an EPROM or a mass of 74xx chips.
But the result sure doesn;t _look_ like firmware :-)
For that matter, It's difficult to distinguish between 'microcode' and a
'state machine'.
-tony