Next: Continuous Mathematics
Up: Michaelmas Term 2000: Part
Previous: Michaelmas Term 2000: Part
Lecturer: Dr S.W. Moore
(swm11@cl.cam.ac.uk)
No. of lectures: 16
Aims
The aims of this course are to introduce the hardware/software
interface models and the hardware structures used in designing
computers. The first eight lectures are concerned with the
hardware/software interface and cover the programmer's model of the
computer. The last eight lectures look at hardware implementation
issues at a register transfer level.
Lectures
- Introduction to the course and some background history.
- Historic machines.
EDSAC versus Manchester Mark I.
- Introduction to RISC processor design and the ARM instruction set.
- ARM tools and code examples.
- Operating system support
including memory hierarchy and management.
- Intel x86 instruction set.
- Intel code examples.
- Java Virtual Machine.
- Executing instructions. An algorithmic viewpoint.
- Basic processor hardware. Pipelining and data paths.
- Extending the ARM pipeline including load and branch delay slots.
- Memory hierarchy. Caching etc.
- Buses. Internal communication pathways.
- Communication interfaces and devices.
- Control structures. State machines and microcode.
- Data-flow and comments on future directions.
Objectives
At the end of the course students should
- be able to read assembler given a guide to the instruction set
and be able to write short pieces of assembler if given an
instruction set or asked to invent an instruction set
- understand the differences between RISC and CISC assembler
- understand what facilities a processor provides to support
operating systems, from memory management to software interrupts
- understand memory hierarchy including difference caches
structures
- appreciate the use of pipelining in processor design
- understand the communications structures, from buses close to
the processor, to peripheral interfaces
- have an appreciation of control structures used in processor design
Recommended books
Hennessy, J.L. & Patterson, D.A. (1996). Computer Architecture:
A Quantitative Approach. Morgan Kaufmann (2nd ed.).
Patterson, D.A. & Hennessy, J.L. (1998). Computer Organization and
Design. Morgan Kaufmann (2nd ed.).
Pointers to sources of more specialist information are included in the
lecture notes and on the associated course web page.
Next: Continuous Mathematics
Up: Michaelmas Term 2000: Part
Previous: Michaelmas Term 2000: Part
Christine Northeast
Wed Sep 20 15:13:44 BST 2000