Overview
This course aims to give an understanding of the mechanisms which implement the programmer's
idealised computer. It builds on the introduction to hardware and to simple processors in
Moderations, and uses Functional Programming as a tool in simulation and description.
The Computer Architecture course aims to describe a range of architectural designs and
to contrast them, highlighting the design decisions they incorporate. The designs are
described and analysed at the register-transfer level of abstraction. By the end of
the course, the student should understand the major architectural styles and appreciate
the compromises that they encapsulate.