CS 286 / Computer Organziation and Arcitecture CS286 / Course Home Page CS286 Computer Organization and Architecture Section 001 - Summer 2022 This is the home of CS286 Introduction to Computer Organization and Architecture (section 001), Summer 2022 Instructor: Dr. Hiroshi Fujinoki Office: EB 2034 Office Phone: 650-3727 E-mail: hfujino@siue.edu Instructor's HP: www.siue.edu/~hfujino Notice: When you are sending me e-mail, please specify "CS286-001" in the subject field of your e-mail. Office Hours: Monday: 10:00 A.M.-12:00 P.M. and appointment-based zoom meetings Tuesday: 10:00 A.M.-12:00 P.M. and appointment-based zoom meetings Wednesday: 10:00 A.M.-12:00 P.M. and appointment-based zoom meetings Thursday: 10:00 A.M.-12:00 P.M. and appointment-based zoom meetings Friday: appointment-based zoom meetings Note: The above office hour schedules do not apply to Thanksgiving break week. Course Prerequisite: CS-150 (Intro. Compute II) or the instructor's permission. Please talk to the instructor if you have not taken these courses. Required textbook: Title: Computer Organization and Design Edition: Fifth Edition ISBN: 978-0-12-407726-3 Author: J. Hennessy and D. Patterson Publisher: Morgan Kaufmann Course Objectives: This course is an undergraduate level computer organization and architecture. We will discuss organization of modern computer systems to understand what are major components in computer systems and how they work. The goal of this course is to acquire essential knowledge about computer hardware organization and to master analytical skills to measure or predict both component-level and system-level performance. By the end of the semester, you will be able to (1) identify major components in computer systems and (2) to describe how those components work. Fields of coverage include the following issues: various evaluation methods for computer performance, assembly language programming, processor data-path design, control unit design, memory hierarchy, virtual and cache memory design and multi-processor systems. Course Syllabus: Course Syllabus is available here (MS WORD version). Course Project: Assembly programing assignments How to contact the instructor? There are two ways to contact Dr. Fujinoki: (1) Through e-mail: You can contact the instructor by e-mail. E-mail: hfujino@siue.edu (2) Drop-by during the office hours. (3) By appointment (please send e-mail to Dr. Fujinoki). Past Exams For the first midterm exams: Midterm #1 in Spring 2002: download Midterm #1 in Fall 2003: download Midterm #1 in Spring 2011: download Midterm #1 in Fall 2012: download Midterm #1 in Spring 2013: download Midterm #1 in Fall 2013: download Midterm #1 in Spring 2014: download Midterm #1 in Fall 2014: download Midterm in Spring 2015: download Midterm in Fall 2016: download Midterm in Fall 2017: download Midterm in Fall 2018: download Midterm in Fall 2019: download Midterm in Spring 2020: download For the second midterm exams: Midterm #2 in Spring 2002: download Midterm #2 in Fall 2003: download Midterm #2 in Spring 2011: download Midterm #2 in Fall 2012: download Midterm #2 in Spring 2013: download Midterm #2 in Fall 2013: download Midterm #2 in Spring 2014: download Midterm #2 in Fall 2014: download For the final exams: Final Exam in Spring 2002: download Final Exam in Fall 2003: download Final Exam in Spring 2011: download Final Exam in Fall 2012: download Final Exam in Spring 2013: download Final Exam in Fall 2013: download Final Exam in Spring 2014: download Final Exam in Fall 2014: download Final Exam in Spring 2015: download Final Exam in Fall 2015: download Final Exam in Fall 2016: download Final Exam in Fall 2017: download Final Exam in Fall 2018: download Final Exam in Fall 2019: download Final Exam in Spring 2020: download Weekly Notices: Week 5: June 27 (the lecture note) (1) Here are our progresses for the exercises on June 22nd. Week 4: June 24 (the lecture note) (3) Here are the lecture attendance statuses up to 6/24. Any error should be reported to Dr. Fujinoki by the end of July 10th. (2) Here is the recording of the CS286-001 lecture on 6/24. (1) Here are the PPT sldies for pipeline hazards. June 23 (4) Here are the lecture attendance statuses up to 6/22. Any error should be reported to Dr. Fujinoki by the end of July 6th. (3) Here are the suggested solutions for Quiz #3 (MS word format). (2) Here are the result of Quiz #3. (1) Here is the recording of the CS286-001 lecture on 6/22. June 22 (the lecture note) (5) Here are the Quiz #4 question list ("possible questions") (MS word format). (4) Here are the PPT sldies for examples of processor evolution (in terms of their clock-cycle rate). (3) Here are the execises on June 22nd (MS word format). (2) Here are the PPT sldies for the four processor datapath architectures. (1) Here is the introduction to "processor datapath". Week 3: June 17 (the lecture note) (1) Here is the recording of the CS286-001 lecture on 6/17. June 16: (1) Here is the recording of the CS286-001 lecture on 6/15. June 15 (the lecture note): (6) Here is the PPT slide for the MIPS integer and floating-point instructions. (5) Here are the execises on June 13th (MS word format). (4) Here are the PPT slides for (IEEE-754) floating-point numbers. (3) Here are the result of Quiz #2. (2) Here are the suggested solutions for Quiz #2 (MS word format). (1) Here are the lecture attendance statuses up to 6/13. Any error should be reported to Dr. Fujinoki by the end of June 29th. June 14: (1) Here are the result of Quiz #1. June 13 (the lecture note): (5) Here is the recording of the CS286-001 lecture on 6/13. (4) Here are the Quiz #3 question list ("possible questions") (MS word format). (3) Here are the Project #0 grades. (2) The following *.asm files are samples for Project #1 (PC-SPIM assembly programming): Sample ASM source code file #1 Sample ASM source code file #2 Sample ASM source code file #3 Sample ASM source code file #4 Sample ASM source code file #5 Sample ASM source code file #6 (1) Here are the lecture attendance statuses up to 6/10. Any error should be reported to Dr. Fujinoki by the end of June 27th. Week 2: June 10: (1) Here is the recording of the CS286-001 lecture on 6/10. June 8: (2) Here is the recording of the CS286-001 lecture on 6/8. (1) The followings are the PPT slides for MIPS assembly programming: Here are the PPT slides for MIPS assembly programming. Here are the PPT slides for the MIPS assembly program source code structure. Here are the PPT slides for the fundamental assembly instructions for Project #1. June 7: (5) Here are the execises on June 8th (MS word format). (4) Programming Project #0 requires the following two files to be submitted (e-amiled) to the TA: Your "Project_00_base.asm" asm source code file A screen snapshot of your program execution (with a correct output from PC-SPIM) (3) With regard to the error ("a virus detected") in the zip archive file for PC-SPIM I e-mailed to everyone yesterday, ut can be that OutLook does not allow transfering any *.zip file that contains *.exe binary executables for security reasons. To circumvent this problem, I suggest each of you to manually download the PC-SPIM as: Go to the following PC-SPIM directory in this 286 course home Using "save link as" (by the right click on each file), manually download each file in PC-SPIM to your PC After you download all the files in the directory to your PC, you should be able to start PC-SPIM in your PC (not from the 286 course home) (2) Here are the lecture attendance statuses up to 6/6. Any error should be reported to Dr. Fujinoki by the end of June 21st. (1) Here is the recording of the CS286-001 lecture on 6/6. June 6: (7) Here are the PPT slides for "Computer Arithmetic". (6) Here are the execises on June 6th (MS word format). (5) Here are the suggested solutions for the execises on June 3rd (MS word format). (4) Here are the execises on June 3rd (MS word format). (3) Here is the required "Project #0 base asm source code file". (2) Here are the Quiz #2 question list ("possible questions") (MS word format). (1) Here are the lecture attendance statuses for Week #1. Any error should be reported to Dr. Fujinoki by the end of June 20th. Week 1: June 3: (5) Here is the recording of the CS286-001 lecture on 6/3. (4) Here are the PPT slides for "Computer Organization, A Quick Tour for Introduction". (3) Here are the PPT slides for "the roles of compilers/assemblers and three forms of programs". (2) For some quiz questions (as well as some in "CS286_Week_01_Summary.doc"), study introduction to computer architecture and organization - TO BE POSTED LATER (1) Here are the Quiz #1 question list ("possible questions") (MS word format). June 2: (1) Here is the zoom recording of the CS286-001 lecture on June 1st. June 1: (2) Here are the grading policies for this course (without narration). (1) Here is the first introduction to CS286-001 ("Why CS286 for CS majors?"). Last updated at 11:49 a.m., June 27, 2022