Skip to content
Skip to main content

Computer Architecture Fundamentals: Functional Hardware Taxonomy

SS1 Term 1 • Week 1
About 45 minutes
Learning goals: Deconstruct the fundamental functional units of computer architecture based on the Von Neumann model. • Explain the roles of the Input Unit, Central Processing Unit (ALU and Control Unit), Memory Unit, and Output Unit. • Distinguish between general-purpose microcomputers and embedded microcontrollers used in automation. • Analyze the flow of control signals, data, and memory addresses across system buses.

Welcome to Senior Secondary Computer Studies! In Junior Secondary school, you mastered software tools, studied basic logic gates, and explored algorithms.

Now, in SS 1, we enter Computer Engineering and System Architecture. When you open the chassis of a high-performance computer or examine the circuit board of a drone, you are looking at one of humanity's greatest intellectual achievements: millions of microscopic electronic components operating in absolute synchronization at billions of cycles per second.

In this lesson, we begin with the foundational theoretical blueprint of modern computing: the Von Neumann Architecture, analyze the Tri-Bus System, and distinguish between microprocessors and embedded microcontrollers.


Learning Outcomes

By the end of this lesson, you will be able to:

  1. Explain the principles of the Von Neumann Stored-Program Architecture.
  2. Identify the functional units: Input Unit, Central Processing Unit (ALU & CU), Primary Memory Unit, and Output Unit.
  3. Analyze the Tri-Bus System: Address Bus, Data Bus, and Control Bus.
  4. Compare Microprocessors (general-purpose PCs) with Microcontrollers (embedded physical computing).

Key Vocabulary

Term Technical Definition
Computer Architecture The conceptual design and fundamental operational structure of a computer system.
Von Neumann Architecture A theoretical design where program instructions and data share a common primary memory storage.
System Bus A shared set of parallel physical conductors carrying digital electrical signals between computer components.
Data Bus A bidirectional bus carrying actual data and instructions between CPU, memory, and I/O.
Address Bus A unidirectional bus carrying memory addresses from the CPU to RAM and peripherals.
Control Bus Carries operational timing and synchronization signals (Read/Write, Clock, Interrupts).

The Von Neumann System Architecture

In 1945, the mathematician and physicist John von Neumann published a first-draft report proposing a revolutionary concept: instead of rewiring a computer with physical patch cables every time you wanted to run a different calculation, both the program instructions and the data should be stored electronically in the same memory!

+-------------------------------------------------------------------------+
|                    THE VON NEUMANN ARCHITECTURE                         |
+-------------------------------------------------------------------------+
|                                                                         |
|  +--------------------+                     +------------------------+  |
|  |     INPUT UNIT     |                     |      OUTPUT UNIT       |  |
|  | (Keyboard, Scanner)|                     |   (Monitor, Printer)   |  |
|  +--------------------+                     +------------------------+  |
|            |                                             ^              |
|            |                                             |              |
|            v                                             |              |
|  +-------------------------------------------------------------------+  |
|  |                  CENTRAL PROCESSING UNIT (CPU)                    |  |
|  |                                                                   |  |
|  |   +-----------------------+           +-----------------------+   |  |
|  |   |     CONTROL UNIT      | <=======> |   ARITHMETIC LOGIC    |   |  |
|  |   |         (CU)          |           |       UNIT (ALU)      |   |  |
|  |   +-----------------------+           +-----------------------+   |  |
|  |               ^                                   ^               |  |
|  |               |                                   |               |  |
|  |               v                                   v               |  |
|  |   +-----------------------------------------------------------+   |  |
|  |   |             INTERNAL REGISTERS & ACCUMULATOR              |   |  |
|  |   +-----------------------------------------------------------+   |  |
|  +-------------------------------------------------------------------+  |
|                                  ^                                      |
|                                  | (Tri-Bus System)                     |
|                                  v                                      |
|  +-------------------------------------------------------------------+  |
|  |                      PRIMARY MEMORY (RAM)                         |  |
|  |       [ Unified Address Space: Instructions AND Data ]            |  |
|  +-------------------------------------------------------------------+  |
+-------------------------------------------------------------------------+

Study Notes: The Tri-Bus Communication Highway

The CPU cannot connect a separate wire to every single transistor in RAM; that would require billions of wires! Instead, components communicate over a shared highway called the System Bus, consisting of three distinct functional channels:

