Year 10 · Computer Science · Spring 1

Hardware · Lesson 1 of 5

Von Neumann and the registers

Theory3.1 Computer architecture

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

You will learn to

  • Describe the role of the CPU: it processes instructions and data.
  • Identify the parts of the von Neumann architecture: ALU, CU, registers, memory and buses.
  • State what each register holds: PC, MAR, MDR, CIR and ACC.
  • Describe the job of the address bus, the data bus and the control bus.

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

Success criteria

You have got it when you can say:

  • I can label a von Neumann diagram, including the three buses.
  • I can say what each of the five registers holds.
  • I can act out my register's job in the class FDE cycle.

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

Retrieval starter

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

  1. Last unit

    XOR gives 1 when…

    A Neither input is 1B Both inputs are 1C Exactly one input is 1

    C. Exactly one input is 1

  2. Last unit

    NAND is…

    A NOT followed by ANDB AND followed by NOTC OR followed by NOT

    B. AND followed by NOT

  3. Earlier this year

    Hex B2 in binary is…

    A 1011 0010B 1100 0010C 1011 0100

    A. 1011 0010

Year 10 · Computer Science · Hardware · Lesson 1 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 1 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 1 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 1 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 1 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 1 of 5

Try it: Run a tiny CPU

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

Quick quiz · 1 of 3

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

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

B. Program counter (PC)

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

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

Quick quiz · 2 of 3

Which bus carries the actual data?

  1. A Data bus
  2. B Control bus
  3. C Address bus

A. Data bus

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

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

Quick quiz · 3 of 3

The ALU does…

  1. A Storing files
  2. B Arithmetic and logic
  3. C Fetching instructions

B. Arithmetic and logic

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

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

Exit ticket

Answer on paper before you go. Then check.

  1. Cache is…

    A The hard diskB The program counterC Small, fast memory beside the CPU for recently used data

    C. Small, fast memory beside the CPU for recently used data Bigger cache means fewer slow trips to RAM.

  2. Which memory is volatile?

    A An SSDB ROMC RAM

    C. RAM Volatile means wiped when the power goes. RAM is; ROM and SSDs are not.