ELEC 5200-001/6200-001 Computer Architecture and Design
Spring 2009, MWF 11AM, Broun 306
Course Syllabus
Grades
Instructor: Vishwani D. Agrawal, James J. Danaher Professor of ECE
Teaching Assistant: Manish Kulkarni, 334-332-0556, B359,
consulting hours: MWF 10:00-11:00AM.
EXAM SCHEDULE:
Test 1, Friday, 3/6/09, 11:00-11:50AM, Broun 306, use of books, notes, etc., permitted;
problems,
solution
Test 2, Monday, 4/6/09, 11:00-11:50AM, Broun 306, use of books, notes, etc., permitted;
problems,
solution
Final Exam, Wednesday, 5/6/09, 12:00-2:30PM, Broun 306, use of books, notes, etc., permitted,
problems,
solution
PROJECT:
Spring 2009 Project Assignment, Wednesday, 2/25/09, revised 3/27/09.
Part 1 ISA, report due Monday, 3/9/09
Part 2 Datapath, report due Monday, 3/23/09
Part 3 Datapath Verification, report due Monday, 3/30/09
Part 4 Control Unit, report due Monday, 4/13/09
Part 5 FPGA Implementation, demo and report, completed Monday, 4/23/09, 3-5PM
INSTRUCTIONS FOR DEMO:
1. Briefly describe what is implemented, what program you will run and what result is expected.
2. Run the program pointing to the functions of the buttons you press. Let the viewer examine the result.
3. Offer to make a change to some parameter to a viewer selected value and rerun the demo.
4. Total duration of demo: FIVE MINUTES.
Project feedback from Spring 2009 students:
1
2
3
4
5
6
7
8
Project feedback from Fall 2008 students:
1
2
3
4
5
6
7
8
9
10
11
12
13
Project feedback from Spring 2008 students:
1
2
3
4
5
6
7
8
9
Project feedback from Fall 2007 students:
1
2
3
4
5
6
7
8
9
10
11
12
VHDL references and relevant files for project:
Slides from Prof. Nelson's site: Synthesis with VHDL and Leonardo
Lectures from Prof. Nelson's CAD course
Altera Quartus II and DE2 Manual
Leonardo Spectrum for Altera HDL Synthesis Manual
Altera MegaWizard Plug-In Manager Manual
Run time content editable memory tutorial
RAM_init.mif, Memory initialization file
HOMEWORKS:
Homework 1: Design of multiplexers, register and ALU, assigned 1/16/09, due 1/30/08,
Modelsim Tutorial
Homework 2, assigned 2/2/09, due 2/13/09,
solution
Homework 3, assigned 2/9/09, due 2/20/09,
solution
Homework 4, assigned 2/16/09, due 2/27/09,
solution
Homework 5, assigned 3/9/09, due 3/25/09,
solution
Homework 6, assigned 3/25/09, due 4/3/09,
solution
Homework 7, assigned 4/10/09, due 4/17/09,
solution
Homework 8, assigned 4/17/09, due 4/24/09,
solution
LECTURES:
Lecture 1: VHDL Review, 1/7/09
Lecture 2: Modeling for Synthesis, 1/9/09
Lecture 3: Introduction, 1/12/09
Lecture 4: History of Computers (Chapter 1), 1/14/09 . . .
. . . See: Babbage's Difference Engine in action.
. . . Read: K. L. Kroeker, "Living Machines," Comm. ACM, vol. 51, no. 12, pp. 11-13, December 2008.
. . . Read: N. Ramakrishnan, U. S. Bhalla and J. S. Tyson, "Computing with Proteins," Computer, vol. 42, no. 1, pp. 47-82, January 2009.
Lecture 5: Instruction Set Architecture (Chapter 2), 1/23/09 . . .
. . . Read: J. Mashey, "The Long Road to 64 Bits," Comm. ACM, vol. 52, no. 1, pp. 45-53, January 2009.
. . . Read: Robert Dennard wins 2009 Draper Prize for his single-transistor DRAM cell.
. . . and hear him speak.
Lecture 6: Compiling and Executing Programs (Chapter 2), 2/4/09 . . .
. . . Read: M. Hall, D. Padua and K. Pingali, "Compiler Research: The Next 50 Years," Comm. ACM, vol. 52, no. 2, pp. 60-67, February 2009.
Lecture 7: Datapath and Control (Chapter 4), 2/11/09 . . .
Lecture 8: Control Unit: Hardwired and Microcoded (Chapter 4), 2/27/09 . . .
Lecture 9: Pipelining (Chapter 5), 3/9/09 . . .
. . . See: Charlie Chaplin on Assembly Line in Modern Times
. . . See: The PC of 2019
. . . See: A robot interacting with human
Lecture 10: Pipeline Control and Performance (Chapter 6), 3/30/09 . . .
. . . An Interview with Hennessey and Patterson
Lecture 11: Memory Organization (Chapters 7), 4/8/09 . . .
. . . Read: P. J. Denning, "The Locality Principle," Comm. ACM, vol. 48, no. 7, pp. 19-24, July 2005.
. . . Read: K. Beyls and E. H. D'Hollander, "Refactoring for Data Locality," Computer, vol. 42, no. 2, pp. 62-71, February 2009.
Lecture 12: Performance of a Computer (Chapter 4), 4/20/09 . . .
. . . Read about recent views on Amdahl's Law: M. D. Hill and M. R. Marty,
"Amdahl's Law in the Multicore Era," Computer, vol. 41, no. 7, pp. 33-38, July 2008.
. . . and, D. H. Woo and H.-H. S. Lee,
"Extending Amdahl's Law for Energy-Efficient Computing in the Multi-Core Era," Computer, vol. 41, no. 12, pp. 24-31, Dec. 2008.
. . . Read about recent views on performance: S. M. Pieper, J. M. Paul and M. J. Schulte,
"A New Era of Performance Evaluation," Computer, vol. 40, no. 9, pp. 23-30, September 2007.
. . . and, S. Gal-On and M. Levy,
"Measuring Multicore Performance," Computer, vol. 41, no. 10, pp. 99-102, October 2008
. . . and, S. Williams, A. Waterman and D. Patterson,
"Roofline: An Insightful Visual Performance Model for Multicore Architectures," CACM, vol. 52, no. 4, pp.65-76, Apr. 2009.
Lecture 13 Computer Arithmetic (Chapter 3), 4/27/09
. . . Also see Chapter 2 in D. E. Knuth, The Art of Computer Programming: Seminumerical Algorithms, Volume II, Second Edition, Addison-Wesley, 1981.
Lecture 14: Symbol Representation and Floating Point Numbers (Chapters 2 and 3), 4/27/09
. . . Read: "IEEE 754: An Interview with William Kahan," Computer, March 1998, pp. 114-115.
Lecture 15: Conclusion, 4/29/09
PREVIOUS OFFERINGS BY PROF. V. AGRAWAL:
Fall 2008
Spring 2008
Fall 2007
Spring 2007
Fall 2006
Fall 2005
Fall 2004