[ CPU ]  ================== DATA BUS (Bidirectional) ===================  [ RAM / I/O ]
[ CPU ]  ----------------- ADDRESS BUS (Unidirectional) ---------------->  [ RAM / I/O ]
[ CPU ]  <----------------- CONTROL BUS (Bidirectional) ---------------->  [ RAM / I/O ]

1. The Data Bus (Bidirectional)

  • Carries the actual binary data (numbers, characters, pixels) and program instructions.
  • It is bidirectional: data can flow from RAM into the CPU (Reading), or from the CPU into RAM (Writing).
  • Bus Width: A 64-bit data bus has 64 parallel physical electrical lines, meaning it can transfer 64 bits (8 bytes) of information in a single clock cycle!

2. The Address Bus (Unidirectional)

  • Specifies the exact physical memory location (address) in RAM where data should be read from or written to.
  • It is unidirectional: only the CPU generates memory addresses.
  • Addressability: If an address bus has 32 lines, it can address $2^{32} = 4,294,967,296$ unique byte addresses ($4\text{ Gigabytes}$ of RAM). A 64-bit address bus can address $2^{64}$ bytes—an astronomical 16 Exabytes of memory!

3. The Control Bus (Bidirectional)

  • Coordinates and synchronizes system activities:
  • Memory Read / Memory Write signals.
  • I/O Read / I/O Write signals.
  • Clock Pulses (synchronizing component timing).
  • Hardware Interrupts (e.g., keyboard notifying the CPU that a key was pressed).

Microprocessors vs. Embedded Microcontrollers

Feature Microprocessor (MPU) Microcontroller (MCU)
Core Architecture Standalone CPU chip only Single-chip system (CPU + RAM + Flash ROM + I/O)
External Needs Requires external RAM, SSD, and chipset Operates independently with minimal external parts
Power Consumption High (15W to 125W) Ultra-low (milliwatts or microwatts)
Typical Role General-purpose computing (PCs, servers) Dedicated hardware control (smart meters, robotics)
Examples Intel Core i7, AMD Ryzen, Apple M3 ATmega328P (Arduino), ESP32, STM32

Worked Example: Tracing a Memory Read Operation

Task: The CPU needs to read the contents of RAM memory address 0x004F.

  1. Step 1: The Control Unit places the binary address 0000 0000 0100 1111 onto the Address Bus.
  2. Step 2: The CU asserts the Memory Read control line on the Control Bus.
  3. Step 3: The RAM memory controller decodes the address, locates memory row 0x004F, and copies its 64-bit contents onto the Data Bus.
  4. Step 4: The CPU reads the data from the Data Bus into its internal Memory Data Register (MDR) and releases the bus.

Practical Class Activity: Calculating Address Bus Capacity

Solve these two problems in your notebook:

  1. Problem 1: A retro gaming microcontroller has an 8-bit address bus. How many unique memory bytes can it address?

$$\text{Capacity} = 2^8 = 256\text{ bytes}$$

  1. Problem 2: An industrial control processor has a 16-bit address bus. How many bytes can it address?

$$\text{Capacity} = 2^{16} = 65,536\text{ bytes} = 64\text{ Kilobytes (KB)}$$


Common Mistakes & Corrections

Common Mistake Why It Is Incorrect Proper Correction
"Data flows on the Address Bus." The address bus only carries memory address numbers, never actual user data. The Address Bus specifies where; the Data Bus carries what.
"A 64-bit computer is twice as fast as a 32-bit computer." 64-bit refers to bus width and integer word size, not raw clock frequency. 64-bit architectures process larger numbers per cycle and address vastly more RAM.

Notebook Summary

Copy Into Your Computing Notebook

  • Von Neumann Architecture: Stored-program concept where instructions and data share unified memory.
  • Data Bus (Bidirectional): Carries actual data and instructions.
  • Address Bus (Unidirectional): Carries memory address locations from the CPU.
  • Control Bus: Transmits timing, read/write, and interrupt synchronization signals.
  • Microprocessors (MPU) power versatile PCs; Microcontrollers (MCU) power dedicated embedded devices.

Check your understanding

Which foundational 1945 architectural model describes a computer where program instructions and data share the same unified memory address space?
What is the primary difference between a general-purpose Microprocessor and an Embedded Microcontroller (MCU)?
Which system bus is UNIDIRECTIONAL (signals travel in one direction only: from the CPU outward to memory and peripherals)?
What unit of measurement represents the width of a computer's Data Bus (e.g., 32-bit or 64-bit)?
Feedback appears after you check your answer.