COSC 2200: Hardware Systems

Spring 2020

Course Syllabus: Meetings
Office Hours
Textbook
Outcomes
Policies
 • Attendance
 • Lab Sessions
 • ODS
Tentative Schedule*

Instructor

Patrick McGee
Email: patrick.j.mcgee@marquette.edu
Office Location: Cudahy 390

Lab TA
Jillian Kollross

Meetings

Lecture Section 101:
Mon/Wed/Fri 1:00pm-1:50pm, Cudahy Hall 131
Lab Section 401:
Tue 10:00am - 11:50am, Cudahy Hall 310 (Systems Lab)

Office Hours

Mon 5:00pm-6:00pm, Wed 5:00-7:00pm, or by appointment.
MSCS Department Logo

Textbook

ECA Textbook Cover
Essentials of Computer Architecture (Second Edition).
Douglas Comer
ISBN 978-1138626591
Chapman and Hall/CRC Press

Readings will be regularly assigned from the textbook.

Lectures will assume that students have already read the assigned chapters, and periodic reading quizzes may be assigned in D2L.

Course Outcomes

Course Description:

Overview of computer hardware and software with emphasis on computer architecture and machine level programming. Topics include digital logic, assembly languages, memory management, caching, pipelining, bus architecture, interrupts and I/O processing. Brief introduction to operating system components: memory management, input/output, file management, scheduling, resource management, layered operating system design.

Course Goals:

Provide all students with a broad foundation in the fundamental concepts of computer hardware and systems software.

Course Objectives:

By the end of this course, you should....

Course Policies

Grades

Student grades will be assigned based on evaluation of homework, projects, exams, and participation, as described below:

Expected Performance Curve:

A 95-100
A- 91-94
B+ 88-90
B 84-87
B- 81-83
C+ 77-80
C 73-76
C- 70-72
D 63-69
F below 63

Grades will be routinely posted in the gradebook on the course D2L site, as they become available.

Exams

Two one-hour midterm exams are scheduled during the semester. The Final Exam will take place on Friday, May 8th, in Cudahy 131, from 10:30AM to 12:30PM.

Attendance

Student attendance will not be explicitly tracked in lecture, but attendance will be tracked in lab sessions. Students who routinely miss lectures or lab sessions should expect to be unprepared to complete the assignments and exams upon which grades so heavily depend.

If you know you will be missing class or lab for a legitimate reason, I appreciate a heads-up, but in accordance with Marquette University Attendance Policies, I neither require nor accept documented excuses. Please have a peer in the class take notes in your absence, and get any assignments in ahead of the deadline.

As missing a lab session implicitly hurts your grade, please email me if you need to miss lab. If the reason is legitimate, I will understand.

The size and structure of this course will not normally allow acceptance of late work under any circumstances. There are enough opportunities for points in the course for most students to miss a few without severe consequences for their grades.

Laboratory Sessions

For the first time, this course has a required lab session, making it worth four credit hours. Each lab session is assigned one TA whose responsibilities include: Setting up the lab environment, providing exceptional assistance to students as needed, and reviewing each student's implementation ("demo") as completed. These two-hour sessions are a time for you to explore real-world systems and apply your knowledge from lecture. The TA will guide you through each lab, but here is a general description of what is expected:

Academic Integrity

All students are expected to abide by Marquette University's Policy on Academic Integrity, and I will proceed under the assumption that everyone has committed themselves to the University's Honor Pledge:

I recognize the importance of personal integrity in all aspects of life and work. I commit myself to truthfulness, honor, and responsibility, by which I earn the respect of others. I support the development of good character, and commit myself to uphold the highest standards of academic integrity as an important aspect of personal integrity. My commitment obliges me to conduct myself according to the Marquette University Honor Code.

The Honor Code has particular implications for computer scientists and engineers, as well as computing professors, whose course work is so readily duplicated and shared in our modern digital world.

I will strive to ensure that your assignments, labs, and exams are engaging, challenging, and worth your investment in time and energy. For your part, I expect you will work hard, strive to learn, and present your work with honesty and integrity.

There will be many opportunities for you to collaborate with your peers in this course, and I strongly encourage you both to seek help when you are stuck, and to share your knowdledge with your peers when you have achieved understanding. Problems will only occur if you falsely claim work as your own when it is not, or collaborate when an assignment has been specified to be individual work.

In the unlikely event of an academic integrity violation in this course, Marquette University's Procedures For Incidents of Academic Dishonesty will be closely followed.

Students with Disabilities

Marquette University is committed to providing access and reasonable accommodation in its education for individuals with disabilities. To request disability accommodation in your class please contact the MU Office of Disability Services, Marquette Hall, Suite 05, 1217 W. Wisconsin Avenue, (414) 288-1645, ods@marquette.edu. I am more than happy to help accommodate.

Tentative Schedule

Week Date Topics Readings Notes Assignments Lab Sessions
01 Jan 13 Introduction, Digital Logic Ch 1 (HW1 on D2L) 01: Breadboard Basics
02 Jan 20 Digital Logic Ch 2 NO CLASS 1/20: Martin Luther King, Jr. Day (HW2 on D2L) 02: Input, XOR, Output
03 Jan 27 Combinational and Sequential Logic 03: Adder
04 Feb 03 Data Representation Ch 3 (HW3 on D2L) 04: Latch
05 Feb 10 Processors, Pipelines Ch 4 HW4: Intro to ARM 05: Intro to ARM
06 Feb 17 Instruction Sets, RISC Exam #1 06: ARM Input Practice
07 Feb 24 Data Paths & Assembly Languages Ch 5, 6 HW5: Medium ARM 07: Strings in ARM
08 Mar 02 Addressing Modes Ch 7 HW6: Recursion in ARM 08: Recursion Practice
-- Mar 08 - Mar 15 -- -- NO CLASS: Spring Break -- --
09 Mar 16 -- -- NO CLASS: COVID-19 -- --
10 Mar 23 Activation Records Ch 8, 9 Online classes begin 09: Malloc
11 Mar 30 Memory and Storage Ch 10, 11 HW7: Final ARM 10: Heap Limits
12 Apr 06 Virtual Memory Ch 12 Exam #2 April 6 11: C Intro
13 Apr 13 Caches Ch 13 HW8: Decoder in C
14 Apr 20 I/O Ch 14, 15 12: Disassembly
15 Apr 27 Buses, Interrupts Ch 16 Withdraw deadline 05/01 HW9: Braille Decoder 13: Braille Lab
16 May 04 -- -- Final Exam May 8 -- --

As the instructor, I reserve the right to adjust this schedule as necessary.

Back to my homepage
[Revised 2020]