⚙️ A Level · Chapter 15

Hardware & Virtual Machines

RISC/CISC · Parallel Architectures · Boolean Algebra · Karnaugh Maps


🧠 15.1 Processors, Parallel Processing & Virtual Machines
RISC vs CISC
FeatureRISC (Reduced Instruction Set)CISC (Complex Instruction Set)
InstructionsSmall, simple set (~100)Large, complex set (hundreds)
Clock cycles per instr.Usually 1Multiple (1–20+)
RegistersMany general-purpose registersFewer registers
Memory accessLoad/Store only (register-based ops)Instructions can access memory directly
Pipelining✅ Highly efficient⚠️ Harder due to variable instruction length
Compiler complexityHigher — more instructions neededLower — single instruction does more
ExamplesARM (mobile chips), MIPSIntel x86, AMD
Pipelining in RISC

RISC processors achieve speed through pipelining — while one instruction is being executed, the next is being decoded, and the one after that is being fetched. Multiple instructions in flight simultaneously.

FETCH
Instr 1
DECODE
Instr 1
EXECUTE
Instr 1
WRITE
Instr 1
FETCH
Instr 2
DECODE
Instr 2
EXECUTE
Instr 2
WRITE
Instr 2
Pipeline hazard
If an instruction depends on the result of the previous one, pipelining stalls — this is a data hazard. RISC processors use extra registers and compiler optimisation to minimise this.
Four Parallel Architectures (Flynn’s Taxonomy)

SISD — Single Instruction, Single Data

Classic sequential processor. One instruction at a time on one data stream. Traditional Von Neumann architecture.

SIMD — Single Instruction, Multiple Data

Same operation applied to multiple data items simultaneously. Great for graphics, audio processing, AI matrix operations.

MISD — Multiple Instruction, Single Data

Multiple processors each run different instructions on the same data stream. Rare — used in fault-tolerant systems (e.g. flight control computers running redundant checks).

MIMD — Multiple Instruction, Multiple Data

Multiple processors, each with their own instructions and data. Most modern multi-core CPUs. Most flexible parallel architecture.

Virtual Machines
🖥️ Applications / Guest OS
💻 Virtual Machine (emulated hardware)
🔧 Hypervisor (VMM)
⚙️ Physical Hardware
What is a VM?
A virtual machine is software that emulates a complete computer system. It runs on a hypervisor which manages access to the real hardware. The guest OS believes it is running on real hardware.

✅ Benefits of VMs

  • Run multiple OS on one machine
  • Isolation — crash in VM doesn’t affect host
  • Testing software safely
  • Cloud computing infrastructure
  • Easy backup (snapshot the VM)

❌ Limitations of VMs

  • Performance overhead vs bare metal
  • Requires significant RAM/storage
  • Hardware access may be limited or emulated

🔣 15.2 Boolean Algebra & Logic Circuits
Adder Circuits

Adds two bits A and B. Outputs: Sum and Carry.

Sum = A XOR B Carry = A AND B
ABSumCarry
0000
0110
1010
1101

A full adder adds bits A, B, and a Carry-In (Cin) from the previous stage. Used to build multi-bit adders.

Sum = A XOR B XOR Cin Cout = (A AND B) OR (Cin AND (A XOR B))
Built from two half adders
Full Adder = Half Adder(A,B) → Sum₁, C₁
then Half Adder(Sum₁, Cin) → Sum, C₂
Final Carry = C₁ OR C₂
Flip-Flops (Data Storage Elements)

Flip-flops are circuits that store a single bit. They are the building blocks of registers and RAM.

Two inputs: S (Set) and R (Reset). Output: Q (and Q̄).

SRQ (next)State
00Q (unchanged)Hold
101Set
010Reset
11INVALID⚠️ Forbidden
Why S=1, R=1 is forbidden
Both outputs would be forced to the same value, violating Q̄ = NOT Q. The circuit enters an unpredictable state.
JKQ (next)State
00Q (unchanged)Hold
101Set
010Reset
11NOT Q✅ Toggle!

J=1, K=1 now means toggle — output flips. This eliminates the forbidden state and makes the JK flip-flop the most commonly used type.

De Morgan’s Laws

De Morgan’s laws let you simplify or transform Boolean expressions by swapping AND/OR and inverting:

Law 1

NOT(A AND B) = NOT A OR NOT B ¬(A · B) = ¬A + ¬B NAND gate = NOT(A AND B)

Law 2

NOT(A OR B) = NOT A AND NOT B ¬(A + B) = ¬A · ¬B NOR gate = NOT(A OR B)
Memory trick
“Break the bar, change the operator.” When you split a negation bar over two variables, flip AND ↔ OR between them.
Karnaugh Maps (K-Maps)

A K-map is a visual tool for simplifying Boolean expressions. You group 1s in powers of 2 to eliminate variables.

Given: F(A,B,C) = Σm(1,3,5,7) — minterms where F=1

BC AB 00 01 11 10 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | Groups: Column 01 (BC=01): A=0,B=0 and A=1,B=0 → eliminates A Column 11 (BC=11): same → eliminates A Both columns: B=0,C=1 in all 4 cells → simplified term = C Simplified: F = C
K-map rules
  • Groups must be 1, 2, 4, or 8 cells (powers of 2)
  • Groups must be rectangular (can wrap around edges)
  • Use the largest possible groups
  • Each 1 must be in at least one group
  • Each variable that changes within a group is eliminated
⚡ Exam Essentials
  • Know RISC vs CISC differences — especially pipelining advantage
  • Name and describe all 4 Flynn architectures with examples
  • Draw truth tables for half adder and full adder
  • SR vs JK flip-flop — know the forbidden state fix
  • Apply De Morgan’s laws to simplify expressions
  • Solve 2-variable and 3-variable K-maps
  • State benefits AND limitations of virtual machines

📓 Other Notes:

Chapter 13: Data Representation Chapter 14: Communication & Internet Chapter 16: System Software Chapter 17: Security Chapter 18: Artificial Intelligence

📋 9618/4 Detailed Exam Guide →

Scroll to Top