Design of Control Unit in Computer Architecture YASH PAL, March 3, 2026March 3, 2026 Design of Control Unit in Computer Architecture – The control unit generates timing and control signals for the operations of the computer. The control unit communicates with the ALU and the main memory. It also controls the transmission between the processor, memory, and the various peripherals. It also instructs the ALU which operation has to be performed on the data. A control unit works by receiving input information, which it converts into control signals, which are then sent to the central processor. The computer’s processor then tells the attached hardware what operations to perform. The functions that a control unit performs are dependent on the type of CPU because the architecture of the CPU varies from manufacturer to manufacturer. Let’s understand the Block Diagram of the control unit Block diagram of the Control Unit Clock: This is how the control unit keeps time. The control unit causes one micro-operation to be performed for each clock pulse. This is referred to as processor cycle time or clock cycle time Instruction registers: The opcode of the current instruction is used to determine which micro-operations to perform during the execute cycle. Flags: Used to determine the status of the processor and the outcome of previous ALU operations. Control signals from the control bus: The control bus portion of the system bus provides signals to the control unit. Control signals within the processor: Those that cause data to be moved from one register to another. Those that activate specific ALU functions. Control signals to control the bus: Control signals to memory control signals to input-output modules. Totally, there are three types of control signals: Those that activate the ALU function. Those that activate a data path. Those that are signals on the external system bus. Examples of devices that require a control unit are: Control Processing Units(CPUs) Graphics Processing Units(GPUs) Functions of the Control Unit It coordinates the sequence of data movements into, out of, and between a processor’s many sub-units. It interprets instructions. It controls data flow inside the processor. It receives external instructions or commands to which it converts to sequence of control signals. It controls many execution units(i.e., ALU, data buffers, and registers) contained within a CPU. It also handles multiple tasks, such as fetching, decoding, execution handling, and storing results. Type of control unit designing methods Hardwired Control Unit Microprogrammed Control Unit Hardwired Control Unit It is implemented with the help of gates, flip-flops, decoders, etc. In the hardware, the inputs to the control unit are the instruction register, flags, timing signals, etc. This organization can be very complicated if we have to make the control unit large. If the design has to be modified or changed, all the combinational circuits have to be modified, which is a very difficult task. Hardwired control unit A Hard-wired Control consists of two decoders, a sequence counter, and a number of logic gates. An instruction fetched from the memory unit is placed in the instruction register (IR). The component of an instruction register includes: 1 bit, the operation code, and bits 0 through 11. The operation code in bits 12 through 14 is coded with a 3 x 8 decoder. The outputs of the decoder are designated by the symbols D0 through D7. The operation code at bit 15 is transferred to a flip-flop designated by the symbol I. The operation codes from Bits 0 through 11 are applied to the control logic gates. The Sequence counter (SC) can count in binary from 0 through 15. Advantages of Hardwired Control Unit: It is faster than the microprogrammed control unit It can be optimized to produce the fast mode of operation. Disadvantages of a hardwired control unit: In the instruction set, the control logic is directly implemented. Requires a change in wiring if the design has to be controlled. An occurrence of an error is more. Complex decoding and sequencing logic. It requires a larger chip area; therefore, it is a costlier control unit. Microprogrammed Control Unit It is implemented by using a programming approach. A sequence of micro operations is carried out by executing a program consisting of micro-instructions. In this organization, any modifications or changes can be made by updating the microprogram in the control memory by the programmer. In microprogrammed control units, subsequent instruction words are fetched into the instruction register in a normal way. However, the operation code of each instruction is not directly decoded to enable immediate control signal generation, but it comprises the initial address of a microprogram contained in the control store. Microprogrammed control units in a basic computer: The Control memory address register specifies the address of the micro-instruction. The Control memory is assumed to be a ROM, within which all control information is permanently stored. The control register holds the microinstruction fetched from the memory. The micro-instruction contains a control word that specifies one or more micro-operations for the data processor. While the micro-operations are being executed, the next address is computed in the next address generator circuit and then transferred into the control address register to read the next microinstruction. The next address generator is often referred to as a micro-program sequencer, as it determines the address sequence that is read from control memory. Advantages of Microprogrammed Control Unit: It is both cheaper and the occurrence of an error is less. More flexible to accommodate new instructions. Easier decoding and sequencing can be done. Easier to handle complex instruction sets. It requires less chip area. Disadvantages of Micro programmed control unit: This is slower than the hardwired control unit because the microinstructions are to be etched from the control memory, which is time-consuming. Consider a hypothetical Control Unit that supports 4k words. The Hardware contains 64 control signals and 16 Flags. What is the size of the control word used in bits and the control memory in bytes using: (a) Horizontal Programming, (b) Vertical programming (a) For Horizontal64 bits for 64 signalsControl Word Size = 4 + 64 + 12 = 80 bitsControl Memory = 4kW = ((4*80)/8) = 40 kByte(b) For Vertical6 bits for 64 signals, i.e., log264Control Word Size = 4 + 6 + 12 = 22 bitsControl Memory = 4kW = (( 4*22)/8) = 11 kByte Computer System Architecture engineering subjects Computer System Architecture