Office: EBU3B 3212
Office Hours: Wed 12-1; Thurs 3-4; By appointment
Teaching AssistantsAndiry Xu
Office Hours: Mon 3pm-5pm; By appointment
Office Hours: Fri 1pm-3pm; By appointment
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 concurrently 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|
|Reading quizzes||10%||Every day there will be a quick quiz at the beginning of class.|
|Clicker Participation||10%||Answer clicker questions in class.|
|Midterm||25%||Midterm is on May 8th. Self Explanatory|
|Final||35%||The final is on June 10th. It 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 XLSX and PDF formats. will be posted online occasionally throughout the course (usually starting after the midterm). 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 1||Introduction to ISAs & MIPS||00_Introduction.pdf|
|Thursday, April 3||MIPS||
|Assignment 1-1; Assignment 1-2;|
|Tuesday, April 8||MIPS + other ISAs||
|Thursday, April 10||MIPS + other ISAs||01_ISA-Part I-0410.pdf|
|Tuesday, April 15||Performance Measurement||02_performance_annotated-0415.pdf|
|Thursday, April 17||Performance Measurement||TBA||02_performance_annotated-0417.pdf||Assignment 2;|
|Tuesday, April 22||ISAs Part II||01_ISA-Part II-annotated.pdf|
|Thursday, April 24||Pipelining||SingleCycleProcessor.pdf|
|Tuesday, April 29||Pipelining and Data Hazards||
|Thursday, May 1||Pipelining and Control Hazards||03_ImplementingMIPS-0501.pdf||Assignment 3;|
|Tuesday, May 6||Midterm review||Midterm Review.pdf|
|Thursday, May 8|
|Tuesday, May 13||Pipelining and Data Hazards||
Slides from class.pdf,
|Thursday, May 15||Branch Prediction||09_Cache_intro.pdf|
|Tuesday, May 20||Memory and Caching||
|Thursday, May 22||Memory and Caching||TBA||
|Tuesday, May 27||Out-of-Order Execution/Introduction Multiprocessors||
|Thursday, May 29||Storage Systems||20_Storage.pdf|
|Tuesday, June 3||GPUs||18_GPUs.pdf|
|Thursday, June 5||Final review|