School of Computing · ANU College of Systems and Society
This course is a rigorous introduction to the design of digital circuits and computer architecture. It provides technical foundations for how a computer system is built from the bottom up and how the high-level programming languages you learn in other courses are translated into simple instructions the computer executes. The course introduces the different abstraction layers necessary to make a computer system work, and a key focus is the connection between hardware and software. The course introduces the predominant stored-program computer paradigm and principles of digital design and computer architecture. Students build a fully functional general-purpose computer from simple logic circuits in a digital simulator. The course also demystifies assembly code, the machine language the processor speaks, and the mapping of assembly programs to higher levels of programming abstraction. The focus is on fundamental techniques employed in the design of modern microprocessors and their hardware/software interface. This course will challenge your understanding of how computers work and what happens in them when we run a program. At the end of this course, you will be able to navigate between layers of abstraction in a computer system, from individual digital circuits to high-level software, and understand how low-level structures enable and enhance the abilities of a computer system. This course covers topics such as combinational and sequential logic design, digital building blocks such as arithmetic/logic unit and random access memory, instruction set architectures and assembly programming, input/output systems, interrupt handling, single-cycle and pipelined processor design, out-of-order execution, and hardware speculation.
Quizzes
Learning outcomes 1, 2, 3, 4, 5, 6, 7
Practical Assignments
Learning outcomes 3, 4, 5, 7
Final Exam
Learning outcomes 1, 2, 3, 4, 5, 6, 7
130 hours including lectures, tutorials, and laboratories and self study. Other Information Professional Skills Mapping: Mapping of Learning Outcomes to Assessment and Professional Competencies The course website for Computer Organisation and Program Execution
- Digital Design and Computer Architecture: ARM Edition by David Harris and Sarah L. Harris, Morgan Kaufmann, ISBN-13: 978-0-12-800056-4 (free at https://dl.acm.org/doi/10.5555/2815529).