Skip to navigation | Skip to main content | Skip to footer
Menu
Menu

COMP25212 System Architecture syllabus 2019-2020

COMP25212 materials

COMP25212 System Architecture

Level 2
Credits: 10
Enrolled students: 73

Course leader: Antoniu Pop


Additional staff: view all staff

Requisites

  • Pre-Requisite (Compulsory): COMP15111
  • Pre-Requisite (Compulsory): COMP25111

Additional requirements

  • Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.

Assessment methods

  • 80% Written exam
  • 20% Practical skills assessment
Timetable
SemesterEventLocationDayTimeGroup
Sem 2 Lecture Chemistry G.54 Mon 13:00 - 14:00 -
Sem 2 Lecture Simon 3.44A Tue 17:00 - 18:00 -
Sem 2 B Lab G23 Wed 09:00 - 11:00 G
Sem 2 B Lab Tootill (0 + 1) Fri 12:00 - 14:00 F
Themes to which this unit belongs
  • Computer Architecture

Overview

The basic architecture of computer systems has been covered in first year course units which detailed both the instruction set architecture and the micro-architecture (hardware structure) of simple processors. Although these principle underlie the vast majority of modern computers, there are a wide range of both hardware and software techniques which are employed to increase the performance, reliability and flexibility of systems.

Aims

The aims of this course are to introduce the most important system architecture approaches. To give a wider understanding of how real systems operate and, from that understanding, the ability to optimise their use.

Syllabus

Introduction

The motivation behind advanced architectural techniques.

Caching

The need to overcome latency. Caching as a principle, examples of caching in practice. Processor cache structure and operation.

Pipelining

Principles of pipelining. Implementation of a processor pipeline and its properties. Pipelining requirements and limitations. Additional support for pipelining.

Multi-Threading

Basic multi-threading principles. Processor support for multi-threading. Simultaneous multi-threading.

Multi-Core

Motivation for multi-core. Possible multi-core structures. Cache coherence.

File System Support

Implementation of file systems. RAID

Virtual Machines

Motivation for Virtual Machines. Language Virtual Machines. System Virtual Machines. Virtual Machine implementation. Binary Translation

Study hours

  • Assessment written exam (2 hours)
  • Lectures (22 hours)
  • Practical classes & workshops (12 hours)

Learning outcomes

On successful completion of this unit, a student will be able to:

  • describe the techniques which are employed in modern computing systems to increase performance, reliability and flexibility.
  • compare the strengths and weaknesses of different system architectures.
  • explain how and predict to which extent such techniques impact the performance, reliability and flexibility of computing systems.
  • identify suitable system architectures for a given set of system requirements.

Reading list

TitleAuthorISBNPublisherYearCore
Computer organization and design: the hardware/software interface (5th edition)Patterson, David A. and John L. Hennessy9780124077263Elsevier2014
Virtual machines: versatile platforms for systems and processesSmith, Jim and Ravi Nair9781558609105Morgan Kaufmann2005

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.