Comp411: Computer Organization
Comp411: Computer Organization
Course News
Grading
Problem Sets: 25%
Quizzes: 15%
Exams: 35%
Lab: 25%
Meeting Times
Class: MW 1-2:15pm, FB009
Lab: Fri 1-1:50pm, FB009
The Team
Prof. Montek Singh
Instructor
FB234 (Brooks)
montek@cs.unc.edu
Siddharth Padmanabhan
Teaching Assistant
SN045 (Sitterson)
siddartr@cs.unc.edu
Wenda Xu
Teaching Assistant
SN343 (Sitterson)
xuwd@cs.unc.edu
Office Hours
Please see the Google Calendar below right for the most up-to-date schedule. Generally, office hours will be as follows:
Instructor
Mon 2:15-3:30pm,
Wed 2:15-3pm, and
Thu 3:30-4:30pm (all in FB234)
Siddharth
Tue 2:30-4pm (SN155), and
Thu 10:30am-12pm (SN045)
Wenda
Tue 2:30-4pm (SN155), and
Thu 10:30am-12pm (SN343)
However, these times may need to be adjusted sometimes. Please see the Google Calendar for the latest information.
It is also highly recommended that you obtain a copy of the book below (“K&R”), or any other introductory text on C programming.
Kernighan and Ritchie
2nd ed.[paperback], Apr 1988
ISBN 978-0131103627
Computer Organization and Design: The Hardware/Software Interface
Patterson and Hennessy
4th ed., Revised Printing,
Nov 2011
ISBN 978-0123747501
PROJECT DEMOS (MIPS part)
Please pick an appointment slot for your demo.
Please enter your name against only one 5-min time slot.
Please do not inadvertently overwrite other students’ entries!
If all slots are taken before you sign up, please email me to let me know.
Post questions here and look for answers.
Check all your scores here.
Histogram/Grade Trend (updated Dec 1)
HOMEWORK
Problem Set 1 (due Sep 19)
Problem Set 2 (due Oct 8)
Problem Set 3 (due Nov 5) [Solutions]
Problem Set 4 (due Nov 12) [Solutions]
Problem Set 5 (due Nov 30) [LAST ONE]
LABS
Lab 1: UNIX Tutorial for Beginners (Aug 24)
•Familiarize yourself with logging in onto the department’s server (classroom.cs.unc.edu), and transferring files between your computer and the server. Windows users may use SecureCRT or SSH/SFTP Secure Shell (these tools may be downloaded for free from shareware.unc.edu). Mac and Unix users should use the terminal/shell applications and ssh/sftp commands.
•Please go through this UNIX Tutorial and submit the program output by 1pm on Fri Aug 31 according to instructions provided in the lab writeup.
•Note: For Part 7 of the tutorial, instead of downloading the code onto your computer and then transferring it to the classroom server, you could copy it from here: /home/montek/public_html/teaching/Comp411-Fall12/UnixTut/units-1.74.tar.gz using the cp command.
Lab 2: Editing, Compiling and Running C Programs (Aug 31)
•Reading: Please refer to the K&R book for basics of C (see left). Alternatively, you can refer to this online C reference.
•Please follow the exercises in this tutorial, and submit your work as specified in the assignment writeup.
Lab 3: Arithmetic, I/O, and Conditionals and Loops in C (Sep 7)
•Important: Read Chapters 1, 2, 3 and 7 of K&R (or relevant sections on arithmetic, input-output, if-else and for/while loops in another C reference).
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup.
Lab 4: Arrays and Functions in C (Sep 14)
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup.
Lab 5: More on Arrays and Pointers in C (Sep 21)
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup.
Lab 6: Basic MIPS Assembly (Sep 28)
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup.
•Assembly files for Exercise 0: Sum.asm, SumArray.asm, and Fibonacci1.asm
•Assembly starter file for Exercise 1: ex1.asm
•NOTE: It is highly recommended that for this lab you turn off support for pseudoinstructions and extended syntax in MARS (under Settings). Doing so will help you get the most out of this assignment.
Lab 7: More MIPS Assembly (Oct 5)
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup.
Lab 8: String Processing and Recursion (Oct 12)
•Please follow all the exercises in this tutorial, and submit your work as specified in the assignment writeup. Work is due October 24.
Lab 9: More Recursion (Oct 12)
•Complete the exercises in this tutorial. Work is due Wednesday, Oct 31.
Lab 10: Extra Credit (Optional)
•C files: bubble.c, bubble_generic.c
•Work is due Friday, November 9.
Labs 11 and 12: Your Own Mini-Project
•Propose your topic no later than Wed, Nov 7, 1pm. Please submit your proposal using Sakai; see under “Assignments” in the left toolbar.
•Complete C part and demo by Fri, Nov 16 during lab, or earlier.
•Complete MIPS part and demo by Fri, Nov 30 during lab, or earlier.
LECTURES
Lecture 1: Introduction (Aug 22)
•Reading: Ch. 1
Lecture 2: Information Encoding - 1 (Aug 27)
•Reading: Ch. 2.2-2.3
Lecture 3: Information Encoding - 2 (Aug 29-Sep 5)
•Reading: Ch. 2.4
Lecture 4: Instruction Sets - 1 (Sep 10)
•Reading: Ch. 2.1-2.7
Lecture 5: Instruction Sets - 2 (Sep 12)
•Reading: Ch. 2.1-2.7
•Study Carefully: Inside front flap of textbook (“Green Card”)
Lecture 6: Addressing Modes (Sep 19)
•Reading: Ch. 2.3, 2.10, 2.14
Lecture 7: Assembly and Simulator (Sep 26)
•Reading: Ch. 2.10, Appendix B.1-B.5
•Sum example (Sum.asm)
•Sum Array example (SumArray.asm)
•Fibonacci example (Fibonacci1.asm)
•Another Fibonacci example (Fibonacci2.asm)
Quiz #1 (Fri, Sep 28, in lab)
•Material covered: Lectures 1-5 (and associated readings), Labs 1-4, and Problem Set 1
•15 minutes in duration, multiple-choice / short-answer questions
•Open-book, open-notes, calculator allowed
•No computer/internet access, except for accessing class website, lecture slides and textbook CD supplement
Lecture 8: Procedures and Stacks (Oct 1-3)
•Reading: Ch. 2.8, Appendix B.6
Lecture 9: Assembly and Compilation (in lab on Oct 12)
•Reading: Ch. 2.12-2.14
Lecture 10: Transistors and Logic - 1 (Oct 10)
•Reading: Appendix C.1-C.3
Quiz #2 (Mon, Oct 15, in class)
•Material covered: Lectures 4-10 (and associated readings), Labs 4-7, and Problem Set 2. Note: Lecture 10 will be only lightly represented on the quiz.
•15 minutes in duration, multiple-choice and short-answer questions
•Open-book, open-notes, calculator allowed
•No computer/internet access, except for accessing class website, lecture slides and textbook CD supplement
Lecture 11: Transistors and Logic - 2 (Oct 17)
•Reading: Appendix C.1-C.3
EXAM #1 (Oct 24, in class)
•Material covered: Lectures 1-11 (and associated readings), Labs 1-8, and Problem Sets 1-2.
•75 minutes in duration, multiple-choice and short-answer questions
•Open-book, open-notes, calculator allowed
•No internet access, except for accessing class website
•Laptop allowed for accessing CD supplement
•No use of MIPS/MARS simulators
Lecture 12: Arithmetic and Logic Circuits (Oct 29)
•Reading: Ch. 3.1-3.2, Appendix C.5
•Skim: Appendix C.6
Lecture 13: Multiplication, Division and Floating-Point Numbers (Nov 5)
•Reading: Ch. 3.3-3.5
•Skim: Ch. 3.6-3.8
Lecture 14: Performance (Nov 7)
•Reading: Ch. 1.4
Quiz #3 (Mon, Nov 12, in class)
•Material covered: Lectures 10-14 (Lecture 14 up until Slide #21 only), associated readings, and Problem Sets 3-4.
•20 minutes in duration, multiple-choice and short-answer questions
•As usual, open-book, open-notes, calculator allowed
Lecture 15: Memories and State Machines (Nov 12-14)
•Reading: Appendix C.7-C.12
Exam #2 (Nov 19)
•Material covered: Lectures 10-15; all associated readings; Problem Sets 3-4.
•75 minutes in duration, multiple-choice and short-answer questions
•Open-book, open-notes, calculator allowed
•No internet access, except for accessing class website
•Laptop allowed for accessing CD supplement
•No use of MIPS/MARS simulators
Lecture 16: Let’s Build a Computer! (Nov 26)
•Reading: Ch. 4.1-4.4
Lecture 17: Memory Hierarchy and Caches (Nov 28)
•Reading: Ch. 5.1-5.4
Quiz #4 (online on Sakai, due by Fri Nov 30 end of day)
•Material covered: Lectures 15-16 (and associated readings).
•Multiple-choice and short-answer questions
•As usual, open-book, open-notes, calculator allowed
•Quiz will be released on Sakai Wed Nov 28 at 2pm; due Fri Nov 30 by midnight. You will have 1 hour to complete the quiz once you start it.
•Direct link to quiz (quiz will be available starting 2pm on Wed)
Lecture 18: Pipelining, and Wrap Up! (Dec 5)
•Reading: Ch. 4.5-4.6, 4.7-4.8
END -- No more classes, homework, labs or exams!