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