computer organization
c m s c 311  
s p r i n g   2 0 0 2  

TENTATIVE
(as of Jan 30, 2002)

Instructor


Name Charles Lin
Section 0201
Lecture Time 3:30-4:45 PM, Tu/Th
Email clin@umd5.umd.edu
Phone 405-2709

Only call the instructor for administrative matters (e.g., you are sick and can't make the exam). You should not call about project debugging/homeworks. See TAs for that. Email is generally preferable, instead of calling.

Office Hours

Monday, 2:15-4 PM, and by appointment

Description

Prerequisite: CMSC 214 with a grade of C or better and CMSC 250 with a grade of C or better and permission of department.

Topic Introduction to assembly language. Design of digital logic circuits. Organization of central processors, including instruction sets, register transfer operations, control microprogramming, data representation, and arithmetic algorithms. Memory and input/output organization.

Texts

Text:
Principles of Computer Architecture, Murdocca & Heuring, First Edition, Prentice Hall. ISBN: 0201436647

This is the required textbook. Sorry that it is so expensive. You may wish to share textbooks with a friend or buy a used textbook.

Teaching Assistants

CMSC 311 shares common teaching assistants. These currently include:

Ransom is the "official" TA for section 0201, but will assist in answering questions from any 311 student. They will hold office hours in AVW 1151.

Office Hours

Ransom's office hours are: 11 AM to 2 PM on Tu/Th and by appointment.

Office hours for all TAs will be posted on Dr. Hugue's 311 webpage, located at the following link:

Visit Meesh's 311 Webpage

Webpage

Much of the course material will be available on the webpage. This webpage is located at:
    http://www.cs.umd.edu/class/spring2002/cmsc311/
It is your responsibility to read the webpage often.

In addition to this webpage, Dr. Hugue has provided a large number of resources on her main CMSC 311 including old homeworks, exams, etc.

Visit Meesh's 311 Webpage

Posting Account

There is a possibility of a programming project in this course. At this point, it hasn't been decided whether the project will be primarily for Charles Lin's sections and Dr. Hugue's sections or simply Charles Lin's sections.

If there are programming projects, students will be assigned accounts. Projects will be submitted on the OIT class cluster, just as in CMSC 214 and CMSC 114. Material will be provided via the posting account, once the posting account is set up.

More information will be posted later.

Course Grading Policy

Depending on whether a project is given or not, there will be two breakdown of course grades.

Version 1: No projects

Version 2: Projects

Since most students will be taking CMSC 330, there may be a third option which allows you to implement some of the project (for, say, 10 %), and have the final count the rest (for example, if you do part of project for 10%, then the final is worth 40%). In such a circumstance, you must do SOME of the project.

You will be informed which version will be used soon (currently, leaning to the second one).

The final course grades may be curved, if necessary, based on each student's total numeric score for all coursework at the end of the semester.

Regrade requests must be made within one week of the exam being returned. We reserve the right to regrade the entire exam, which may result in your exam receiving a lower score.

Homeworks/Readings

Homeworks are not required in this course. However, experience has shown that students who do not prepare for exams by working on homework problems traditionally do very poorly on exams. As you progress in your academic career, it should no longer be mandatory that homeworks be required, and you should learn to keep up.

Solutions to text problems and additional HW problems are available on Dr. Hugue's CMSC 311 website.

Additional problems may be provided to help you prepare for exams.

In addition, you are expected to read the textbook. While many students find such a task painful (often because English is a second language), it is, nevertheless, an important skill to learn, and it's better to learn now than later.

Projects

Assuming projects are assigned, you will be expected to write your own code. Copying other people's code, manipulating their code, or providing other people your own code will be considered a violation of academic integrity.

You may discuss ideas, design, etc. of code, however, all coding should be done independently. Essentially, the rule is that of plagiarism. If your code resembles another student's code too closely, it may be considered academic dishonesty.

If you have concerns about whether collaboration is considered a violation of academic integrity, contact your instructor.

Projects are meant to serve as additional educational tools in this course, but are not replacements for doing homework. In particular, projects represent a fraction of what is taught in this course.

Projects must be run on the OIT cluster, and must be submitted using the submit command.

Project Late Policy

There will be a late policy on projects, which will be stated in each project description.

Exams

There will be two midterms and a comprehensive final exam given on the dates shown earlier. The midterms will be given in class. The location of the final exam will be announced in class and in the webpage. There may be makeups given to students who are unable to attend the exam. Under most circumstances, the makeups will be given within a week of the original exam.

Makeups will only be given to students with valid documentation. If you are sick, you must have a doctor state dates of incapacitation. In particular, it must state (1) the date which you were incapacitated, (2) and that you were too sick to attend classes).

You must contact the instructor via email/phone as soon as possible. If the instructor is contacted over a week after the exam has been given, you may receive a 0 on the exam, for failing to contact the instructor in a timely manner.

Requests for regrades on an exam must be made IN WRITING within a week of the exam being handed back. If such a request is not made within a week, the instructor reserves the right not to regrade the exam.

Academic Honesty Statement

Please carefully read and consider the Computer Science Department policy regarding the use of computer systems, and the Office of Information Technology's policy regarding acceptable use of computer accounts provided for instructional use, in the Spring 2002 issue of the departmental newsletter, CS Tid-Bits, handed out with this syllabus. Note in particular the penalties for impermissible cooperation on programming projects, which is a violation of the University's Code of Academic Integrity. Any evidence of unacceptable use of computer accounts or unauthorized cooperation on exams or projects will be submitted to the appropriate authorities or to the Student Honor Council, which could result in an XF for the course, suspension, or expulsion from the University.

NOTE SPECIFICALLY that projects are to be done INDIVIDUALLY, unless otherwise specified by your instructor IN WRITING TO ENTIRE CLASS (verbal assurances don't count). For academic honesty purposes, projects are to be considered comparable to an extended take-home exam. That is, any cooperation or exchange of ideas which would be prohibited on an exam is also prohibited on a project assignment. Working IN ANY WAY with another student will be considered a violation and WILL BE REPORTED to the Honor Council. Students may not discuss pseudocode, design of a program or of individual functions, coding of individual functions, or any high-level code with anyone except the instructors and teaching assistants. Should you have difficulty with a programming assignment you should see your instructor or the teaching assistants in office hours, NOT solicit help from anyone else in violation of these rules. Students are welcome to study together or to receive help in learning the course concepts from any others, but exams and projects are to be solely and entirely each student's own work.


VIOLATIONS OF ACADEMIC HONESTY INCLUDE:

  1. failing to do all or any of the work on a project by yourself, other than assistance from the instructional staff.
  2. using any ideas or any part of another student's project, or copying any other individual's work in any way.
  3. giving any parts or ideas from your project, including test data, to another student.
  4. having programs on an open account or on a PC that other students can access.
  5. transferring any part of a project to or from another student or individual by any means, electronic or otherwise.
  6. publishing any of your code publicly (e.g., via a webpage) which other students can access, even if the project has already been completed.


IT IS THE RESPONSIBILITY, UNDER THE UNIVERSITY'S HONOR POLICY, OF ANY STUDENT WHO LEARNS OF AN INCIDENT OF ACADEMIC DISHONESTY TO REPORT IT TO THEIR INSTRUCTOR.

Course Topics (SUBJECT TO CHANGE)

This list may vary according to the pace of lecture topics.

Overview (1 lecture)

Number Represenation (3 lectures)

Combinational Logic

Web Accessibility