ELEC 5200-001/6200-001 Computer Architecture and Design
Fall 2004

Course Syllabus, Grading Sheet Grade Statistics

Final Exam, 12/13/04 (Monday), 11:00AM - 1:30PM, Broun 306, text book, notes and course website material permitted. While a student is responsible for the entire syllabus, the following hints might help the preparation. The exam will contain five multi-part questions (all to be attempted), each carrying 5 points. Specific topics of the questions are:
1. Computer arithmetic - two's complement numbers, addition, Booth multiplication.
2. Single-cycle datapath.
3. Pipelining - MIPS (instruction set) datapath, data hazard, control.
4. Performance - CPU time, MIPS (million instructions per second) rating, advanced architectures (e.g., ILP, superscalar, VLIW).
5. Cache - direct-mapped and associative caches, consistency.

LECTURES: See webpages of most recent years.

COMPUTER DESIGN PROJECT, assigned 9/29/04, Part IV due 12/8/04 (FINAL DEADLINE)
The following VHDL files can be downloaded:
qsim_logic.vhd. Compile and add "qsim_logic.vhd" to your current working directory. This will enable the 'to_interger' and 'to_stdlogicvector' functions used in the other files.
regfile.vhd is the code for a register file.
trans.vhd contains the code for a transceiver (bus interface).
Additional files for Part IV:
memory16.vhd is VHDL description of memory.
test.c is the C-code to be hand-compiled into assembly code and then into machine code.
program is an example binary machine code that is loaded by the memory16.vhd into the memory.
NOTE: This "program" is provided only as an example. The student should create own program from the provided C-code.


Homework 1, assigned 08/20/04, due 09/20/04:
Problems 1.52 and 1.54 in the third edition of text-book
1.52: In this exercise, you will evaluate the performance difference between two CPU architectures, CISC (Complex Instruction Set Computing) and RISC (Reduced Instruction Set Computing). Generally speaking, CISC CPUs have more complex instructions than RISC CPUs and therefore need fewer instructions to perform the same tasks. However, typically one CISC instruction, since it is more complex, takes more time to complete than a RISC instruction. Assume that a certain task needs P CISC instructions 2P RISC instructions, and that one CISC instruction takes 8T ns to complete, and one RISC instruction takes 2T ns. Under this assumption, which one has the better performance?
1.54: Sometimes software optimization can dramatically improve the performance of a computer system. Assume that a CPU can perform a multiplication operation in 10 ns, and a subtraction operation in 1 ns. How long will it take for the CPU to calculate the result of d = a x b - a x c? Could you optimize the equation so that it will take less time?

Homework 2, assigned 08/27/04, due 09/03/04.

Homework 3, assigned 09/03/04, due 09/13/04.

Homework 4, assigned 09/13/04, due 09/24/04:
Problems 2.38 and 2.47 from Third Edition (or Problems 3.11 and 3.12 from Second Edition)

Homework 5, assigned 10/1/04, due 10/8/04:
Problems 3.1 through 3.6 from Third Edition (or Problems 4.1 through 4.6 from Second Edition))
Note: The data in the two editions differ. Please indicate on your answers which edition you have used.

Homework 6, assigned 10/15/04, due 10/22/04:
Problem 1: Evaluate the product -86 x 31 using the Booth multiplication algorithm.
Problem 2: Perform the division 86/31 using the non-restoring binary division algorithm.

Homework 7, assigned 11/1/04, due 11/8/04:
Problem 5.2 Describe the effect that a single stuck-at-0 fault (i.e., regardless of what it should be, the signal is always 0) would have for the signals shown below in the single-cycle datapath in Figure 5.17 on page 307 (Figure 5.19 on page 360 for Second Edition). Which instructions, if any, will not work correctly? Explain why. Consider the following faults separately: (a) RegWrite = 0; (b) ALUOp0 = 0; (c) ALUOp1 = 0; (d) Branch = 0; (e) MemRead = 0; (f) MemWrite = 0.

Homework 8, assigned 11/8/04, due 11/15/04:
Problems 4.14 and 5.36 (both from Third Edition)
If you use the Second Edition, please obtain the relevant pages from a colleague or from Mr. Fei Hu.

Homework 9, assigned 11/15/04, due 11/29/04:
Problems 6.4 and 6.22 (Third Edition)
or Problems 6.4 and 6.15 (Second Edition)

Homework 10, assigned 11/29/04, due 12/6/04:
Problems 7.9 and 7.12 (Third Edition)