Module overview
This module aims to give students an understanding of how a CPU works, and also the ability to implement a working CPU. The module covers basic data- and control-path design, and the implemention of an existing Instruction Set Architecture (ISA). Standard optimisations (pipelining and caches) are introduced to explain basic techniques for improving performance. The module shows how a CPU can be used as one component within a larger computational system, for example how CPUs are integrated with other devices within a modern System on Chip (SoC).
Aims and Objectives
Learning Outcomes
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Select SoC IP cores to meet functional and non-functional requirements.
- Classify and critique instruction-set architecture styles in terms of efficiency and performance.
- Quantitatively analyse and predict the impact of architectural optimisations.
- Select high-level data structures to best exploit the memory hierarchy
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The relationship between throughput, latency, and pipelining.
- Standard optimisations for in-order scalar CPUs, including pipelining and caching.
- The main stages and functional units in a CPU.
- Memory hierarchy and address mapping.
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Create test-benches to test digital circuits in simulation.
- Construct and synthesise a CPU as part of a system-on-chip on an FPGA, and execute code on that CPU.
- Implement a synthesisable processor at Register Transfer Level (RTL) that complies with an ISA.
Syllabus
Classic architectures:
-ISAs
-Data-path and control-path design
-Detailed single-cycle CPU for real-world ISA
Optimisations:
-Pipelining
-Caches
-Memory hierarchy
Bus-based systems:
-Buses & protocols
-Polling/interrupts
-IP interfacing
Learning and Teaching
Teaching and learning methods
Lectures, labs and guided self-study
Type | Hours |
---|---|
Lecture | 36 |
Specialist Laboratory | 9 |
Independent Study | 25 |
Completion of assessment task | 80 |
Total study time | 150 |
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Exam | 40% |
Coursework | 60% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Coursework | 60% |
Exam | 40% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Exam | 40% |
Coursework | 60% |