Year 10 · Computer Science · Spring 1

Hardware · Lesson 2 of 5

The fetch–decode–execute cycle and performance

Theory3.1 Computer architecture

Year 10 · Computer Science · Hardware · Lesson 2 of 5

You will learn to

  • Describe the fetch–decode–execute cycle in order, naming the registers and buses used.
  • Explain how clock speed, the number of cores and cache size affect performance.
  • Explain what an instruction set is.
  • Calculate how many clock ticks a CPU makes per second from its clock speed.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Success criteria

You have got it when you can say:

  • I can write the FDE cycle as six steps in the right order.
  • I can explain why doubling the cores does not always double the speed.
  • I can say that a 3 GHz clock ticks 3 billion times a second.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Retrieval starter

Questions from before. Write your answers, then show them.

  1. Last lesson

    Which memory is volatile?

    A ROMB An SSDC RAM

    C. RAM

  2. Last unit

    X = (A AND B) OR C with A = 0, B = 1, C = 1 gives…

    A Cannot tellB 0C 1

    C. 1

  3. Earlier this year

    In 8-bit two's complement, 11111111 is…

    A 255B −127C −1

    C. −1

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Key words (1 of 5)

CPU
The central processing unit, which processes instructions and data by fetching, decoding and executing them.
Microprocessor
A CPU made as an integrated circuit on a single chip.
Von Neumann architecture
A computer design where instructions and data are stored together in the same memory.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Key words (2 of 5)

ALU
Arithmetic logic unit: does calculations and logical comparisons.
Control unit
Manages the fetch–decode–execute cycle and sends control signals.
Register
A tiny, very fast store inside the CPU that holds one item.
Bus
A set of parallel wires that carries addresses, data or control signals.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Key words (3 of 5)

Cache
Small, very fast memory in or near the CPU that holds frequently used data and instructions.
Clock speed
The number of cycles the CPU does each second, measured in hertz.
Core
A complete processing unit; a multi-core CPU can process several instructions at once.
Instruction set
The list of all the instructions a particular CPU can carry out.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Key words (4 of 5)

Embedded system
A computer system inside a larger device that does one dedicated job.
Sensor
An input device that measures a physical property and sends the reading to a computer.
NIC
Network interface card: the hardware that connects a device to a network.
MAC address
A unique 48-bit address given to a NIC at manufacture, written in hex.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Key words (5 of 5)

IP address
An address given to a device on a network so data can be sent to it.

The explanation · step 1 of 8 · part 1 of 2

The CPU and the microprocessor

The CPU (central processing unit) is the part of the computer that processes instructions and data. It carries out the instructions of every program.

It does this by fetching an instruction from memory, decoding it, then executing it. Then it repeats, billions of times a second.

A microprocessor is a CPU built as an integrated circuit on a single chip. An integrated circuit is a whole electronic circuit made on one small piece of silicon.

The explanation · step 1 of 8 · part 2 of 2

The CPU and the microprocessor (continued)

e.g.Example
The chip inside a laptop, a phone or a games console is a microprocessor. A microprocessor also sits inside a microwave oven, running its timer.

The explanation · step 2 of 8 · part 1 of 2

Von Neumann architecture

Most computers follow the von Neumann architecture. Its key idea is the stored program: instructions and data are both stored in the same main memory.

The CPU has a control unit (CU). The CU manages the fetch–decode–execute cycle. It decodes instructions and sends control signals to the other parts.

The CPU has an arithmetic logic unit (ALU). The ALU does calculations (such as add and subtract) and logic operations (such as comparing two numbers).

The explanation · step 2 of 8 · part 2 of 2

Von Neumann architecture (continued)

The CPU also has registers: very small, very fast stores inside the CPU. The CPU is joined to memory by three buses (sets of wires).

?Why?

Keeping instructions and data in one memory means the computer can run any program you load. Change the program in memory and the same hardware does a new job.

There is a diagram for this step in the IGCSE library.

The explanation · step 3 of 8 · part 1 of 2

The five registers

A register holds one item at a time: an address, an instruction or a piece of data.

An address is the number of a location in memory, like a locker number in a school corridor.

The explanation · step 3 of 8 · part 2 of 2

The five registers (continued)

