The instruction is fetched from main memory and stored in the processor (the CPU). The controlunit can then access the instruction so that it can be decoded and executed.
Decode
The instruction needs to be decoded before it can be run. This is the process the control unit uses to work out what signals to issue to the other components for the instruction to be executed.
Execute
The controlunit will send signals to the relevant components so that the instruction is carried out.
The arithmetic and logic unit (ALU) is responsible for performing arithmetic calculations and logical operations that include:
Addition, subtraction, multiplication, division
Logical bitwise operations, such as AND, OR, NOT, and XOR
Comparisons between values, such as greater than, less than, equal to
Shifting binary patterns to the left or right
The controlunit organises the sequence of micro-operations that need to be performed in order to carry out an instruction, including managing the other components in the processor. The control unit is responsible for the following tasks:
Decodes every instruction to determine what needs to be done
Sends and receives controlsignals to and from other components
Checks that signals have been delivered successfully
Makes sure that data goes to the correct place at the correct time
Ensures the execution of instructions in the correct sequence