Spring 2020: CS/ECE 3810 Computer Organization


General Information:


School of Computing Guidelines

Class rosters are provided to the instructor with the student's legal name as well as "Preferred first name" (if previously entered by you in the Student Profile section of your CIS account). While CIS refers to this as merely a preference, I will honor you by referring to you with the name and pronoun that feels best for you in class, on papers, exams, group projects, etc. Please advise me of any name or pronoun changes (and please update CIS) so I can help create a learning environment in which you, your name, and your pronoun will be respected.


College Guidelines


SafeU Information

The University of Utah values the safety of all campus community members. To report suspicious activity or to request a courtesy escort, call campus police at 801-585-COPS (801-585-2677). You will receive important emergency alerts and safety messages regarding campus safety via text message. For more information regarding safety and to view available training resources, including helpful videos, visit SAFEU.


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. TAs will be on the lookout for solution sets that appear very similar. Further, 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. TAs will be on the lookout for solution sets that appear very similar. 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 7 Introduction to Computer Organization. ppt ; pdf Chapt 1 1 ; 2  
Thu, Jan 9 Measuring Performance. ppt ; pdf Chapt 1 3 ; 4 ; 5 ; 6  
Tue, Jan 14 MIPS ISA. ppt ; pdf Chapt 2 7 ; 8  
Thu, Jan 16 More MIPS ISA. ppt ; pdf Chapt 2 9 ; 10 Homework 1
Tue, Jan 21 Procedure Calls. ppt ; pdf Chapt 2; Notes 11 ; 12  
Thu, Jan 23 Assembly Programs. ppt ; pdf Chapt 2, App A 13 ; 14  
Tue, Jan 28 Examples, MARS. ppt ; pdf Chapt 2, App A. MARS notes 15 ; 16 ; 17 Homework 2
Thu, Jan 30 Number Systems. ppt ; pdf Chapt 3. 18 ; 19 ; 20  
Tue, Feb 4 Addition, Multiplication, Division. ppt ; pdf Chapt 3 21 ; 22 ; 23 ; 24 ; 25 ; 26 Homework 3
Thu, Feb 6 Floating Point Representations & Operations. ppt ; pdf Chapt 3 27 ; 28  
Tue, Feb 11 Floating Point, Digital Design. ppt ; pdf Chapt 3, App B 29 ; 30 ; 31 ; 32  
Thu, Feb 13 Hardware for Arithmetic. ppt ; pdf App B 33 ; 34 ; 35 Homework 4
Tue, Feb 18 Adders, Sequential Circuits. ppt ; pdf App B 36 ; 37 ; 38 ; 39  
Thu, Feb 20 Sequential Circuits, FSMs. ppt ; pdf App B Notes 40 ; 41 ; 42 ; 43 Homework 5
Tue, Feb 25 Review Session. ppt ; pdf      
Thu, Feb 27 Mid-term Exam   Chapt 1-3, App A, App B, lectures    
Tue, Mar 3 CPU Organization and Design. ppt ; pdf Chapt 4 44 ; 45 ; 46  
Thu, Mar 5 Pipelining. ppt ; pdf Chapt 4 47 ; 48 ; 49  
Tue, Mar 10 SPRING BREAK        
Thu, Mar 12 SPRING BREAK        
Tue, Mar 17 COVID-19 Cancellation        
Thu, Mar 19 Pipelining Hazards. ppt ; pdf Chapt 4; Notes Recap: 48 ; 49 ; New: 50 ; 51 ; 52 Homework 6
Tue, Mar 24 Control Hazards. ppt ; pdf Chapt 4 53 ; 54 ; 55  
Thu, Mar 26 Branch Predictors, Out-of-order. ppt ; pdf Chapt 4 56 ; 57 ; 58 ; 59 Homework 7
Tue, Mar 31 Out-of-order, Cache Hierarchies. ppt ; pdf Chapt 5; Notes 60 ; 61 ; 62 ; 63  
Thu, Apr 2 Cache Hierarchies. ppt ; pdf Chapt 5 64 ; 65 ; 66 ; 67 Homework 8
Tue, Apr 7 Cache policies. ppt ; pdf Chapt 5 68 ; 69  
Thu, Apr 9 Memory system, Security. ppt ; pdf Chapt 5 70 ; Meltdown ; Spectre ; Homework 9
Tue, Apr 14 Security, Virtual Memory, Multiprocessors. ppt ; pdf Chapt 5; Notes 71 ; 72 73 ; 74 ; 75  
Thu, Apr 16 More Multiprocessors. ppt ; pdf Chapt 6 76 ; 77 ; 78 ; 79  
Tue, Apr 21 Programming models, SMT, GPUs, accelerators, reliability. ppt ; pdf   80 ; 81 Homework 10
Mon, Apr 27, 10-11am Review Session ppt ; pdf Comprehensive    
Tue, Apr 28, 8-10am Final Exam   Only post-midterm material