|
CS 0447 and COE 0147: Computer Organization and Assembly Language
CRN 11067 (CS 0447): Monday & Wednesday, 3:00 PM - 4:15 PM, SENSQ 5502 (Cho)
|
02/03: Project #1 is available. It is due February 21 by 11:59 PM.
02/03: A study sheet is available for exam 1.
01/22: Unfortunately, Dr. Childers has an unavoidable absence this week. The Tue and Thu classes will be held as normal but covered by guest lecturers (Dr. Cho and Mr. Moore). Dr. Childers' office hours are also cancelled this week. If you have any questions, he is reading and replying to e-mail as quickly as possible. All will return to normal next week for the rest of the semester.
01/13: Important Reminder: Monday, Jan 16 is the MLK holiday. As a result, the Monday class is cancelled (CRN 11067). Per the course schedule, the Tuesday CS 447 section (CRN 24353) is also cancelled on Tuesday, Jan 17 to keep the two CS 447 lectures loosely synchronized. COE 147 (CRN 25253) will be be held on Tuesday, Jan 17.
01/09: Lab #1 is available; see your TA's web site (below). From this point onward, check the TA web site weekly for the lab.
01/08: We moved exam #2 to March 14/15 to better align with the schedule.
12/28: Due to limited recitation and classroom space, it is not possible to increase the class size beyond the stated maximum enrollment. If your preferred section is full, then consider the other section. It is also possible that seats may become available during the add/drop period. If you want to add the class (i.e., you aren't in it), you should attend lecture during the first week and keep checking whether a seats becomes free. During the first class, the instructor will say more about this topic.
12/19: You must register for one of the recitations, along with the course.
12/19: First class is Wednesday, Jan. 4 (11067, Dr. Cho) or Thursday, Jan. 5 (24353, Dr. Childers and 25253, Dr. Mohanram).
Course announcements will be put here. It is your responsibility to check the announcements regularly.
Important Links
Instructors
Dr.
Bruce Childers (childers "at" cs.pitt.edu)
Instructor for CS 0447 on Tue, Thu, 1:00-2:15PM (CRN 24353)
6409 Sennott Square
Office Hours: Tue and Thu, 2:15 PM - 3:45 PM
Dr. Sangyeun Cho (cho "at" cs.pitt.edu)
Instructor for CS 0447 on Mon, Wed, 3:00-4:15PM (CRN 11067)
5415 Sennott Square
Office Hours: Mon and Wed, 8:00 AM - 10:00 AM
Dr. Kartik Mohanram (kmram "at" pitt.edu)
Instructor for COE 0147 on Tue, Thu, 1:00-2:15PM (CRN 25253)
834 Benedum Hall
Office Hours: Tue and Thu, 2:15 PM - 3:45 PM
Please come earlier, rather than later to office hours. The start and end time for office hours are strict due to other commitments.
Appointments are also available. Please send e-mail to schedule an appointment.
Much of the information on this web page is tentative and subject to change. Watch the schedule and the web page for the latest information.
Teaching Assistants
Musfiq Rahman
Responsible for Monday and Wednesday CS recitation sections
E-mail: musfiq "at" cs.pitt.edu
Office: 6404 Sennott Square
Office phone: 412-624-9129
Office hours: M 11:00AM-1:00PM, 4:30-6:00PM and F: 12:00-1:00PM, 2:30-5:00PM
Web site for recitation: Click on name
John Wenskovitch
Responsible for Friday CS recitation sections
E-mail: jwenskovitch "at" cs.pitt.edu
Office: 5808 Sennott Square
Office phone: 412-624-2981
Office hours: W: 2:00-6:00PM and F: 2:00-4:00PM
Web site for recitation: Click on name
Jie Guo
Responsible for COE 147 section
E-mail: jig26 "at" pitt.edu
Office: 761A Benedum Hall
Office hours: M: 1:00-2:00PM and W: 1:00-2:00PM
Web site for recitation: Click on name
The TAs are your first source of information. If you have questions about the labs, recitations, exams, class lectures, etc., you should check first with one of the TAs before the instructors.
Description
The purpose of this course is to study the components of computing systems common to most computer architectures. In particular, this class is meant to introduce data representation, types of processors (e.g., RISC V. CISC), memory types and hierarchy, assembly language, linking and loading, and an introduction to device drivers.
Textbook
Computer Organization and Design - The Hardware/Software Interface, John Hennessy and David Patterson, FOURTH EDITION, Morgan Kaufmann. Be sure to buy the correct book edition. We will not use the Fifth edition this semester.
There will also be supplemental material in some lectures -- you are responsible for all information presented in class.
Simulator
We will use a MIPS simulator to run your assembly language programs. The simulator is MARS from Pete Sanderson and Ken Vollmar. You can get the simulator from their web site. I suggest that you install the simulator on your computer as you'll need it throughout the semester.
We will also use a logic simulator, called Logisim, in the second half of the semester. This simulator will be used in the last course project on how to implement a MIPS processor. You can get Logisim from this web site.
Requirements and Grading
The course includes exams, labs, and programming and circuit design projects. No extra credit will be offered. The grade distrbution is:
You may ask to have an exam, project or lab regraded. However, the entire exam, project or lab will be regraded. This may or may not result in a grade change, either up or down. To have an assignment regraded, you must hand in the item with a typewritten paragraph explaining what was not graded correctly. You must ask for the regrading by the next class period after the project, lab, or exam was returned. There will be no exceptions to this requirement.
Exams
There will be three exams: two mid-term exams and one final exam. The final exam is comprehensive: It covers all material in the course. The tentative exam dates are listed on the schedule. The final exam date is set by the University. If you are taking more than two finals on the same day, you must talk to your instructor at least two weeks before the final exam to make accommodations. Final exam dates are already known for all hourly courses; consult the University Registrar's course schedule and web pages for details.
Exams are closed book and an individual effort. You may use a simple non-programmable calculator. The use of simple calculators is recommended: The exams will require computing many values and it will be hard to do so without a calculator.
Labs
Labs will be conducted during recitation. The lab assignments will be distributed in recitation and turned in before the next lab via electronic submission. More information about the submission process will be given in the first recitation. A solution will be posted on the TA's web site for each lab within one to two weeks of the due date.
There will be twelve labs; the lowest two lab grades will be dropped (i.e., you can miss up to two labs without penalty). Points will be given for attendance on the lab assignments. We may grade labs in the recitation as a group. If you miss this grading, your lab will be recorded as a 0. This policy is intended to encourage you to regularly attend recitation.
You are allowed to collaborate with a partner in the lab unless noted otherwise. However, each person must turn in their own copy of the lab, with the name of their partner. Both names (your name and your partner's name) must appear on the assignment.
Projects
There will be three projects -- two programming projects and one design project. The programming projects will require that you write significant assembly language programs. The design project will require you to implement a significant logic circuit.
You must follow the requirements given in the projects to receive partial credit.
The projects will be posted on the CS 447/COE 147 web site on the day that they are assigned. The TA's web site may also give hints about the more difficult problems.
Solutions will not be provided for the programming and design projects.
You are responsible for visiting the main course and TA web sites to get the projects, solutions, and hints.
Late Assignments
A late assignment with a valid written excuse according to University rules will be accepted up to one week late without a penalty. Because two labs can be missed without penalty, late labs will not be accepted. Projects will be accepted up to 5 days late, with a 20% penalty for each day the assignment is late.
There will be no early exams. Make up exams must be pre-approved. No make up exams will be given that do not meet University rules and have proper (written) documentation.
All make up work (exams, projects) must be completed within one week of the original assignment.
Under extraordinary circumstances, such as an extended multi-week illness, other accommodations can be made for the course and this policy can be amended to permit some flexibility for completing the missed work.
Collaboration
All exams and projects (unless otherwise noted) are individual efforts. For projects, it is acceptable to talk with a fellow student about how to approach an assignment. It is not acceptable to collaborate on the actual assignment, such as writing a program together or reviewing each other's logic design. As noted above, you may collaborate with one other person (i.e., your lab partner) on a lab provided both names are listed on the assignment.
Viewing, copying or modifying assembly language or a logic projects from previous offerings of CS 447/COE 147 is considered collaboration. Similarly, be careful how you use Google. Using code or logic solutions from the web or other sources is collaboration. This kind of collaboration is not allowed by the policy of individual work. Be sure to secure your work; it is your responsibility to properly set permissions on your files, avoid losing USB drives, leaving print-outs on printers, etc.
Any deviation from the policy of individual work is considered cheating. The first case of cheating will result in a 0 for the assignment. A second case will result in an F for the course. In all situations, the appropriate Dean's office (ECE or FAS) will be notified. All parties involved in an incident will be considered to have cheated.
If you have any doubts about what is "cheating", ask the instructor for clarification before you do it. The instructor will make the final determination of what is considered cheating.
We may use automated techniques to easily detect cheating.
Attendance
Attending class is vital to success! It is unlikely you will do well in the course unless you attend lectures. You are responsible for all material presented in lecture, including material not directly covered in the textbook. If you must miss a class, you should ask your classmates for course notes. The instructor will not provide course notes. Extra credit may be occassionaly offered in class.
File Backups
It is your responsibility to backup your work regularly. Please consider using reliable and multiple ways to protect your files! No extensions for assignments will be approved due to failed laptops, hard drive crashes, lost USB drives, or other calamities that lead to lost or corrupted data. Per the policy on late assignments, you may turn in a project up to five days late, which should give sufficient time to recover a lost/corrupted project.
Cell Phones, Laptops, Tablets, PDAs (& other electronic devices)
Turn off your cell phone, laptop, PDA, etc., before lecture starts. If you want to use a laptop, PDA, cell phone or recording device to take notes, you must ask the instructor for permission.
Note for Students
If you have a disability for which you are or may be requesting an accomodation, you are encouraged to contact the Office of Disability Resources and Services, 216 William Pitt Union (412-648-7890), as soon as possible in the term. They will verify your disability and determine reasonable accomodations for this course.
Please look at the web pages for the joint BS/MS Computer Science program and the co-op program.
There are also many wonderful opportunities for graduate study in computer science. Ask the instructor if you'd like to know more about graduate school. It's a lot of fun!