COMP25212 System Architecture syllabus 2018-2019
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.
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.
The motivation behind advanced architectural techniques.
The need to overcome latency. Caching as a principle, examples of caching in practice. Processor cache structure and operation.
Principles of pipelining. Implementation of a processor pipeline and its properties. Pipelining requirements and limitations. Additional support for pipelining.
Basic multi-threading principles. Processor support for multi-threading. Simultaneous multi-threading.
Motivation for multi-core. Possible multi-core structures. Cache coherence.
File System Support
Implementation of file systems. RAID
Motivation for Virtual Machines. Language Virtual Machines. System Virtual Machines. Virtual Machine implementation. Binary Translation
- Assessment written exam (2 hours)
- Lectures (22 hours)
- Practical classes & workshops (12 hours)
|Programme outcome||Unit learning outcomes||Assessment|
|A3 B1 B2 B3 C6||Have knowledge and understanding of techniques which are employed in modern processors to increase their performance, reliability and flexibility.|
|A3 B1 B2 B3 C6||Have detailed knowledge and understanding of the following architectural principle: Caching.|
|A3 B1 B2 B3 C6||Have detailed knowledge and understanding of the following architectural principle: Pipelining.|
|A3 B1 B2 B3 C6||Have detailed knowledge and understanding of the following architectural principles: Multi-Threading & Multi-Core.|
|A3 B1 B2 B3 C6||Have detailed knowledge and understanding of the following architectural principles: File System Support (RAID).|
|A3 B1 B2 B3 C6||Have detailed knowledge and understanding of the following architectural principles: Virtual Machines.|
|A3 B1 B2 B3 C6||Have the ability to model architectural principles via simulation.|
|Virtual machines: versatile platforms for systems and processes||Smith, Jim and Ravi Nair||9781558609105||Morgan Kaufmann||2005||✖|
|Computer organization and design: the hardware/software interface (5th edition)||Patterson, David A. and John L. Hennessy||9780124077263||Elsevier||2014||✖|
Course unit materials
Links to course unit teaching materials can be found on the School of Computer Science website for current students.