1.1.2 Von Neumann Architecture Flashcards
ALU
- The ALU performs all of the arithmetic and logical operations of the CPU, including:
. Addition and subtraction, multiplication and division.
. Comparisons such as whether numbers are equal or if one is greater than another.
. Boolean operations (e.g. AND, OR, NOT).
CU
- The Control Unit transmits control signals to other components of the CPU.
- The Control Unit follows the fetch-decode-execute cycle to execute program instructions
Components of the CU
- The clock, which coordinates the CPU’s activity.
- The decoder, which decodes program instructions.
Registers
- The Control Unit transmits control signals to other components of the CPU.
They are used to hold information needed for the CPU to work.
Each register holds a specific piece of information.
PC
The PC holds the memory location address of the next instruction to be performed by the CPU
MAR
The MAR holds the address of the location in memory where data is to be retrieved or stored.
ACC
The ACC holds the result of calculations and operations performed by the arithmetic logic unit
MDR
The MDR holds the data that has been retrieved from memory, or that is about to be stored in memory
Fetch, Decode, Execute
To process instructions and data, the processor needs to retrieve them from memory. To do this, it follows the fetch, decode, execute (FDE) cycle
Fetch
- The address of the instruction that needs to be processed next is copied from the Program Counter (PC) to the Memory Address Register (MAR).
- The PC is incremented to point to the next instruction that will be needed when the cycle starts again.
- The instruction stored at the location held by the MAR is copied to the MDR.
Decode
The Control Unit decodes the instruction and sends control signals to the component within or outside the CPU that needs to act.
Execute
The operation indicated by the instruction is performed by the appropriate component. For example
The Arithmetic Logic Unit (ALU) performs the operation given by the Control Unit.
The value stored by the Program Counter or Memory Address Register might be changed.
What happens during the Fetch, Decode, Execute cycle
. The address of the next instruction is copied from thePC to the MAR
. ThePC is incremented to point to the next instruction
. The instruction stored at the location held by the MAR is copied to the MDR