Fetch execute decode cycle Flashcards
What is the ALU and what does it do?
Arithmetic logic unit
The part of the CPU that performs calculations (arithmetic) and logical operations.
It is responsible for the arithmetic and logic processing requirements of the instructions in a running program.
What is the CU and what does it do
Control unit
The part of the CPU that organizes the actions of the other parts of the CPU.
It controls the flow of data throughout the processor and the rest of the whole computer system.
It ensures that program instructions are handled correctly.
A vital part of the control unit is a system clock that is used by the unit to synchronise processes.
What is the register and what does it do
Storage components of the CPU which allows extremely fast access times (very much faster than accessing memory).
Each register has limited storage capacity, typically 16, 32 or 64 bits.
These are used to hold an instruction, an address of a memory location, or other piece of data.
Only a relatively small number of registers are available.
What are the 2 types of registers
Specific purpose register
General purpose register
What is a specific purpose register and eg
Play a specific role in fetch execute cycle
eg: program counter, memory address register, memory data register, current instruction register
What is a general purpose and eg
if there is only one general purpose register it is referred to as the Accumulator.
This is used to store a single value at any one time.
A value is stored in the accumulator that is to be used by the ALU for the execution of an instruction.
The ALU can then store a different value in the accumulator after the execution of the instruction.
What is a clock
An electronic device inside a CPU that ‘ticks’ at regular intervals and is used to synchronise the actions of the other parts of the CPU
What is a bus
a group of connecting wires (parallel wires).
CPU and main memory are connected to each other, and to the input and output (I/O) devices by a bus
What is a bus width
The number of wires/connections that make up a bus.
This determined the range of binary numbers that can be communicated.
Greater bus width means larger number of values can be communicated.
e.g. 8-bit address bus can address 00000000 (0) to 11111111 (255) , i.e 256 28possible addresses.
if the data bus width is 8 can transfer 1 byte – one character. if the bus width is 64 can transfer 8 characters at once.
The bus that connects the CPU to other devices in the computer is split into three parts:
Address bus
Data bus
Control bus
What does a address bus do?
Carries memory addresses between the CPU and main memory to the memory identify a memory location or it can be to the I/O system to identify the source or destination of the data.
This is unidirectional means data travel one way only
What does a data bus do?
Carries the values to be read from or written to memory.
It also carry data to an output device or can carry data from an input device. It is bidirectional (two-way).
What does a control bus do?
Bidirectional bus which transmits a signal from the control unit to any other system component or transmits a signal to the control unit.
The control bus carries timing signals at time intervals dictated by the clock cycle.
This ensures that the time that one component transmits data is synchronised with the time that another component reads it. For example, it carries the signals that, determine whether to read or write the data, and when to do so.
What does the “Fetch” part do?
The CPU control unit places the memory address of the next instruction on the address bus. (Program counter and the memory address register are involved in this process)
It also sends a signal on the control bus requesting to read from memory.
The memory receives the signal and looks up that memory location sent by the CPU using the address bus.
The data in the memory is copied on to the data bus.
The data bus copies this into a special register in the CPU. (MDR/MBR and CIR are the registers involved in this process
What does the “Decode” part do?
The control unit analyses the contents of the register and sends signals to the other parts of the CPU telling them what to do. (e.g., read data from memory, write data to the memory, perform a particular calculation etc.)