The more I read about them, the more they appear to be synonyms of each other.I am referring Computer System Architecture by Morris Mano and it says Control word contains control variables. But isn't that exactly the same thing which micro-instruction represents ?
1 Answers
You are right. Microinstructions and control words are synonyms of each other. Let us understand what Mano means by this-" Control word contains control variables"
So,to control the datapath, you have control signals. Let us take an example of an ALU in the datapath. Say, the ALU performs 2 operations- ADD and SHIFT. Let us call the control signal of the ALU as ALU_K and say when ALU_K=0, the output of the ALU will be ADD and when ALU_K=1, output will be SHIFT. So, now, the control variable we have is ALU_K.
Lets encode the SHIFT(Opcode-01) instruction. My control logic is such that it decodes the first two bits as opcode and the third bit as ALU_K. In other words, the third bit from my control logic goes to the control pin of the ALU. For the data path to perform SHIFT, we want the ALU to perform a SHIFT operation. And therefore, we will encode the ALU_K bit in the ControlWord of SHIFT instruction as 1 and the opcode will be 01. So finally, I will be storing 011 in my control logic. This bunch is referred to as 'control word'. They are also called microinstruction or microcodes.

- 72
- 8
-
Note that "microcode" also has another technical meaning, as in [a microcoded instruction that decodes to multiple internal instructions from a microcode sequencer ROM](https://stackoverflow.com/questions/40366643/what-is-a-microcoded-instruction), and that ROM is part of what a "microcode update" for a modern x86 CPU updates. Also https://stackoverflow.com/questions/4366837/what-is-intel-microcode. – Peter Cordes Mar 01 '18 at 08:23