CPSC 220: Introduction to Computer Architecture (Fall 2008)

Lecture: 10:10 - 11:05 (period 3) Mon/Wed/Fri, Lansing 301 (Class Schedule)
Lab: 11:55 - 1:20 Thu, Library Multimedia Lab, room 1002 (Lab Schedule)
Web: http://math.hws.edu/mcorliss/fall08/cs220/index.html

Announcements

  • [Dec 10] - There will be no lab this week (12/11). Instead, we will meet in our normal classroom (Lansing 301) during the lab time and have a short lecture and then watch a movie.

  • [Dec 8] - There will be no TA office hours tonight, Thursday night or next Sunday night. Also the office hours on Tuesday have been shifted to 6-8 (the others are 8-10). If you were planning on utilizing one of the TA office hours that were cancelled or moved, please let me know. We should be able to find a time to meet and talk about the lab.

  • [Sep 11] - There are teaching assistants (TAs) available for help in Lansing 310 from 8pm-10pm Sunday through Thursday (every night except Friday and Saturday). The TAs are primarily for CS 124, but can also help with 220 when they are not overwhelmed with 124 students. For instance, the CS 124 homeworks are often due on Tuesdays so you probably want to avoid the Monday office hours (the Sunday office hours may also be busy). But definitely take advantage of this additional help whenever it is available and you need it.

  • [Sep 1] - My office hours are Mon/Wed 3PM-4PM, Thu 10AM-noon, and Fri 9AM-10AM. Please stop by with any and all questions or comments. If you can't make my office hours then send me an email and we can coordinate a meeting at another time. Also, feel free to stop by my office unannounced at any time and if I'm available I will meet with you.

  • [Sep 1] - Make sure you view the class schedule, lab schedule, and this page regularly.

Staff

Instructor: Marc Corliss (corliss at hws dot edu)
                   Office hours: Mon/Wed 3PM-4PM, Thu 10AM-noon, Fri 9AM-10AM.

Teaching Assistants:
     Keenan Simons (thaddeus dot simons at hws dot edu)
          Office hours: Sun 8pm-10pm in Lansing Lab (310).
     Nate Davidoff (Nathan dot Davidoff at hws dot edu)
          Office hours: Mon 8pm-10pm in Lansing Lab (310).
     Sara Young (sara dot young at hws dot edu)
          Office hours: Tue 8pm-10pm in Lansing Lab (310).
     Will van Steen (William dot VanSteen at hws dot edu)
          Office hours: Wed 8pm-10pm in Lansing Lab (310).
     Rob Hendry (robert dot hendry at hws dot edu)
          Office hours: Thu 8pm-10pm in Lansing Lab (310).

      Note: the TAs primarily handle CS 124, but they also can help with CS 220 when not overwhelmed with 124 students.

Course Summary

A broad introduction to computer architecture, this course shows students how computers really work and how millions of transistors come together to form a complete computing system. It uses a bottom-up approach starting with transistors, followed by logic gates, followed by basic processor components, complete processors, low-level machine instructions, and finally, assembly language. Each topic is built on top of the previous topics, which minimizes the amount of memorization the student must do.

This course will also act as an introduction to other courses in the broad area of systems including compilers (CPSC 333) and operating systems (CPSC 331). By the end of the course, students will understand the role of the compiler and operating system within a complete computer system (although they will of course not know how to design or implement either until after they have taken the later courses).

The prerequite for this course is CPSC 124 (introduction to programming). Students must have taken this course and received a grade of at least a C-. If that is not the case, the student should meet with the instructor before enrolling for the course.

Textbook

Introduction to Computing Systems: From Bits and Gates to C and Beyond by Patt and Patel (errata).

Schedule

The tentative class schedule and lab schedule are posted online. The schedule is split into several topics that usually make up one chapter of the textbook. If a homework or lab is due on some class day or lab day then the it is due at the start of class/lab. Exams (both the review and the actual test) and vacation days are indicated on both schedules. Labs will be posted to the lab schedule and homeworks will be posted to the class schedule on the day that they are assigned.

Course Work

