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.
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.
Provide all students with a broad foundation in the fundamental concepts of computer hardware and systems software.
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.
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.
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.
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:
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.
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.
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 | -- | -- |