RegisterFull nameWhat it holds
PCProgram counterThe address of the next instruction to be fetched
MARMemory address registerThe address of the memory location about to be read from or written to
MDRMemory data registerThe data or instruction that has been fetched from memory, or about to be written to memory
CIRCurrent instruction registerThe instruction that is being decoded and executed right now
ACCAccumulatorThe result of calculations done by the ALU
!Watch out

PC and MAR hold addresses. MDR and CIR hold instructions or data. Mixing these up is the most common error in FDE answers.

The explanation · step 4 of 8 · part 1 of 2

The three buses

The address bus carries addresses from the CPU (the MAR) to memory. It is one-way (unidirectional), because only the CPU chooses addresses.

The data bus carries data and instructions between the CPU (the MDR) and memory. It is two-way (bidirectional), because data is both read and written.

The control bus carries control signals from the control unit, such as 'read', 'write' and the clock signal. It is two-way, because devices also send signals back.

The explanation · step 4 of 8 · part 2 of 2

The three buses (continued)

!Watch out

Exam answers often say 'the address bus carries data'. It carries addresses only. Data and instructions travel on the data bus.

The explanation · step 5 of 8 · part 1 of 4

The fetch–decode–execute cycle

Every instruction goes through the same three stages. Learn the fetch stage in order: it is worth most marks.

Fetch: the address in the PC is copied to the MAR, using the address bus. The PC is incremented (1 is added), so it points to the next instruction. The instruction at that address is sent along the data bus to the MDR. It is then copied from the MDR to the CIR.

The explanation · step 5 of 8 · part 2 of 4

The fetch–decode–execute cycle (continued)

Decode: the control unit decodes the instruction in the CIR. It works out what the instruction means and what needs to happen.

Execute: the instruction is carried out. The control unit sends signals on the control bus. If there is a calculation, the ALU does it and the result goes in the ACC. Then the cycle starts again.

The explanation · step 5 of 8 · part 3 of 4

The fetch–decode–execute cycle (continued)

e.g.Example
PC = 100. The instruction at address 100 is LOAD 105 (put the value at address 105 into the ACC). Fetch: 100 is copied from PC to MAR → PC becomes 101 → LOAD 105 travels from address 100 to the MDR → copied to the CIR. Decode: the CU sees 'load the value at address 105'. Execute: 105 goes into the MAR → the value at 105 (say 7) comes back on the data bus to the MDR → it is copied to the ACC. ACC = 7. Try it in the toy: its tiny program starts at address 0 (LOAD 5, ADD 6, STORE 7, HALT). Press Step and watch each register change. Notice when the PC goes up by 1.

The explanation · step 5 of 8 · part 4 of 4

The fetch–decode–execute cycle (continued)

?Why?

The PC is incremented during fetch, so the CPU always knows where the next instruction is, even while it is busy with the current one.

There is something to try for this step in the IGCSE library.

The explanation · 3 more steps

More on the lesson page

The lesson page has the rest of the explanation, step by step:

  • The instruction set
  • Cores, cache and clock speed
  • Embedded systems

Open the lesson page

Year 10 · Computer Science · Hardware · Lesson 2 of 5

The maths: How long is one clock tick?

Symbols first, then the words, then the equation. Change the numbers.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Quick quiz · 1 of 3

A solid-state drive…

  1. A Uses spinning platters
  2. B Uses a laser
  3. C Has no moving parts

C. Has no moving parts

Lasers are optical (DVD). Platters are magnetic (hard disk).

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Quick quiz · 2 of 3

A MAC address is…

  1. A The name of a website
  2. B The fixed hardware address of a network card
  3. C Given out by the router each time

B. The fixed hardware address of a network card

The IP address can change; the MAC is burnt in at the factory.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Quick quiz · 3 of 3

The register that holds the address of the next instruction is the…

  1. A Program counter (PC)
  2. B Accumulator (ACC)
  3. C Memory address register (MAR)

A. Program counter (PC)

PC points at the next instruction. MAR holds the address being used right now.

Year 10 · Computer Science · Hardware · Lesson 2 of 5

Exit ticket

Answer on paper before you go. Then check.

  1. Which bus carries the actual data?

    A Data busB Address busC Control bus

    A. Data bus Address bus: where. Data bus: what. Control bus: when and which way.

  2. The ALU does…

    A Fetching instructionsB Arithmetic and logicC Storing files

    B. Arithmetic and logic Add, subtract, compare. The control unit does the fetching and decoding.