Labs. This course has a required lab component. The labs give hands-on experience and a chance to get help from the instructor. Unlike in other courses, the labs are to be completed individually. Students will have to complete some lab exercises that must be turned in by the start of the following lab (a week later). Occasionally, a lab assignment will be due in two weeks rather than one week, which will be specified in the lab writeup. In these cases, the assignment will be worth twice as much as a one-week lab assignment. Late lab exercises will not be accepted, although the lowest lab will be dropped (for multi-week labs only 1 week's worth can be dropped). Lab exercises will be posted online for those who miss the lab.

Homeworks. There will be roughly 5 homeworks, which will cover the non-programming aspects of this course. These must be completed individually. Homeworks must be hand written or typed and a hard copy (i.e., on paper) must be handed in at the start of the class on the date that the homework is due. Late homeworks are not accepted.

Quizzes. There will be 7 short (10 minute) quizzes throughout the semester to help make sure that students keep up with the material. They may be given at any point during the class including at the start of class. In general, they will not be announced in advance, but the first quiz will be given Monday, September 8th. The lowest two grades will be dropped. If a student misses a quiz (for any reason), they will receive a 0, including if the student shows up late on a day where a quiz is given at the beginning of class.

Exams. There will be two midterm exams and a final exam. The midterm exams will be in-class, written (no programming on the computer), and closed book/notes. The first midterm is tentatively scheduled for Monday, September 29th. The second midterm is tentatively scheduled for Friday, November 7th. The final will be cumulative, but will emphasize aspects of the material covered after the second midterm. The final exam is scheduled for Friday, December 19th from 8:30AM to 11:30AM in Lansing 301 (our normal classroom). Note: the final exam date and time is scheduled by the registrar's office and will not be changed. Rescheduling or making up of exams will only be allowed for *compelling* circumstances. Arrangements must be made in advance for non-emergencies. Making up a missed exam will only be allowed with documentation from an appropriate person (dean, doctor, etc.).

Attendance/Participation. To get full credit for participation, students should attend all lectures (MWF, 10:10-11:05, Lansing 301) and labs (Th, 11:55-1:20, Library Multimedia Lab). Students can miss at most three combined lectures and labs (for any reason). If a student misses more than three classes (combined lectures and labs), they will lose 10% of their attendance/participation grade per day missed. In addition, if a student misses a lecture in which a quiz is given, they will receive a grade of zero for that quiz.

Grading

Labs: 35% (approximately 3.5% each)
Homeworks: 10% (approximately 2% each)
Quizzes: 10% (2% each)
Midterm exams: 20% (10% each)
Final exam: 15%
Participation, attendance, etc.: 10%

Academic Integrity

The Principle of Academic Integrity (see the HWS Catalogue, p. 33) governs the work completed in this course. The following outlines specifically how this principle applies.

Exams and Quizzes. All exams and quizzes are to be completed solely by the student whose name is on the paper. Unless otherwise specified, these are closed book/notes, which includes any materials not provided as part of the exam/quiz. Copying an exam will result in failure of the course and the case will be taken to the HWS comittee on standards. Copying a quiz will result in a 0. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards.

Labs. Lab assignments are to be completed individually by the student submitting the lab. The work that students submit must be their own. Students may not work with other students. Students may receive debugging help from a tutor, but anything beyond debugging should be referred to the instructor. Students must document and understand all the help received from the tutors, TAs, and the instructor (i.e., name of tutor/TA/instructor who helped and how they helped). Students may consult the book, their notes, any course materials provided in class or on the course website, and reference books found in the lab. Use of other materials (including websites) is not allowed. It is never acceptable for a student to be in possession of another person's program, either hardcopy or electronic (even if that person is not at HWS). Copying a lab assignment will result in a grade of 0 for all involved parties. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards.

Each program submitted for credit will be checked by a plaigarism detector called MOSS (http://theory.stanford.edu/~aiken/moss/) to determine if it was copied. MOSS is highly accurate at detecting plagiarized software (changing a few variable names, comments, etc., will not help). In addition, any student that submits a suspicious lab assignment will have to explain their code to the instructor. If they are unable to effectively explain the code, then they will not receive credit for the assignment. A second instance of plagiarism on a lab assignment will result in failure of the course and the cast will be taken to the committee on standards.

Homeworks. Homework assignments are to be completed solely by the student whose name is on the paper. Copying part or all of someone else's solution is prohibited and will result in a 0 on the assignment for all involved parties. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards.

Summary. The moral of the story is students should not cheat in this course. For each case of cheating, the student will receive a 0 on the assignment (except in the case of an exam, in which case, the student will automatically fail the course). For a second offense, the case will be taken to the committee on standards and will also result in failure of the course. It is always better to submit an incomplete solution rather than to submit a plagiarized solution.

Center for Teaching and Learning (CTL)

Hobart and William Smith Colleges encourage students to seek the academic collaboration and resources that will enable them to demonstrate their best work. Students who would like to enhance their study skills, writing skills, or have other academic inquiries should contact the CTL. You may visit the CTL web site to learn more about the services and programs that are available: http://www.hws.edu/academics/ctl/index.aspx

If you are a student with a disability for which you may need accommodations, you are required to register with the Coordinator of Disability Services at the CTL and provide documentation of the disability. Services and accommodations will not be provided until this process is complete. The web site for information pertaining to registration with the CTL and documenting disabilities is: http://www.hws.edu/studentlife/stuaffairs_disabilities.aspx

Resources