Computer Systems · Computer Structure

CS6 — Computer Architecture

Calendar Thu 25 Jun 2026 · P3+P4 (double)
Time ~120 minutes
Learning intentions
Success criteria
Warm up — recap from CS5
Answer from memory · check when done
Warm-up 1
A 640 × 480 bitmap image uses 8-bit colour depth. What is its uncompressed file size in KB?
Warm-up 2
Which graphic format is most suitable for a logo that must be resized for a poster and a website?
Warm-up 3
How many colours can be represented with 4-bit colour depth?

Key vocabulary

Processor / CPU
The component that executes program instructions and coordinates the rest of the computer system.
Control unit
The part of the processor that manages the timing and control signals needed to run instructions.
ALU
The arithmetic logic unit. It performs arithmetic operations and logical comparisons.
Register
A very small, very fast storage location inside the processor used while instructions are being executed.
Bus
A set of parallel wires used to transfer addresses, data or control signals between components.
Main memory
Temporary storage that holds programs and data currently in use. The processor fetches instructions and data from memory.

Notes

The stored-program computer

A modern computer follows the stored-program concept: both program instructions and data are stored in main memory as binary. The processor fetches instructions from memory, decodes what each instruction means, and carries out the required operation. This might mean adding two numbers, comparing two values, copying data from one location to another, or sending a signal to an input/output device.

The important idea is that the processor does not understand a whole Python program, web page or image file at once. It works through very small machine-code instructions. Each instruction is fetched, decoded and executed using a collection of internal parts. The main parts named at Higher are the control unit, the ALU, registers and the buses that connect the processor to memory and other devices.

Computer architecture overview
CPU / processor
Control unit
Decodes instructions and sends control signals.
ALU
Performs arithmetic and logical operations.
Registers
Tiny, fast storage for values needed right now.
Address bus
Data bus
Control bus
Main memory
2046ADD score
2047STORE total
204873
2049READ next

The CPU does the processing; main memory stores the current program and data; buses move addresses, values and control signals between them.

The control unit

The control unit directs the operation of the processor. It decodes instructions, works out which components must be used, and sends control signals to coordinate the movement of data. A useful way to think of the control unit is as the organiser: it does not perform the arithmetic itself, but it decides when the ALU should operate, which registers should be read or written, and whether memory should be read from or written to.

For example, if an instruction says to load a value from memory, the control unit places the required memory address onto the address bus and sends a read signal. If an instruction says to add two values, the control unit arranges for those values to be available to the ALU, then stores the result in a register.

The ALU

The arithmetic logic unit carries out the processor's arithmetic and logical operations. Arithmetic operations include addition and subtraction. Logical operations include comparisons such as equal to, greater than, less than, AND, OR and NOT. These operations matter because even complex programs are built from many small decisions and calculations.

When a program checks whether a password length is greater than 8, the ALU performs the comparison. When a program calculates a total price, the ALU performs the arithmetic. The ALU usually works with values that are already inside processor registers, because registers are much faster to access than main memory.

Registers: tiny, fast storage

Registers are small storage locations inside the processor. They are faster than main memory because they are physically part of the CPU. Registers temporarily hold instructions, addresses, data and results while the processor is executing instructions. Higher Computing Science does not require a large list of specific register names, but it does require you to understand the purpose: registers hold the immediate values the processor needs right now.

Instruction
LOAD 2048
Holds the instruction currently being decoded or executed.
Address
2048
Holds the memory location that the processor wants to read from or write to.
Data
73
Holds data being transferred between memory and the processor.
Accumulator
74
Often used to hold the result of an ALU operation.

Buses: moving information around

A bus is a group of parallel wires used to transfer information between computer components. There are three buses named in the course: the address bus, the data bus and the control bus. They work together but carry different kinds of information.

Three buses between CPU and memory
CPU
chooses and processes
address
CPU to memory
data
control
Memory
stores and returns

The address bus identifies where to look; the data bus carries the value; the control bus carries signals such as read and write.

BusWhat it carriesTypical directionPurpose
Address busMemory addressesProcessor to memorySelects the memory location to access.
Data busActual data or instructionsBoth directionsTransfers values between processor, memory and devices.
Control busControl signalsBoth directionsCoordinates actions such as read, write, clock and interrupt signals.

The address bus is usually described as one-way from processor to memory because the processor chooses which memory address it wants. The data bus is two-way because the processor may read data from memory or write data back to memory. The control bus is also two-way because the processor sends commands, while devices and memory can send status signals back.

