MASCO: The Design of a Microprogrammed Processor

Two methods are used to design the control unit of a processor. The first is the hardwire method, in which each machine instruction is applied directly to an array of decoders. These decoders will then generate the timing and control signals required to implement the machine instruction. The complete structure of the decoder array must be determined during the design phase and requires a significant amount of effort to devise and validate. Since changes to the decoder array are difficult and expensive to make once the processor has gone into production, the function of each machine instruction is effectively fixed. The second method used to design the control unit of a microprocessor was introduced by Wilkes in 1951.' This microprogramming approach offers a more flexible approach to processor design. A machine may be considered microprogrammed if each machine language instruction is performed by executing a series of microinstructions retrieved from a control store (usually distinct from main memory) and applied to a small network of decoders, which generate the control signals. Each microinstruction specifies which functions are to be performed when the instruction is applied to the system hardware. Thus, the function of a particular machine instruction is determined solely by the