Office: EBU3B 3212
Office Hours: Monday 10-11; Thursday 11-12 (and by appointment)
Teaching AssistantAlice Liang
Office Hours: Tuesday 1-3pm in EBU3B B260A, Wednesday 1:30-3:30pm in EBU3B B275, and by appointment
Course discussion board: Google Groups. Required reading. Get signed up.
This course will describe the basics of modern processor operation. Topics include computer system performance, instruction set architectures, pipelining, branch prediction, memory-hierarchy design, and a brief introduction to multiprocessor architecture issues.
This course is taught in tandem with 141L. Unless you have discussed it with you me, you should be in enrolled in both.
|Homework||20%||Homeworks will be assigned throughout the course. They are due on Thursdays|
|Quiz||20%||Every Thursday there will be a quiz.|
|Final||35%||The final will be cumulative.|
Additional notes about grades in this course:
Calculating grades I compute grades using an Excel spread sheet. In the interests of transparancy, the current grade sheet (with identifying information removed) is available in XLS and PDF formats. The grade sheet contains all the information about curves and how the grades are computed. It is somewhat complicated, so if you find bugs please bring them to my attention. Please note that some versions of OpenOffice do not perform the calculations properly, and will give incorrect results.
The grading systems is based on a 13 point (F through A+) scale. For each assignment/test/etc, the sheet computes the letter grade (rounding up, when needed) according to a curve for each assignment (specified at the bottom of each assignments column). Your final grade is the weighted average of these grades.
We do our best to record grades accurately, but you should double-check.
Errors in grading If you feel there has been an error in how an assignment or test was graded, you have one week from when the assignment is return to bring it to our attention. You must submit (via email to the instructor and the appropriate TAs) a written description of the problem. Neither I nor the TAs will discuss regrades without receiving an email from you about it first.
For arithmetic errors (adding up points etc.) you do not need to submit anything in writing, but the one week limit still applies.
Final grades If you have a problem with your
I will post the slides for most lectures. Since the slides contain material I am not allowed to distribute publically, they are password protected. I have posted the username and password to the google group.
Reading should be done before class on the day they are listed. It is essential that you do the readings. I will not cover everything you are responsible for in class.
|Tuesday, April 2||Introduction to ISAs & MIPS||00_Introduction.pdf|
|Thursday, April 4||MIPS||01_ISA-PartI.pdf|
|Tuesday, April 9||Performance Measurement||Assignment 1;|
|Thursday, April 11||Performance Measurement||02_performance.pdf|
|Tuesday, April 16||Performance Measurement||02_performance.pdf|
|Thursday, April 18||ISAs Part II||
|Tuesday, April 23||Pipelining||03_ImplementingMIPS.pdf|
|Thursday, April 25||Pipelining and Data hazards||03_ImplementingMIPS.pdf||Assignment 3;|
|Tuesday, April 30||Pipelining and Control Hazards|
|Thursday, May 2||Midterm review||Assignment 4;|
|Tuesday, May 7|
|Thursday, May 9||Pipelining and Data Hazards|
|Tuesday, May 14||Branch prediction|
|Thursday, May 16||Branch Prediction||Assignment 5;|
|Tuesday, May 21||Memory and Caching||
|Thursday, May 23||Memory and Caching||
|Tuesday, May 28||Memory and Caching||TBA|
|Thursday, May 30||Virtual Memory||12_VirtualMemory.pdf||Assignment 6;|
|Tuesday, June 4||Out-of-Order Execution/Introduction Multiprocessors||
|Thursday, June 6||Final review||Assignment 7;|