School of Computer Science

Module 06-19340 (2011)

Computer Systems & Architecture

Level 2/I

Peter Breuer Semester 2 10 credits
Co-ordinator: Peter Breuer
Reviewer: Achim Jung

The Module Description is a strict subset of this Syllabus Page.


The aims of this module are to:

  • provide an understanding of the fundamental concepts and principles of computer architectures in the context of the von Neumann model
  • introduce the basic components of von Neumann computers, their internal design and operation and their interactions
  • develop an appreciation of how computer hardware supports and interacts with the programming languages and environments that students learn in other modules
  • provide a basic understanding of networking sufficient to support programming involving networks in other modules

Learning Outcomes

On successful completion of this module, the student should be able to:

  • explain and apply the fundamental principles upon which the operation of modern computers is based
  • demonstrate a knowledge of the structure and organization of computer systems, including the role and operation of each of the component modules
  • explain and apply the fundamental concepts and issues involved in the control of peripherals, including interrupt-handling
  • explain the fundamental concepts and issues involved in computer networking, including the need for protocols, addressing and routing
  • Demonstrate a knowledge of the interaction between software and hardware, demonstrating how programs are executed

Teaching methods

Lectures/tutorials: 2 hrs/week


  • Sessional: 1.5 hr examination (80%) amd coursework (20%)
  • Supplementary: 1.5 hr examination (80%) with the coursework mark carried forward (20%)

Detailed Syllabus

  1. Basic concepts
    • Historical Overview
    • Overview of stored program (von Neumann) computer organisation
    • The Instruction Set Architecture; RISC vs CISC
    • The Processor Cycle
    • Measuring and predicting performance; Factors affecting performance.
  2. Inside the CPU
    • Boolean Algebra and Digital Logic
    • The CPU Datapath; Implementing some common datapath elements in digital logic.
    • Pipelining
    • Controlling the CPU
  3. Memory Architecture
    • The Memory Hierachy
    • The Memory Map
    • Caches
  4. I/O and Peripheral Control
    • Buses
    • Memory-mapped I/O
    • Interrupts
    • Direct Memory Access
  5. Hardware/Software Interface
    • What happens during compilation and linking?
    • Generating Code
    • Addressing Modes
  6. Networks
    • Basic Network Topology
    • Network Addressing
    • Routing
    • Network Protocols

Programmes containing this module