Spring 2018: CS/ECE 3810 Computer Organization


General Information:


School of Computing Guidelines


College Guidelines


Grading:

The following is a tentative guideline and may undergo changes. A mid-term exam will count for 30%, the final exam will count for 40%, and assignments will count for 30% of the final grade. The exams will be open-book and open-notes. There will be approximately 10 assignments. We have zero tolerance for cheating -- if your class rank in the assignments is significantly different from your class rank in the exams, only your rank in the exams will count towards your grade. We know you're juggling multiple activities and the assignment deadline may not always be favorable. You are therefore allowed to skip one of the assignments -- use this freebie prudently. To be fair to the rest of the class, no exceptions to the above rule will be made. Late submissions will not be graded.


Cheating policy:

Working with others on assignments is a good way to learn the material and is encouraged. However, there are limits to the degree of cooperation that is permitted. Students may discuss among themselves the meaning of homework problems and possible approaches to solving them. Any written portion of an assignment, however, is to be done strictly on an individual basis. BOTTOM LINE: You may not copy from another student or from any other source, and you may not allow another student to copy your work!! Any violation of the above is considered to be cheating and will result in a reduced or a failing grade in the class. Also, if your class rank in the assignments is significantly different from your class rank in the exams, only your rank in the exams will count towards your grade.


Homework Assignments:

Assignments will be posted here (almost) weekly. The schedule of assignments below is tentative. The deadline for assignments will typically be the start of class on Tuesday or Thursday. In all cases, you will turn in responses as a pdf file on Canvas. Late submissions will not be graded. There will be roughly 10 assignments, of which you are allowed to skip one (in other words, we will drop the lowest score among your 10 assignments).


Best Practices

YouTube screencasts for every lecture have already been posted below. Some of you may learn better by watching these videos before the lecture; others may prefer to watch videos after the lecture. Both approaches are fine -- you may want to try them both to see which works better. The textbook is a fun read, but can be verbose and detail-oriented at times. You may want to read relevant sections after the lecture/videos to consolidate your understanding of the concepts.

I will use Canvas regularly for various class announcements. Please feel free to use Canvas discussion forums to get your doubts clarified.

The following lecture schedule is tentative. Updated lecture slides will be posted on the evening/morning before the lecture. If you like taking notes on paper, your best bet is to print the slides just before class (preferably, 4/6 slides per page so we save some trees).


Video Playlist on YouTube

Nicer playlist created by a 3810 student


Class Schedule

Date Lecture Topic Slides Reading Videos Assignment Due
Tue, Jan 9 Introduction to Computer Organization. ppt ; pdf Chapt 1 1 ; 2  
Thu, Jan 11 Measuring Performance. ppt ; pdf Chapt 1 3 ; 4 ; 5 ; 6  
Tue, Jan 16 MIPS ISA. ppt ; pdf Chapt 2 7 ; 8 ; 9  
Thu, Jan 18 More MIPS ISA. ppt ; pdf Chapt 2 10 ; 11 Homework 1
Tue, Jan 23 No Class        
Thu, Jan 25 Procedure Calls. ppt ; pdf Chapt 2; Notes 12 ; 13 ; 14  
Tue, Jan 30 No Class       Homework 2
Thu, Feb 1 Assembly Programs. ppt ; pdf Chapt 2, App A 15 ; 16 ; 17  
Tue, Feb 6 Examples, MARS, Number Systems. ppt ; pdf Chapt 2, 3. MARS notes 18 ; 19 ; 20 Homework 3
Thu, Feb 8 Addition, Multiplication, Division. ppt ; pdf Chapt 3 21 ; 22 ; 23 ; 24 ; 25 ; 26  
Tue, Feb 13 Floating Point Representations & Operations. ppt ; pdf Chapt 3 27 ; 28  
Thu, Feb 15 Floating Point, Digital Design. ppt ; pdf Chapt 3, App B 29 ; 30 ; 31 ; 32 Homework 4
Tue, Feb 20 Hardware for Arithmetic. ppt ; pdf App B 33 ; 34 ; 35  
Thu, Feb 22 Adders, Sequential Circuits. ppt ; pdf App B 36 ; 37 ; 38 ; 39 Homework 5
Tue, Feb 27 Mid-term Exam   Chapt 1-3, App A, App B, lectures    
Thu, Mar 1 Sequential Circuits, FSMs. ppt ; pdf App B Notes 40 ; 41 ; 42 ; 43  
Tue, Mar 6 CPU Organization and Design. ppt ; pdf Chapt 4 44 ; 45 ; 46  
Thu, Mar 8 Pipelining. ppt ; pdf Chapt 4 47 ; 48 ; 49 Homework 6
Tue, Mar 13 Pipelining Hazards. ppt ; pdf Chapt 4; Notes 50  
Thu, Mar 15 More on Pipelining. ppt ; pdf Chapt 4 51 ; 52 ; 53 ; 54  
Tue, Mar 20 SPRING BREAK        
Thu, Mar 22 SPRING BREAK        
Tue, Mar 27 Control Hazards. ppt ; pdf Chapt 4 55 ; 56 ; 57 Homework 7
Thu, Mar 29 Out-of-order, Cache Hierarchies. ppt ; pdf Chapt 4, 5 58 ; 59 ; 60 ; 61 ; 62 ; 63  
Tue, Apr 3 Cache Hierarchies. ppt ; pdf Chapt 5; Notes 64 ; 65 ; 66 ; 67 Homework 8
Thu, Apr 5 Memory Hierarchies. ppt ; pdf Chapt 5 68 ; 69  
Tue, Apr 10 Cache policies, Memory system, Security. ppt ; pdf Chapt 5 70 ; Meltdown ; Spectre  
Thu, Apr 12 Virtual memory, Multiprocessor Systems. ppt ; pdf Chapt 5 71 ; 72 Homework 9
Tue, Apr 17 Multiprocessors. ppt ; pdf Chapt 5; Notes 73 ; 74 ; 75  
Thu, Apr 19 More Multiprocessors. ppt ; pdf Chapt 6 76 ; 77 ; 78 ; 79  
Tue, Apr 24 Programming models, SMT, GPUs, reliability. ppt ; pdf   80 ; 81 Homework 10
Thu, Apr 26, 1-2pm Review Session   Comprehensive    
Fri, Apr 27, 8-10am Final Exam   Comprehensive