1. System Fundamentals

Computer Architecture

Computer Architecture

students, when you tap an app, stream a video, or save a file, a computer is doing a huge number of tiny actions very quickly âš¡. The design that makes those actions possible is called computer architecture. In IB Computer Science HL, this topic helps you understand how the main parts of a computer work together, how data moves through the system, and why some computers are faster or more efficient than others.

Objectives for this lesson:

  • Explain the main ideas and terminology behind computer architecture.
  • Apply IB-style reasoning to common architecture examples.
  • Connect computer architecture to the wider theme of System Fundamentals.
  • Summarize how architecture affects performance, reliability, and system use.
  • Use evidence and examples to support explanations.

This lesson will focus on the structure of a computer system, the role of the CPU, memory, buses, and how performance is measured. By the end, students, you should be able to explain not just what each part does, but why the design matters in real life 📱💻.

What Computer Architecture Means

Computer architecture describes the way a computer is organized and how its parts work together. It includes both the hardware structure and the design choices that affect performance. A useful way to think about it is to imagine a school building: classrooms, hallways, doors, and staff all need to be arranged so students can move and learn efficiently. In a computer, the CPU, memory, storage, and input/output devices must also be arranged so data can move efficiently.

The most important idea in computer architecture is that a computer is a system. A system is made of parts that interact. If one part is slow or limited, the whole system can be affected. For example, a powerful CPU may still perform poorly if it has very little RAM available.

Key terminology you should know includes:

  • CPU: Central Processing Unit, the main processor.
  • ALU: Arithmetic Logic Unit, which handles arithmetic and logical operations.
  • Control Unit: Coordinates operations inside the CPU.
  • Registers: Very small, very fast storage locations inside the CPU.
  • Main memory: Usually RAM, used for programs and data currently in use.
  • Secondary storage: Long-term storage such as SSDs or hard drives.
  • Bus: A pathway that carries data, addresses, and control signals between components.

These terms appear often in IB questions because they describe the basic structure of a computer and explain how it functions as a whole.

The Von Neumann Model and the CPU

Many computers are based on the Von Neumann architecture, a model where program instructions and data are stored in the same main memory. This is important because the CPU fetches both instructions and data from memory through the same general structure. The model includes the CPU, main memory, input, output, and storage.

The CPU usually performs the fetch–decode–execute cycle:

  1. Fetch: An instruction is copied from main memory into the CPU.
  2. Decode: The control unit interprets the instruction.
  3. Execute: The CPU carries out the instruction.
  4. Store: Results may be written back to a register or memory.

Example: if a calculator app adds $7$ and $5$, the CPU fetches the instruction, decodes it as addition, executes the operation in the ALU, and stores the result $12$.

A common IB point is that the CPU does not work on every instruction at the same speed. Accessing registers is much faster than accessing RAM. That is why CPUs use caches and registers to reduce delays. A cache is a small, fast memory close to the CPU that stores frequently used data and instructions.

A key limitation of the Von Neumann model is the Von Neumann bottleneck. Because instructions and data share the same pathway to the CPU, the speed of the system can be limited by how quickly information can move between memory and processor. If the CPU is very fast but memory access is slow, the CPU may spend time waiting instead of working.

Memory, Storage, and Data Movement

Computer architecture is not only about processing; it is also about how information is stored and moved. Memory is often described in levels, from fastest and smallest to slowest and largest:

  • Registers: inside the CPU, extremely fast, very small.
  • Cache: fast, small, and used to reduce memory access time.
  • RAM: main memory, larger but slower than cache.
  • Secondary storage: much larger, but slower than RAM.

RAM is volatile, which means it loses its contents when the power is turned off. SSDs and hard drives are non-volatile, so they keep data without power. This is why you can shut down a laptop and still find your files later.

Data movement depends heavily on the bus system. The three main buses are:

  • Data bus: carries actual data.
  • Address bus: carries the location of data or instructions.
  • Control bus: carries control signals such as read and write commands.

If the address bus is wide, it can access more memory locations. For example, with $n$ address lines, the number of unique addresses is $2^n$. This is a useful mathematical link in computer architecture because the width of the address bus affects the amount of memory a system can directly address.

Example: if a system has $8$ address lines, it can address $2^8 = 256$ locations. If it has $16$ address lines, it can address $2^{16} = 65,536$ locations. This helps explain why older computers had much smaller memory limits than modern ones.

Performance and Why Architecture Matters

