SYLLABUS

 

CPSC 312 Computer Organization
Spring 2009

 

Duncan M. (Hank) Walker (walker@cse.tamu.edu)

Tel: 979-862-4387
Office: H. R. Bright Building (HRBB) 515B

Graduate Advisor Tel: 979-845-4087

Graduate Advisor Office: Richardson 916C

Office hours:  TR 11:00am-12:00pm and by appointment. Office hours will be modified as needed

Teaching Assistant

Suneil Mohan

Email: suneil@cse.tamu.edu

Tel: 979-458-0833
Office: H. R. Bright Building (HRBB) 514B

Office hours:  TBA

1 Course Information

1.1 Course Description

CPSC 312 is an introductory course on computer organization. It provides insights into fundamentals of organization and structure of computer systems. One of the objectives of this course is to teach critical thinking, how to learn, and how to communicate technical concepts in the area of computer systems. These objectives will be met through lectures, challenging assignments, regular quizzes, and a final examination. The course consists of materials on the following topics: introduction to computer systems, data representation, machine language, processor architecture, memory hierarchy, linking, exception control flow, virtual memory, system level I/O, and network programming.

Several laboratory assignments will provide hands-on experience on some of the above topics. Projects allow students to implement material taught in the lectures and laboratory.

1.2 Catalog Description

Introduction to computer systems from programmer’s perspective: simple logic design, data representation and processor architecture, programming of processors, memory, control flow, input/output, and performance measurements; hands-on lab assignments.

1.3 Prerequisites

CPSC 221 Data Structures and Algorithms. You should have a clear understanding of data structures, including list, stacks, and queues. Your familiarity with recursion and exposure to complexity analysis are desirable. Lab assignments will require basic computer skills in implementing the above topics.

1.4 Textbook

Student textbook site: http://csapp.cs.cmu.edu/public/students.html.

Student textbook site: http://bcs.wiley.com/he-bcs/Books?action=index&itemId=0470044373&bcsId=4194

2 Course Topics, Quizzes and Assignments

Students are required to read the main textbook and other assigned materials as announced time to time. It is highly recommended to be familiar with the material ahead of the corresponding lecture. This course will focus on the topics shown below, which may not be covered in this order, or at all, if time does not permit it.

Course Topics and Corresponding Textbook Chapters

Week

Topics

Reading Materials

Chapter Numbers

Milestones

1-2

Computer Systems

Bryant Ch. 1

 Pre-Test

2-5

Data representation,  Arithmetic, Logic Design

Vahid Ch.1-4

Q1, HW1, HW2

5-7

Machine language

Bryant Ch. 3

Q2, HW3

7-10

Processor architecture

Bryant Ch. 4

Q3, HW4, Project 1

10-12

Memory hierarchy

Bryant Ch. 6

Q4, HW5,

12-13

Virtual memory

Bryant Ch 10

HW6, Q5

14

System level I/O

Bryant Ch 11

 Project 2

15

Review

 

Final Exam

3 Grading Scheme and Course Requirements

3.1 Attendance Policy

Class attendance is strongly recommended. Students are responsible for any material missed. Material covered in the lectures may not be found in the textbook or the slides. Missed exams, quizzes and class presentations may be made up only for a university-excused absence. Other special situations must be discussed with the instructor in advance of the exam.

 

3.2 Grading

The course consists of lectures, quizzes, homeworks, lab assignments, projects and final examination. The grade will be computed as follows:

 

Course Grading

Projects

15%

Homework

15%

Laboratory Assignments

20%

Quizzes

25%

Final exam

25%

3.3 Examinations

The quizzes will be held in class with exact dates determined during the semester. Note that there is no mid-term exam. The quizzes are scheduled after each chapter is completed. The quizzes and final exam will generally test your knowledge of assignment material, so you are responsible for mastering all lab, homework, and project material submitted with other partners, as if you did all the work by yourself. All exams will be closed book and closed notes (unless otherwise stated). The nature of the course material is such that the final exam must be cumulative.

3.4 Assignments

Homework, lab exercises and project are substantial assignments.

 

Homework Assignments: Homework will be assigned sporadically, typically consisting of end-of-chapter exercises. Homework assignments can be carried out by one or two people, unless stated otherwise. Assignments are expected to be completed in one to two weeks.

 

Lab Exercises: Labs are intended to prepare you to tackle the projects, and you will typically be able to complete labs during the assigned lab period. Written lab work will be accepted up to the beginning of the following lab period. To obtain credit for a lab you typically must obtain a “check-off” from your TA, signifying that you completed the work during the scheduled lab time. You are responsible for attending lab and demonstrating to your lab instructor that you completed the work.

 

Course Projects: The course projects will integrate most concepts covered during the semester, but it are more open-ended than regular assignments. A written proposal and a final report will be required. The final report and program source code will be due by the deadline announce in the class. The projects will be carried out by a group of two to four people. You are encouraged to form groups as early as possible.

 

