A hardwired control unit is a control unit designed using hardware components such as logic gates, flip-flops, decoders etc. Well, there are two ways to design any control unit, it can be designed using hardwired control or using microprogrammed control.
Both hardwired and microprogrammed control unit are implemented to generate the control signals required to fetch and execute the instructions of the program. The microprogrammed control unit is implemented with the programming approach.
Well, these two approaches to designing the control unit can be differentiated using several other parameters. But in this section, we will be concentrating on the hardwired control unit.
What is Hardwired Control Unit?
The hardwired control unit fetches the instructions, decodes them and generates the corresponding control signals that make the processor’s hardware take appropriate actions in the correct sequence as well as at the right time for the execution of the fetched instruction.
Now the question here is how the control signals are generated and on what factors the control signals are dependent. Let us discuss how this happens?
In our previous content, instruction cycle we had defined the processing of a single instruction which involves a sequence of steps such as instruction fetch, instruction decode, operand fetch, instruction execution and operand store.
Now each step requires one clock cycle. And to track the progress of instruction execution a step counter is implemented. Depending on the instruction fetched several actions are taken for its successful execution.
Consider if there is a branch instruction, action taken by the processor depending upon the result of computation or comparison operation. If the interrupt occurred between the executions of instruction then the processor would perform another set of actions. So, this is how the generation of control signals is influenced by the different kinds of instructions.
If we take a brief view settings of control signals in hardwired control unit depend upon the following factors:
- Status of the step counter.
- The content present in the instruction register.
- The test result of the computation or comparison operation of the branch instruction.
- External signals to the control unit such as interrupts.
Block Diagram of Hardwired Control Unit
In this section, we will discuss the hardwired circuitry that is responsible for the generation of control signals. We will discuss all the hardware components individually to understand how the control signals are generated by the hardwired control unit.
- Instruction Register: The instruction fetched from the main memory is placed in the instruction register and the instruction remains there till its execution is completed. The instruction register outputs the opcode bits that is the machine code representation of instructions mnemonics. These opcode bits are fed to the instruction decoder.
- Instruction Decoder: The instruction decoder interprets the opcode and the addressing mode from the instruction register and determines what actions have to be taken.
- Step Counter: The step counter is used to track the progress in the execution of the instruction. The step counter indicates which step among the five i.e. instruction fetch, decode, operand fetch, execute, operand store steps is being carried out.
- Control Signal Generator: It is a combinational circuit that generates the control signals depending upon their input.
- Clock: The clock implement in the control circuitry is such that it completes one clock cycle for each step of instruction execution.
- External Inputs: The external input component acknowledges the control circuitry about the external signal such as interrupts.
- Conditional Signals: These components help the control unit in generating the control signals for branching instructions.
Now, let us discuss the generation of control signals. Initially, the instruction to be executed is fetched from the main memory and is a place in the instruction register which in turn generates the opcode which is interpreted by the instruction decoder. After interpreting the opcode bits the instruction decoder activates the corresponding INSi signal to the control circuitry.
With each clock cycle, one of the timing signals from T1 to T5 is activated indicating which step is from instruction fetch to operand store is being carried out. Based on the timing signals from the step counter and signals from the instruction decoder the control unit generates the control signals. The control signals are even influenced by the external signal and the conditional signals.
- The hardwired control unit generates the control signals faster as compared to the microprogrammed control unit.
- It is used while implementing the RISC processors which are popular for their speed.
- It works great for simple instructions.
- The hardwired control unit cannot be modified easily as it would take efforts to make changes in the hardware components.
- The hardwired control unit does not work well with complex instructions.
- It is costly to implement or modify the hardwired control unit.
So, this is all about the hardwired control unit which uses hardware components to implement the control circuitry which generates the control signals.