Fetch Decode Execute Cycle Flashcards
What happens at the Fetch part of the cycle?
1) The Address in the Program Counter is copied to the Memory Address Register.
2) The Program Counter is incremented.
3) A Fetch signal is sent along the Control Bus by the Control Unit to the Memory, while the address held in the Memory Address Register is sent to the Memory along the Address Bus. The value stored in memory returns to the CPU along the Data Bus and is held in the Memory Data Register.
4) This value in the Memory Data Register is copied to the Current Instruction Register.
What happens at the Decode part of the cycle?
1) The contents of the Current Instruction Register are sent to the Control Unit for decoding.
2) The type of addressing used by the instruction must be identified:
- If the address is a direct address, load this address into the Memory Address Register and retrieve the contents of that address.
- If the address is an indexed address, add the contents of the index register to the address, then copy this value to the Memory Address Register. Retrieve the contents of this memory location.
What happens at the Execute part of the cycle?
- If the instruction is a jump:
- Load the address operand into the Program Counter
and copy the address component in the Current
Instruction Register to the Program Counter. - At this point execution has finished
- Load the address operand into the Program Counter
- Otherwise, execute the instructions.