Computer architecture strongly affects performance. Performance means how quickly and efficiently a computer completes tasks. Several factors influence it:

  • Clock speed: measured in hertz, showing how many cycles the CPU can perform per second.
  • Number of cores: multiple cores can process more tasks at once.
  • Cache size: a larger cache can reduce the time needed to fetch frequently used data.
  • Bus width: wider buses can transfer more data at once.
  • Word size: the number of bits a CPU can process at one time, such as $32$-bit or $64$-bit.

A higher clock speed does not automatically mean better real-world performance. A slower CPU with better cache, more cores, or better architecture may perform better in everyday use. For example, a gaming laptop may have a fast processor and dedicated graphics hardware to handle demanding tasks, while a basic school laptop may focus on low power use and battery life.

Performance can also be affected by the bottleneck principle. A bottleneck is the slowest part of a system that limits overall performance. If a computer has a very fast CPU but slow storage, loading large programs will still take time. If a network connection is weak, even a powerful computer can struggle when streaming or cloud syncing.

IB-style reasoning often asks you to compare two systems. A strong answer should mention the task being performed. For example, a computer with more RAM is helpful for editing large videos because it can keep more data ready for processing. A computer with a better CPU may be better for compiling code or running calculations.

Connections to System Fundamentals

Computer architecture fits directly into System Fundamentals because it explains how the parts of a computer system are organized and how they work together. It also connects to the broader idea of system architecture and operation.

Here are some important links:

  • Data representation: the CPU processes binary data, so understanding bits and bytes supports understanding architecture.
  • Computer performance: architecture affects speed, responsiveness, and efficiency.
  • System management: operating systems manage resources like memory, processes, and I/O devices to make the hardware work effectively.
  • Ethics and social impact: architecture choices affect energy use, device lifespan, cost, and access to technology.

For example, a low-power chip in a tablet may be designed to save battery and reduce heat 🔋. A high-performance desktop processor may use more electricity but support demanding professional tasks. These are architectural trade-offs.

Another important connection is that the operating system depends on hardware architecture. The OS schedules processes, manages memory, and controls devices, but it must do so within the limits of the CPU, memory size, and input/output design.

Real-World Example: Smartphone vs Desktop

A smartphone and a desktop computer both follow basic computer architecture ideas, but their designs are different because their goals are different.

A smartphone usually prioritizes:

  • low power consumption,
  • compact size,
  • heat control,
  • integrated components.

A desktop often prioritizes:

  • higher performance,
  • upgradeability,
  • larger memory and storage options,
  • stronger cooling systems.

For instance, a smartphone may use a system-on-chip, where the CPU, GPU, and other components are combined in one chip. This reduces size and power use. A desktop may have separate components, making upgrades easier and allowing more power. Both are valid architectural choices, but each is suited to different tasks.

students, when IB asks for an application question, try to link the design to the use case. If the question is about a tablet used by a student, mention portability, battery life, and enough processing power for notes, browsing, and video lessons. If the question is about a video editor, mention fast CPU processing, large RAM, and fast storage.

Conclusion

Computer architecture is the foundation that explains how a computer’s hardware is arranged and how it operates. It includes the CPU, memory, buses, and storage, as well as concepts such as the fetch–decode–execute cycle and the Von Neumann model. Understanding architecture helps you explain performance, identify bottlenecks, and compare different systems logically.

In IB Computer Science HL, this topic matters because it connects directly to System Fundamentals. It supports later ideas in data representation, performance, and system management. Most importantly, it helps you understand why computers behave the way they do in real situations. When you can describe the architecture of a system clearly, you can make stronger, more accurate answers in exams and real-world computing discussions.

Study Notes

  • Computer architecture is the way computer hardware is organized and how its parts work together.
  • A computer is a system, so one slow component can limit the whole machine.
  • The CPU includes the ALU and control unit, and it works with registers for very fast storage.
  • The fetch–decode–execute cycle describes how the CPU processes instructions.
  • The Von Neumann model stores instructions and data in the same main memory.
  • The Von Neumann bottleneck happens when data transfer between memory and CPU slows the system.
  • Memory hierarchy goes from registers to cache to RAM to secondary storage.
  • RAM is volatile; secondary storage is non-volatile.
  • The data bus, address bus, and control bus move data, addresses, and signals.
  • If there are $n$ address lines, a system can address $2^n$ locations.
  • Performance depends on clock speed, cores, cache size, bus width, and word size.
  • A bottleneck is the part of a system that limits overall performance.
  • Architecture choices depend on purpose, such as battery life, speed, cost, or portability.
  • Computer architecture connects directly to System Fundamentals, performance, and system management.

Practice Quiz

5 questions to test your understanding

Computer Architecture — IB Computer Science HL | A-Warded