CPU Components & Von Neumann Architecture
Everything you need to know for your GCSE exam
π Contents
1. CPU Components
The CPU (Central Processing Unit) is the "brain" of the computer. It contains four main components that you need to know:
ALU (Arithmetic Logic Unit)
What it does: Performs all calculations and comparisons
The ALU handles two types of operations:
Arithmetic Operations
- Addition (+)
- Subtraction (-)
- Multiplication (Γ)
- Division (Γ·)
Logical Operations
- AND
- OR
- NOT
- Comparisons (>, <, =)
CU (Control Unit)
What it does: Controls and coordinates all CPU operations
The Control Unit is like a conductor in an orchestra - it doesn't play instruments (do calculations) but tells everyone else what to do and when.
- Fetches instructions from memory
- Decodes instructions (works out what they mean)
- Controls timing and data flow
- Sends signals to other components
Cache
What it does: Provides fast storage for frequently used data
Cache is small, fast memory inside the CPU. It stores copies of data and instructions that are used frequently.
- Cache is faster than RAM but smaller
- CPU checks cache first before going to slower RAM
- Cache hit = data found in cache (fast!)
- Cache miss = data not in cache, must get from RAM (slower)
Registers
What they do: Store small amounts of data being processed
Registers are tiny, super-fast storage locations inside the CPU.
- The fastest type of memory
- Very small (typically 32 or 64 bits each)
- Different registers have specific purposes
- Some store addresses, some store data
2. Von Neumann Architecture
Most modern computers use Von Neumann architecture, named after mathematician John von Neumann who described it in 1945.
Components of Von Neumann Architecture
- CPU - with Control Unit and ALU
- Memory (RAM) - stores BOTH programs AND data
- Input devices - keyboard, mouse, etc.
- Output devices - monitor, printer, etc.
- Bus system - connects everything together
3. The Four Key Registers
You MUST know these four registers for OCR J277:
| Register | Full Name | Purpose | Stores |
|---|---|---|---|
| PC | Program Counter | Holds the address of the NEXT instruction to be fetched | ADDRESS |
| MAR | Memory Address Register | Holds the address of the memory location being accessed NOW | ADDRESS |
| MDR | Memory Data Register | Holds the data that has been fetched from (or is being written to) memory | DATA |
| ACC | Accumulator | Stores the results of calculations from the ALU | DATA |
4. Data vs Address - The Key Difference
This is a crucial distinction for your exam. You must know which registers store data and which store addresses.
π ADDRESS
A location in memory
Like a house number - tells you WHERE something is
Registers: PC, MAR
Example: 100, 101, 256
π¦ DATA
The actual content stored
Like who lives in the house - the ACTUAL information
Registers: MDR, ACC
Example: "ADD 5", 42, "Hello"
Quick Memory Aid
- PC = "Where am I going next?" β ADDRESS
- MAR = "Where am I looking now?" β ADDRESS (has "Address" in the name!)
- MDR = "What did I find there?" β DATA (has "Data" in the name!)
- ACC = "What's my answer?" β DATA
5. The Fetch-Execute Cycle
Every instruction goes through this cycle. Learn what happens at each stage and which registers change.
π FETCH Stage
Purpose: Get the next instruction from memory
-
PC β MAR
The address in the Program Counter is copied to the Memory Address Register
MAR = PC -
MAR sends address to RAM
The address is sent via the address bus to RAM -
RAM β MDR
The instruction at that address is sent via the data bus to MDR
MDR = [contents of that address] -
PC increments
The Program Counter increases by 1, ready for the next instruction
PC = PC + 1
π DECODE Stage
Purpose: Work out what the instruction means
-
Instruction sent to Control Unit
The instruction in MDR is passed to the Control Unit -
CU decodes the instruction
The Control Unit works out what operation is needed -
CU prepares control signals
Control signals are prepared for the execute stage
β‘ EXECUTE Stage
Purpose: Carry out the instruction
What happens depends on the instruction type:
Example: LDA 200 (Load from address 200)
- Address 200 is placed in MAR
- Data at address 200 is fetched to MDR
- Data is copied from MDR to ACC
Example: ADD 150 (Add value from address 150)
- Address 150 is placed in MAR
- Data at address 150 is fetched to MDR
- ALU adds MDR value to ACC
- Result stored back in ACC
6. Summary & Exam Checklist
β What You Need to Know
- β ALU - performs arithmetic AND logical operations
- β Control Unit - fetches, decodes, coordinates
- β Cache - fast memory for frequently used data
- β Registers - tiny, fast storage in CPU
- β PC stores ADDRESS of NEXT instruction
- β MAR stores ADDRESS being accessed
- β MDR stores DATA being transferred
- β ACC stores DATA (calculation results)
- β FETCH: PCβMAR, RAMβMDR, PC++
- β DECODE: CU interprets instruction
- β EXECUTE: Instruction carried out (may use ALU)
- β PC and MAR store ADDRESSES
- β MDR and ACC store DATA