GCSE Computer Science

Component 1

1.1 System Architecture


The purpose of the CPU

A CPU is the part of the computer that completes the processing. It can be said to fetch and execute instructions from main memory. This is called the fetch execute cycle.

Sometimes you see the purpose of the CPU written as the "brains" of the computer. Whilst this is a useful way to think about it, it is too simplistic for the exam, and if you write this, you won't get the mark. The purpose of the CPU is to fetch and execute instructions from memory.

CPU fetch execute cycle

Factors that affect the performance of a CPU

Some CPUs are better than others. Factors that affect the speed include:

Clock speed

The number of fetch execute cycles per second.

This is measured in Hz. 2GHz is the same as 2,000,000,000 cycles per second.

Number of cores

Most modern CPUs have more than one CPU core. This is like splitting the CPU up into several mini-CPUs.

The more cores, the more instructions can be processed at once. e.g. a quad core processor has four cores and can process four instructions at once.

Cache

Fetching instructions from memory takes time. A good idea is to put the most commonly used instructions in some super fast memory located on the CPU itself.

This is called cache. The bigger the cache, the more instructions can be stored there, and the faster the CPU will run.


Common CPU components and their function

The CPU has two units that perform tasks.
It has four registers that each have a special purpose and store data and instructions.
Most CPUs also have cache on board to speed up the fetch execute cycle.

CPU Units

  • Control Unit (CU) - Provides control signals so data goes to the place it is supposed to. Controls timing signals including the clock speed. Decodes instructions that are fetched from RAM. Sends signals to memory, the ALU and I/O devices
  • Arithmetic Logic Unit (ALU) - performs any maths (arithmetic) calculations, performs logic calculations (e.g. is x < y).

CPU Registers

See the section on Von Neumann architecture below for the registers you need to know.

CPU Cache

  • L1 Cache - the smallest and fastest cache located inside the CPU. Stores the most commonly used instructions and data.
  • L2 Cache - provides a larger working set for the CPU, allowing it to access frequently used data and instructions that may not fit in the L1 cache. It has higher latency compared to the L1 cache but still offers faster access than the main memory.
  • L3 Cache - the largest but slowest cache. Sometimes it is stored in a separate chip on the motherboard.


Von Neumann architecture

Modern CPUs still follow a design made decades ago by John von Neumann. They have a series of registers which are small storage locations on the CPU. These registers are used in the fetch execute cycle.

The Program Counter (PC)

  • stores the memory address of the next instruction to be fetched from RAM.
  • copies its value (which is a memory address) to the MAR.
  • gets incremented by 1 (1 is added to it) so that it points to the next instruction.

The Memory Address Register (MAR)

  • receives a memory address from the PC.
  • stores the memory address before it is sent along the address bus so a correct location in RAM can be found.

The Memory Data Register (MDR)

  • the instruction and data is sent along the data bus and stored in the MDR.
  • stores data before it is sent along the data bus in a store instruction.

Accumulator

  • the instruction and data is sent along the data bus and stored in the MDR.
  • when the instruction is executed the results are stored here. Holds a running total of the operation currently happening.

fetch execute animation

Embedded systems

An embedded system is a computer that is wholly contained within another device. However, it still has all the features of the other computers that you have studied, e.g. it fetches and executes instructions from RAM.
Examples:

  • Microwave
  • Plane
  • Washing machine