Exam 2 Guidelines (will be updated once after spring break and before the
exam date):
- It will be a close-book examination. However, you can bring a
double-sided, letter-sized cheat sheet.
- There are about 10 short questions and 2-3 long questions. The short
questions are like the ones in quiz 1 and short questions in homework. The
long ones are like the long questions in homework.
- How to prepare: go through slides, read book, and review your homework
questions
- You will get a sheet of MIPS operations, MIPS assembly language, MIPS
machine language, and instruction formats. (There is no need to memorize
them.)
Coverage: Ch 4.6 - 4.8, Ch 5.
Note: You will have photocopies of the single-cycle diagram, multi-cycle
diagram, RTL description table, control signal tables, and finite state diagram. However, you may want to be very familiar with
them.
Arithmetic:
- Booth's algorithm
- Basic understanding of integer division
- IEEE 754 floating point formats (for common numbers)
- Implementation schemes of floating point add, subtraction, multiplication,
and division (brief understanding).
- MIPS supports for integer multiplication and division, an floating point
operations
Single-cycle processor implementation
- Understanding of the control and data path approach
- Understanding the difference between combinational and sequential (state)
elements
- Clocking methodology
- Basic components of data path
- Instructions execution steps on single-cycle implementations
- The use of multiplexors and the collection of control signals
- The designs of main control and ALU control
- Drawbacks of single-cycle implementation
Multi-cycle processor implementation
- General idea and motivation
- Instruction execution steps
- The reuse of memory and ALU, and the use of intermediate registers
- Determining control signals
- The design of control as finite state machine (FSM)
- Describing FSM by graphical representation
- FSM implementation using ROM or PLA, estimating implementation complexity
- Simplifying the implementation of next-state function
Microprogramming
- Motivation (useful for complex controls in real design)
- Microinstruction format
- Microprogram implementation and execution
Exceptions
- Two types of exceptions
- MIPS control and data path extensions for handling exceptions
Other stuff (self-reading)
- Understanding the control design techniques used in Pentium Pro processors
(5.7)
- Pitfalls and fallacies (5.8)
Exceptions
- Difference between interrupt and exception in MIPS
- How to handle exception