1.1.1 Structure and function of the processor Flashcards
What are CPUs
Central processing units (CPUs) are general purpose processors that execute instructions in a computer system
through the fetch-decode-execute (FDE) cycle.
Each consists of :
An Arithmetic Logic Unit (ALU)
A Control Unit (CU)
Registers
Buses.
What is a bus?
A bus is a parallel group of communication channel wires able to transmit data in groups of bits together from one register to another in the processor.
What is the Address bus?
The Address bus carries the memory location address of the register where the data is being transmitted to or from.
What is the Data Bus?
The Data bus carries the data being transmitted from one register to another between areas of the processor and memory. IS BI-DIRECTIONAL
What is the Control Bus?
The Control bus transmits control signals from the CU to allow synchronisation of signals to the rest of the
processor.
What is the Arithmetic Logic Unit (ALU)?
Carries out arithmetic calculations and logical decisions.
Acts as a conduit through which all I/O to computer is done and a gateway to and from the processor.
The results of its calculations are stored in the Accumulator (ACC).
What is the Accumulator (ACC)?
Temporary storage of intermediate results in the ALU holds the data currently being processed during calculations. Deals with the I/O data in the processor and is used as a buffer. All arithmetic and logical operations use the ACC.
What is the Control Unit (CU)?
Decodes and manages the execution of instructions using control signals to coordinate movement of data
through the processor and other parts of the computer.
Sends out signals to coordinate how the processor works.
Synchronises actions using inbuilt clock.
Controls FDE cycle and buses.
What is the Current Instruction Unit (CIR)?
Holds the most recently fetched data/instructions to be decoded and executed into opcode and operand. Instruction contents are split into 2 component parts. Opcode is first part of instruction decoded so CU knows what to do and remainder of the instruction content is address of data to be used with the operation or actual data if immediate operand is used. Operand is coped to MAR if it is an address for accessing data to ACC or to MDR if it is data. Sends address to PC for jump instruction and determines the type of addressing to be used.
What is the Memory Address Register (MAR)?
Contains the address of the next instruction or of the next location to be accessed in memory copied from PC or the address of next data item to be used copied from operand part of instruction from CIR.
What is the Memory Data Register (MDR)?
Contains the instructions of the memory location address specified in the MAR when being transferred between memory and processor. Receives data currently being used by the processor from memory location in address part of ACC. Acts as a buffer and copies data/instructions to CIR.
What is the Program Counter (PC)?
It controls the sequence in which the instructions are retrieved and executed and stores the address of the next instruction to be processed. Value is then sent to the MAR and the PC is incremented by 1 each FDE cycle after being read and is changed to address held in CIR if the operation is a Jump.
What is the General Purpose Register (GPR)?
Used to temporarily store data being used rather than sending data to and from the comparatively much slower memory.
What happens in the ‘fetch’ stage in the fetch-decode-execute cycle?
The next instruction is fetched from the address held by PC in main memory into the processor.
PC passes this address to MAR which provides the location sent along the address bus.
PC is incremented in each cycle and the fetch signal is sent on the control bus.
The contents of the memory location are sent from memory to the processor on the data bus and stored in the
MDR.
The contents of the MDR and ACC are sent to the ALU and the result is stored back in the ACC.
What happens in the “decode” stage in the fetch-decode-execute cycle?
Load instruction from address in MAR pointed to MDR.
The instruction is copied from MDR to CIR.
The instruction is decoded into opcode and operand by the CU in the CIR.