Final Topics
Overview
The final exam will cover everything we've done thus far. It will focus on things since the midterm break, but will be comprehensive The format will be short answer. Below are the topics you can expect to be on the exam:
Memories
- Know the difference between sequential and combinational logic.
- Understand flip-flops, what they do and how they work.
- How larger memories can be built from flip-flops.
- Know what a cache is and why computer systems use them.
- Understand the principles of locality.
- Be able to explain the difference between a direct-mapped and associative cache.
Circuit Design
- Be able to build combinational circuits with gates given a logic expression or truth table.
- Be able to build larger circuits out of the common components we have used e.g. registers, adders, comparators, multiplexers, etc.
Assembly Programming
- Be able to read and interpret ARM assembly functions.
- Be able to write short ARM assembly functions to solve some specific problem.
- Understand what a register convention is and why it's important.
- Know how to write loops and if/else statements with branches and labels.
- Be able to load and store values to or from memory, and deal with pointers.
Miscellaneous Topics
- Know what Moore's Law says.
- Know how pipelining works and why it is used.