CS/ECE 3810: Computer Organization

Course Information

  • Instructor: Mahdi Nazm Bojnordi, email: lastname@cs.utah.edu, office hours: email me for appoitment, MEB 3418
  • Teaching Assistants: Ananth Prasad, office hours: TBD; Paarth Lakhani, office hours: TBD; Abishek Krishnan, office hours: TBD; Saivamshi Dobbali, office hours: TBD; Trisha gangadhar, office hours: TBD
  • TAs will be available via Zoom during their office hours. Please use the TA Queue to get in line.
  • Pre-Requisite: Knowledge of structured programming languages such as C/Java
  • Textbook: Computer Organization and Design - The Hardware/Software Interface - 5th Edition, David Patterson and John Hennessy
  • Canvas is the main venue for class announcements, homework assignments, and discussions.

Important Policies

Please refer to the College of Engineering Guidelines for disabilities, add, drop, appeals, etc. Notice that we have zero tolerance for cheating; as a result, please read the Policy Statement on Academic Misconduct, carefully. Also, you should be aware of the SoC Policies and 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.

Special Needs

The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities. If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations. All written information in this course can be made available in alternative format with prior notification to the Center for Disability Services.

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.


The following items will be considered for evaluating the performance of students. The cutoffs for the letter grades will be 95(A), 90(A-), 85(B+), etc.

Fraction Notes
Homework Assignments 30% as scheduled below
Quizzes 10% as scheduled below
Midterm Exam 30% Oct. 13, 2020
Final Exam 30% Dec. 7, 2020 at 3:30-5:30PM

Homework Assignments

Homework assignments will be released on Canvas; all submissions must be made through Canvas. Only those submissions made before midnight will be accepted. Any late submission will be considered as no submission. Please upload and verify your uploaded files before deadlines. At the end of the semester, we only consider 10 homework assignments toward your final grade: one homework assignment with the lowest grade will be automatically dropped.

Headsup: homework assignments 4 and 5 require executing code on the MARS simulator. Please, manage your time accordingly.

Release Date Submission Deadline
Homework 1 09/02 09/10
Homework 2 09/10 09/16
Homework 3 09/16 09/23
Homework 4 09/23 09/30
Homework 5 09/30 10/07
Homework 6 10/13 10/19
Homework 7 10/19 10/26
Homework 8 10/26 11/02
Homework 9 11/09 11/16
Homework 10 11/16 11/23
Homework 11 11/23 12/02


Quizzes comprising multiple-choice, true/false, yes/no, and fill-in-the blank questions will be released on Canvas. Please, read the relevant chapters of the textbook and review the lectures before taking each quiz. Only one attempt is allowed for each quiz during the specific dates below.

Lectures Release Date Submission Deadline
Quiz 1 1-3 08/31 09/02
Quiz 2 4,5 09/10 09/12
Quiz 3 6,7 09/16 09/18
Quiz 4 8,9 09/23 09/25
Quiz 5 10,11 09/30 10/02
Quiz 6 12,13 10/07 10/09
Quiz 7 14,15 10/19 10/21
Quiz 8 16,17 10/26 10/28
Quiz 9 18-21 11/09 11/11
Quiz 10 22,23 11/16 11/18
Quiz 11 24,25 11/23 12/04

Class Schedule (subject to change)

The following is a tentative class schedule. Updated lecture slides and their recorded videos will be posted on Canvas.

Date Lecture Topic Slides/Videos Required Reading
08/24 1. Introduction and Logistics PDF Chapter 1
08/26 2. Measuring Performance PDF Chapter 1
08/31 3. Performance, Power, Energy PDF Chapter 1
09/02 4. MIPS ISA I PDF Chapter 2
09/09 5. MIPS ISA II PDF Chapter 2
09/14 6. Assembly Programs PDF Chapter 2
09/16 7. Control Instructions PDF Chapters 2
09/21 8. Procedure Calls PDF Chapter 2; Appendix A
09/23 9. Number Representations PDF Chapter 3
09/28 10. Number Operations PDF Chapter 3
09/30 11. Multiplication, Division PDF Chapter 3, Appendix B
10/05 12. Floating Point PDF Chapter 3, Appendix B
10/07 13. Floating Point Operations, Logic Design PDF Chapter 3, Appendix B
--/-- Mid-term Review by TAs
10/14 14. Hardware for Arithmetic PDF Appendix B
10/19 15. Arithmetic and Logic Unit PDF Appendix B
10/21 16. Sequential Circuits PDF Appendix B
10/26 17. CPU Organization PDF Chapter 4
10/28 18. Single-Cycle and Pipelined Processor PDF Chapters 4
11/02 19. Pipeline Hazards I PDF Chapter 4
11/04 20. Pipeline Hazards II PDF Chapter 4
11/09 21. Memory System PDF Chapter 5
11/11 22. Cache I PDF Chapter 5
11/16 23. Cache II PDF Chapter 5
11/18 24. Cache III PDF Chapter 5
11/23 25. Virtual Memory PDF Chapter 5
11/25 26. Multiprocessors PDF Chapter 6
--/-- Final Review by TAs