Spring 2017: CS/ECE 3810 Computer Organization


General Information:


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 9 assignments, of which you are allowed to skip one (in other words, we will drop the lowest score among your 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 10 Introduction to Computer Organization. ppt ; pdf Chapt 1 1 ; 2  
Thu, Jan 12 Measuring Performance. ppt ; pdf Chapt 1 3 ; 4 ; 5 ; 6  
Tue, Jan 17 MIPS ISA. ppt ; pdf Chapt 2 7 ; 8 ; 9  
Thu, Jan 19 More MIPS ISA. ppt ; pdf Chapt 2 10 ; 11 Homework 1
Tue, Jan 24 Procedure Calls. ppt ; pdf Chapt 2 12 ; 13 ; 14 ; Notes  
Thu, Jan 26 Assembly Programs. ppt ; pdf Chapt 2, App A 15 ; 16 ; 17 Homework 2
Tue, Jan 31 MIPS, Number Systems. ppt ; pdf Chapt 2, 3. MARS notes 18 ; 19 ; 20  
Thu, Feb 2 Addition, Multiplication, Division. ppt ; pdf Chapt 3 21 ; 22 ; 23 ; 24 ; 25 ; 26 Homework 3
Tue, Feb 7 Floating Point Representations & Operations. ppt ; pdf Chapt 3 27 ; 28  
Thu, Feb 9 Floating Point, Digital Design. ppt ; pdf Chapt 3, App B 29 ; 30 ; 31 ; 32  
Tue, Feb 14 Hardware for Arithmetic. ppt ; pdf App B 33 ; 34 ; 35  
Thu, Feb 16 Adders, Sequential Circuits. ppt ; pdf App B 36 ; 37 ; 38 ; 39 Homework 4
Tue, Feb 21 Sequential Circuits, FSMs. ppt ; pdf App B 40 ; 41 ; 42 ; 43  
Thu, Feb 23 Recap for mid-term. ppt ; pdf     Homework 5
Tue, Feb 28 Mid-term Exam   Chapt 1-3, App A, App B, lectures    
Thu, Mar 2 CPU Organization and Design. ppt ; pdf Chapt 4 44 ; 45 ; 46  
Tue, Mar 7 Pipelining. ppt ; pdf Chapt 4 47 ; 48 ; 49  
Thu, Mar 9 Pipelining Hazards. ppt ; pdf Chapt 4 50 ; Notes  
Tue, Mar 14 SPRING BREAK        
Thu, Mar 16 SPRING BREAK        
Tue, Mar 21 More on Pipelining. ppt ; pdf Chapt 4 51 ; 52 ; 53 ; 54  
Thu, Mar 23 Control Hazards. ppt ; pdf Chapt 4 55 ; 56 ; 57 Homework 6
Tue, Mar 28 Out-of-order, Cache Hierarchies. ppt ; pdf Chapt 4, 5 58 ; 59 ; 60 ; 61 ; 62 ; 63  
Thu, Mar 30 Cache Hierarchies. ppt ; pdf Chapt 5 64 ; 65 ; 66 ; 67 ; Notes Homework 7
Tue, Apr 4 Memory Hierarchies. ppt ; pdf Chapt 5 68 ; 69  
Thu, Apr 6 Cache policies, Memory system, Virtual Memory. ppt ; pdf Chapt 5 70 ; 71  
Tue, Apr 11 Multiprocessor Systems. ppt ; pdf Chapt 5 72 ; 73 Notes Homework 8
Thu, Apr 13 More Multiprocessors. ppt ; pdf Chapt 5 74 ; 75  
Tue, Apr 18 Multi-core processors. ppt ; pdf Chapt 6 76 ; 77 ; 78 ; 79  
Thu, Apr 20 Programming models, SMT, GPUs. ppt ; pdf   80 ; 81 Homework 9
Tue, Apr 25 Reliability, Review session. ppt ; pdf      
Thu, Apr 27, 8-10am Final Exam   Comprehensive