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

This is an archived syllabus from 2013-2014

COMP15111 Fundamentals of Computer Architecture syllabus 2013-2014

COMP15111 Fundamentals of Computer Architecture

Level 1
Credits: 10
Enrolled students: 198

Course leader: Javier Navaridas-Palma

Additional staff: view all staff


  • Co-Requisite (Compulsory): COMP16121

Assessment methods

  • 75% Written exam
  • 25% Practical skills assessment
Sem 1 Lecture 1.1 Thu 10:00 - 10:00 -
Sem 1 Lecture 1.1 Mon 15:00 - 15:00 -
Sem 1 B Lab LF31 Wed 09:00 - 09:00 A+Z
Sem 1 B Lab G23 Mon 10:00 - 10:00 W
Sem 1 B Lab LF31 Tue 10:00 - 10:00 Y
Sem 1 B Lab G23 Tue 13:00 - 13:00 X
Sem 1 A w3+ Examples IT407 Wed 10:00 - 10:00 Y
Sem 1 A w3+ Examples LF15 Tue 11:00 - 11:00 A+Z
Sem 1 A w3+ Examples LF15 Fri 12:00 - 12:00 X
Sem 1 A w3+ Examples LF15 Fri 13:00 - 13:00 W


The module introduces the concepts involved in Fundamentals of Computer Architecture. Its aim is to enable the student to develop the skills required to comprehend Computer Systems, be they terminology, models, methodologies, structures (or topologies), timing, number representation and a general introduction to basic computer systems.
This unit builds on the skills developed in your background, covering material that will enable students to comprehend basic computer architecture structures, programming, and topologies. In particular, students will be able to comprehend the basic of computer systems.
[Knowledge of] Fundamentals of Computer Architecture is becoming increasingly important in business and finance. They are applicable to problems which have been considered mainstream computing. Students should not complete a course in computing (computer science) without some exposure to the subject. Since research is taking place in this subject within the school it is also appropriate that such expertise is passed on to our students.
The aim of this module is to introduce the concepts behind the Fundamentals of Computer Architecture approach to implementing IT solutions. A broad variety of standard Computer Systems methodologies and theories will be introduced. The theory, techniques, and methodologies will be illustrated to enable students to comprehend the theory. The associated areas of computer hardware and topology of computer systems are also covered to some degree.
To be more specific, the course covers:
Understand the basic Von Neumann/Imperative computational model.
Understand the binary nature of digital computers, and how bit patterns can be used to represent such things as characters, numbers and instructions.
Understand the essentials of the ARM instruction set and its registers.
Be able to understand the basics of assembly language programs.
Understand the correspondence between imperative code & data and assembly language.
Be aware of the role of Compiler, Assembler, Library, Linker, Loader, Interpreter and Operating System, and of some of the interactions between these and the underlying computer hardware.

Key and Cognitive skills:
The key and cognitive skills which the student may be able to develop during the module:
The module will expand the student's vocabulary with respect to the technical terminology and understanding of methodologies utilised associated to Fundamentals of Computer Architecture, this will enable the student to extend his/her communication skills.
The student will be empowered to learn by utilising multi-format lectures, and Self-study-learning techniques. The majority of the module is presented through a set of lectures . Each lecture has a set of associated questions (i.e. at the end of each lecture hand-out), which are supported by answers provided on the web (normally two weeks after the lecture has been given ). Guidance will be given to student's private study in respect of directed reading. The lectures are also supported by a set of Lab assignments that expand the student's knowledge utilizing a 'learning by doing' approach.


This unit aims to introduce computer instruction sets and the binary representation of information, by exploring the relationship between high-level language programs and the basic structure and operation of digital computers, including the process that implements this relationship. Java and the ARM processor are used as exemplars. Practical experience is gained in the laboratory through exercises which progressively expose features of the ARM instruction set. The course-unit aims to serve as an essential foundation for further studies in the single honours Computer Science degree programme.


Introduction: Processors, simple ARM programs, binary representations, fetch-execute cycle, registers [4]

ARM code for imperative constructs: Basic data types and expressions, data structures, control structures, functions, input/output, interrupts [13]

System software: Operating Systems, Assemblers, Compilers, Libraries, Loaders, Interpreters, JVM [5]

Teaching methods


22 in total, 2 per week

Examples classes

5 in total, 1 per fortnight


10 hours in total, one 2-hour session per fortnight

Feedback methods

Feedback is provided to students in alignment with good pedagogic practice and pedagogic assessment [criterion]; the feedback takes the Kinesthetic approach to learning. Two approaches, #1 and #2, illustrate how to develop the student's skills aligned to the course; such as: theory, process, academic, reading, comprehension, exam skills. The first uses a more reading/writing-preference learner's approach #1. The second, approach #2, uses the visual learning strategy.
The feedback is given: one-to-one and one-to-many. The feedback is given (if time allows) at the start (in the break, & the end) of: lectures, examples classes (if applicable), and laboratories. One-to-one feedback is also given - marked up - in each of the anonymous scripts of the student's exam booklets. One-to-many is also given in a cohort wide exam feedback compiled jointly by all course member whom lecture on the course and mark exams.
Feedback, hints, advice, and extra information also appear on the course's CS web site, courses CS web site, & the universities Blackboard web site. RN also provides real time video multimedia support for all the course's he lectures on; these are composed of video lectures, video tutorials and many associated material designed to help, broaden, and inform the student cohort of possible: approaches, techniques, and learning strategies that will aid and enhance their learning.

Study hours

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

Employability skills

  • Project management
  • Oral communication
  • Problem solving
  • Research
  • Written communication

Learning outcomes

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

Learning outcomes are detailed on the COMP15111 course unit syllabus page on the School of Computer Science's website for current students.

Reading list

ARM assembly language : fundamentals and techniques Hohl, William, author.9781482229882CRC Press2014
Principles of computer hardware Clements, Alan, 1948-9780199273133Oxford University2006.
ARM system-on-chip architecture /Furber, Stephen B.0201675196Addison-Wesley, an imprint of Pearson Education,2000.

Additional notes

Course unit materials

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

Extra materials will be provided on YouTube & SkyDrive. These take the form of real time video multimedia taken from many of the lectures designed to help and inform the student of possible approaches, techniques, and learning strategies that will aid and enhance their learning.