The descriptions are for modules currently being taught. They should be viewed as an example of the modules we provide. All modules are subject to change for later academic years.

Introduction to Computer Architectures (ICAR) 2015/6

Workload - Private Study - Assessment - Description - Aims - Learning Outcomes - Content - Teaching Materials - Recommended Books

Module Code COM00001C
Lecturers Mike Freeman
Taken By CS 1, CS/Math 1, CS/Phil 1, CSESE 1, CSYS 1, MEng CS 1, MEng CS/Phil 1, MEng CSAI 1, MEng CSESE 1, MEng CSYS 1, MMath 1
Number of Credits 15
Teaching Autumn 2-10, Spring 2-10, Summer 1-4
Closed Assessment [75%] Closed Exam Summer 5-7, 2.00 hours
Open Assessment Introduction to Computer Architectures - Architecture Design [25%]
4th Nov → 20th Jan
Feedback: 17th Feb
Reassessment [100%] Closed Exam - August Resit Week, 2.00 hours


  • Lectures: 28 x 1hr
  • Labs: 18 x 2hrs
  • Problem Classes: 4 x 2hrs
  • Private Study: 48hrs
  • Assessment: 30 x 1hr

Private Study

Laboratory scripts contain additional tasks and private study exercises to be completed outside allocated laboratory sessions


Closed Assessment

  • Closed Exam Summer 5-7, 2.00 hours

Open Assessment

Technical report describing a selected computer's architecture. Open assessment code to be submitted electronically and report to come in hard copy to Reception on due date.

Formative Feedback

Model answers and solutions to exercise sheets and laboratory sessions


Teaching is based around the detailed analysis and discussion of a series of selected historical computer case studies, with supporting laboratory sessions allowing the students to investigate and program these machines through the use of software simulators. The teaching philosophy taken is not just to present the factual information and the specifications of these machines, but to go beyond this, to look at the design and decision making processes involved in their development and consider 'what if' scenarios to enhance their performance. Through the use of these case studies a student will develop a greater understanding of the technical issues involved, linking the problems faced by these early computer pioneers to those found in the design, implementation and application of modern day processors and their commercial and economic issues.


The aim of this module is to understand the key architectural components of a computer system and the ways that these are constructed in hardware.

Learning Outcomes

  • Explain the concepts of an instruction, algorithm and a program and evaluate their requirements and suitability for a specified computer architecture.
  • Demonstrate how information can be represented using different number bases and their suitability for a given technology.
  • Describe the three main architectural components of a computer: control, data processing and memory, their interactions and how concurrency within these components can be used to improve processing performance.
  • Describe a solution to a simple problem in terms of an algorithm and demonstrate how this can be converted into an assembly language program.
  • Design a simple computer architecture from basic building blocks i.e. CPU, Memory, IO / Peripheral devices and system buses. Analyse its performance in terms of cost, complexity and processing speed.


This module is based around detailed analysis and discussion of a series of case studies and computer simulators:

  • Difference & Analytical engines
  • Z3
  • PicoBlaze
  • CPUSim
  • VAX 11/780
  • DLX
Laboratory sessions allow students to write assembly language 'programs' and investigate architectural elements. Examines technologies used and design decisions made in the development of different computer architectures.

Aims to provide the student with a broad introduction to the fundamentals of computer systems, focusing on the architectural elements within computers past and present, raising each student's knowledge within this field to a comparable level.

Teaching Materials

Lecture slides, notes and laboratory scripts

Recommended Books

Rating Author Title Publisher Year
*** J.Hennessy, D.Patterson Computer Architecture: A Quantitative Approach (2nd Edition) Morgan Kaufmannn 1990
*** W.Stallings Computer Organization and Architecture: Design For Performance (8th Edition) Pearson 2010
Back to top

Last updated: 19th September 2016