Course labs and projects will involve programming and solving problems in computer organization in C or C++ and the SystemC language. All tools are run on departmental UNIX/Linux and Windows PC systems.

 

Assignments will be placed on the course web page. The correct approach is to start working on assignments as early as possible and contact us when you encounter difficulties. In general, the closer to the deadline you request our assistance the harder it might be to obtain our help.

3.5 Deadline Policy

Turn in all work by the established deadline. In case you have difficulties finishing an assignment contact the TA or the Instructor before the deadline. Late work can be accepted only under circumstances beyond student's control and after arrangement with the Instructor, prior to the deadline. Note: work turned-in on time is eligible for partial credit. It will always be better to turn work in by the deadline, as trying to ``perfect'' it and turning it in late will give you no points at all.

3.6 Submission of Work and Late Submission Policy

All assignments/deliverables must be submitted electronically, by the due date and time, using the turn-in procedure on CSNET. Late submission beyond the cutoff will not be accepted in general, unless a University sanctioned excuse is provided ahead of time. A student will earn points when he/she submits the assignment on time, by the partial credit policy. Note that email submissions will not be accepted (they will be ignored without notice). You have to follow the submission and media policies and guidelines published on the course Web site. 

 

In general, late submission will be penalized with a loss of 25% of the total points earned per day late.

 

Partial credit will be given based on the work submitted.

3.7 Re-grading Policy

A student can request re-grading of assignments and exams, if he/she believes that the points assigned are inconsistent with the quality and merits of the submitted work. To request re-grading you have to follow the guidelines below.

  1. Re-grading requests must be submitted AT MOST ONE WEEK AFTER the item has been graded and returned to the student and solutions have been made public. After this time, NO re-grading requests will be honored.
  2. Re-grading requests must be as specific as possible and must be accompanied by a reasonable amount of justification and documentation. Requests must be in written form for major assignments and exams.
  3. E-mails must be sent to TAs and the instructor within the one week time limit.

3.8 Excused Absences and Make-up Policy

Make-ups for assignments and exams will be given only for university-excused absences. Prior arrangements with the instructor must be made when feasible and official verification of circumstances necessitating the absence will be required.

3.9 Course Conduct and Academic Integrity

Each assignment will state the number of people who can work together in a group. Some assignments will be done by students individually. Partners will turn in a single assignment paper (with each partner's name and section number on it) and each partner will receive the same grade. You are also free to work individually. Acceptable collaboration with students not on your team (or for an individual assignment) includes: (1) discussing the assigned problems to understand their meaning, (2) discussing possible approaches to assigned problems, or (3) discussing general programming principles in the solution of programming  problems or UNIX system features that will help solve the problem. However, you must explicitly acknowledge any substantive help received from someone during the course of the preparation of your solution. 

Unacceptable collaboration on homework includes: (1) copying (verbatim use) of physical papers or computer files, or (2) submission of solutions that are jointly authored, or authored either wholly or in part by other individuals not on your team.

In general, the strategy and approach of solutions may be developed jointly but all actual solutions must be constructed and written up by individual teams.  No code may be shared between teams. For written assignments, solutions may sketched out with other teams, however each team must construct the final form of their solution individually and write-up their own solution. You should make sure all of your files are properly secured since you may be responsible if some one copies your files.

Should questions arise during the course of working on a problem, please feel free to contact the instructor either by telephone, electronic mail, or by an office visit. In principle, if you work with others in good faith and are honest and generous with your attributions of credit you will have no problems.

4 Academic Misconduct

This course is governed by the Aggie Code of Honor and Texas A&M University Student Rules (http://student-rules.tamu.edu). This includes academic misconduct such as plagiarism and cheating. The penalties range from a zero grade on an assignment to expulsion from the university. The instructor of this course has had students expelled for scholastic dishonesty.

Aggie Honor Code: An Aggie does not lie, cheat, or steal or tolerate those who do.

 

Upon accepting admission to Texas A&M University, a student immediately assumes a commitment to uphold the Honor Code, to accept responsibility for learning and to follow the philosophy and rules of the Honor System. Students will be required to state their commitment on examinations, research papers, and other academic work. Ignorance of the rules does not exclude any member of the Texas A&M University community from the requirements or the processes of the Honor System. For additional information, please visit http://www.tamu.edu/aggiehonor. On all course work, assignments, and examinations at Texas A&M University, the following Honor Pledge shall be preprinted and signed by the student:

 

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work.

5 Disabilities

The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities.  If you believe you have a disability requiring an accommodation, please contact Disability Services, in Cain Hall, Room B118, or 845-1637. For additional information, see http://disability.tamu.edu. If you need accommodation, identify yourself to the instructor in a timely manner.

6 Copyrights

The materials used in this course are copyrighted. By “materials,” we mean all documents and Web site contents generated for this class, including but not limited to syllabi, lecture materials, problems, and readings. Their usage is limited to your private personal use. Any other use requires permission of the copyright holders.