A memory read in slow motion

To understand why the buses matter, imagine the processor needs to read a value stored in main memory. The processor first places the address of the required memory location on the address bus. The control unit sends a read signal on the control bus. Memory responds by putting the contents of that address onto the data bus. The processor then copies the value into a register so it can be used by the ALU or by the next instruction.

Memory read: address 2048
CPU
Address register: 2048
Data register: waiting...
1. send address 2048
2. send READ
3. return value 73
2046ADD score
2047STORE total
204873
2049READ next

The processor selects the address first. Only then can memory return the value stored at that address.

1
Select an address
The processor places the memory address on the address bus.
2
Send a control signal
The control unit sends a read signal on the control bus.
3
Transfer the value
Memory places the requested data or instruction onto the data bus.
4
Store temporarily
The processor copies the value into a register for immediate use.

Worked examples

Example 1 — Identifying processor components in a scenario
1
Scenario: A program calculates whether score > 70 and stores the result.
2
The control unit decodes the instruction and coordinates which values must be used.
3
The registers temporarily hold the score value and any result needed immediately.
4
The ALU performs the logical comparison: is the score greater than 70?
A full answer names the component and its role: control unit coordinates, registers hold temporary data, ALU performs the comparison.
Example 2 — Choosing the correct bus
1
Question: Which bus carries the location of the memory cell to be accessed?
2
A location in memory is called an address.
3
The bus that carries memory addresses is the address bus.
Answer: the address bus. Do not write data bus, because the data bus carries the actual values, not the location.
Example 3 — Describing a read operation
1
The processor places the required memory address on the address bus.
2
The control unit sends a read signal on the control bus.
3
Memory places the value stored at that address onto the data bus.
The processor stores the value in a register. This answer clearly distinguishes address, data and control signals.
Now you try
A program instruction says: load the value stored at memory address 2048 into the processor. Which bus carries 2048, which bus carries the stored value, and which bus carries the read signal?
Common mistakes — examiner feedback
Exam tip

When asked about buses, always include both what the bus carries and why that matters. For example: "The address bus carries the address of the memory location being accessed." That is stronger than simply naming the bus.

For processor component questions, avoid vague phrases like "the CPU does everything". Split the answer: control unit controls, ALU calculates/compares, registers temporarily store immediate values.

Task Set A

Task Set A — Higher core
Work through all questions. Written questions reveal model answers when checked.
A1
What does CPU stand for?
A2
Which processor component performs arithmetic and logical operations?
A3
Which bus carries the address of the memory location to be accessed?
A4
Which bus is used to transfer the actual instruction or data value between memory and the processor?
A5
Name the processor component that coordinates the movement of data and sends control signals.
A6
What name is given to a small, fast storage location inside the processor?
A7 — past paper style
Describe the role of the control unit.
A8 — past paper style
Explain the difference between the address bus, data bus and control bus.
A9 — past paper style
Explain why registers are used inside the processor.
A10 — extended
Describe how the processor reads a value from main memory. Your answer should mention all three buses.

Task Set B

Task Set B — Extension · Beyond the specification
No auto-check — self-assess using the model answers.
B1
Explain why increasing the width of the data bus can improve performance, but does not guarantee that every program runs twice as fast.
B2
Research-style extension: explain how the width of the address bus affects the amount of memory a processor can address.
B3
Compare registers, cache, main memory and secondary storage as a storage hierarchy. Focus on speed, capacity and purpose.
File this in OneNote under:
Higher Computing Science → Computer Systems → CS6
Teacher notes — not for pupils (Shift+T to toggle)

Timing (120 min double):
5 min — warm up from CS5
8 min — vocabulary and architecture map
12 min — stored-program concept and processor components
15 min — control unit, ALU and registers with mini whiteboard checks
15 min — buses table and memory read flow-pipeline
15 min — worked examples and now-you-try bridge
5 min — common mistakes and exam tip
35 min — Task Set A, with A8/A10 as the main exam-style check
10 min — review or extension task depending on pace

Watch for: pupils treating the CPU as a single magic box. Keep asking "which part?" until they can separate control unit, ALU, registers and buses. The most common bus confusion is writing that the address bus carries data.

Practical demo: Draw a memory table with numbered addresses on the board. Have pupils physically point to where the address, value and read/write signal would travel. It makes the abstract bus vocabulary much less slippery.