Course Code: CSCI 341 Computer Organization
Semester Year: Spring 2021, January 12 - May 14
Credit Hours: 3.0
Class Meeting Times: Section C: 3:00-3:50 pm MWF
Class Location: Zoom (links on Canvas)
This is a long document; some content you may see in other syllabi, some is specific to this course. Do not assume 262 policies apply in this class - this syllabus lays out this course’s policies. Be sure to read it all, so you are aware of this course’s policies and expectations.
Instructor: Prof. Amelia Read read (at) mines (dot) edu
Office Phone: 720-432-2366 (cell)
Office Hours: 10am-11:30am Monday, 2pm-4pm Tuesday, 6pm-7:30pm Wednesday or by arrangement on Thursday or Friday (link in Canvas)
Course Coordinator: Dr. Qi Han qhan (at) mines (dot) edu
Teaching Assistants (TAs)
(shared with Sections A & B)
- Ethan Perry eperry1 (at) mymail (dot) mines (dot) edu
- Jack Carmichael jcarmichael (at) mymail (dot) mines (dot) edu
Office Hours: Tuesday 4pm-6pm (link in Canvas) - Audrey Horne audreyhorne (at) mymail (dot) mines (dot) edu
Office Hours: Monday 5pm-7pm (link in Canvas)
Prerequisites
The prerequisite is CSCI-261 Programming Concepts. The corequisite is CSCI-262 Data Structures
This course includes programming in MIPS assembly, applying concepts from CSCI 261 and CSCI 262.
Required Technology
- Internet connection; A reliable PC; Web browser for Canvas, ZyBooks, & Piazza; Zoom; Java (to run MARS simulator). I also recommend VLC to watch downloaded videos, and installing Canvas & Piazza on your phone to get notifications.
Online Community and Communication
Course flow, grades, quizzes, homework, and programming assignments will be provided and submitted on Canvas. Please upload a profile picture similar to the type used on your blaster card, so we can all get to know each other in this online format.
That profile picture should also be used on Zoom and Piazza.
We use Piazza in the class for communicating with the instructor, TAs, and your classmates.
Welcome to Computer Organization
We are going to make use of your programming skills to explore the simplest, yet most complex, of computer languages, assembly. Assembly is the bridge between software and hardware - the software/hardware interface - so it will show us how a CPU behaves, what compilers have to consider, and what memory-constrained devices have to deal with. These are critical skills in the current technological world of gaming, hacking, and big data.
Course Description
CSCI 341 covers the basic concepts of computer architecture and organization. Topics include machine level instructions and operating system calls used to write programs in assembly language, computer arithmetics, performance, processor design, and pipelining techniques. This course provides insight into the way computers operate at the machine level.
Learning Outcomes
At the end of this course, students will be able to:
- Recognize and manipulate numbers stored in digital computers
- Utilize the MIPS instruction set to translate snippets of C programs to assembly and vice-versa
- Describe the interface between the MIPS instruction set and hardware
- Build a five-stage pipelined datapath from a single-cycle datapath to execute a selected set of MIPS instructions
- Explain principle of locality and its relationship to memory hierarchy
- Measure CPU performance from IC, CPI, and CC Time
Textbook and Other Reading Materials
NOTE: the following resource is REQUIRED. I assign readings and activities in the zyBook.
-
Zybooks Computer Organization and Design ZyBooks edition, Pattersen and Hennessy. This includes material from the fifth edition, reorganized to match class flow.
To purchase the book:
-
Click on your zyBooks link in your learning management system (Do not go to the zyBooks website and create a new account)
-
Subscribe: A subscription is $72. Students may begin subscribing on Dec 29, 2020 and the cutoff to subscribe is Apr 28, 2021. Subscriptions will last until May 28, 2021.
-
-
Additional resources will be provided in the Canvas course shell.
Assessments
Reading activities: You will be working on activities in the zyBook to show an understanding of the material provided in the text, due before the class the reading applies to; these activities show a basic understanding of the material and comprise 5% of your course grade.
Quizzes: You will have a timed quiz to complete each Friday, consisting of questions based on that week’s material. The quiz is open for 20 minutes once started, or adjusted per accommodations. These quizzes show further understanding of the material and comprise 20% of your course grade. One submission only is permitted; be on a reliable internet connection when you start the quiz.
Homework will show a deeper comprehension of the material, giving you an opportunity to apply what you have learned in new scenarios not covered in the book or class. These will be topical questions or programming assignments. The programming assignments will help you develop your skills with assembly language, while the topical questions will further prepare you for the assessments made in the midterms and final exams as well as showing the ability apply the material learned. These will generally be due on Tuesdays, with some adjustments around school closures. The homeworks comprise 20% of your course grade.
Midterm and Final: The exams are comprehensive assessments giving you an opportunity to show that the material has been internalized and can be applied in time-limited situations. The midterm is 25% of your course grade, and the final exam is 30% of your course grade.
Grading Policy
The following percentages show how final grades will be calculated.
item | percentage |
---|---|
reading activities | 5% |
quizzes | 20% |
homeworks | 20% |
midterm | 25% |
final exam | 30% |
Letter grades will be calculated based on the following intervals:
+ | interval | - |
---|---|---|
A (93+) | A– (93- to 90+) | |
B+ (90- to 87+) | B (87- to 83+) | B– (83- to 80+) |
C+ (80- to 77+) | C (77- to 73+) | C– (73- to 70+) |
D+ (70- to 67+) | D (67- to 63+) | D– (63- to 60+) |
F (60-) |
Coursework Return Policy
We aim to return on-time coursework with feedback and grades within 4 days of the due date if submitted on time. Reading and quizzes are usually auto-graded, if manual re-grading is required it will be completed within 4 days of your request. We aim to return late coursework within 1 week of its submission. If outside events slow the return of coursework, students will be notified along with an expected return date.
If you do not understand from the feedback provided on your coursework how to improve your learning performance, please contact your instructor.
Expectations for Success
-
You are expected to engage in all course activities, tasks, and assignment as an emerging professional. The Mines Academic Integrity Policy and CS@Mines Collaboration Policies form a core part of your expected ethical behavior. Make sure you are behaving with the same level of professionalism that would be expected at a future full-time position. My general rule of thumb is: informal is acceptable, but disrespectful is not. For example, you can address me as Amelia, Prof. Read, or Miss Read, but do not address me as “Hey”.
-
In addition to actively participating during the class time each week, you are expected to spend 6 to 9 hours on this course each week outside of class. Out-of-class activities include active reading, homework, programming assignments, and exams. Examine your weekly schedule and plan where you will be working on CSCI 341: block off class times and sufficient time to complete reading activities, quizzes, homework, and exams. Time management is a critical skill for success in this class, further studies, and professional work.
-
Reliable internet and computer access are important; if your access is spotty, develop a backup plan to ensure you can participate in class and complete and submit work on time.
-
All reading, quizzes, and homeworks need to be turned in by the dates and times they are due. Zybook submissions must be complete on Zybooks by the Zybooks due date/time. Canvas submissions (quiz and homework) must be completed by the Canvas due date/time; if Canvas marks it as late, then it is late. Early submission is permitted.
-
Reading activities and quizzes are not accepted late without arrangement prior to the due date or extenuating circumstances preventing prior arrangement.
-
A 10% penalty per day (or part of a day) will be applied to homework submitted late. Homework will not be accepted more than 1 week late.
-
If you have an excused absence for pre-planned activities on due dates, those due assignments must be turned in before the due date.
-
Other excused absences must be discussed with the instructor and a plan of action defined prior to the due date. This may include an adjusted due date, an adjusted late penalty, or an adjusted assignment, at the discretion of the instructor to ensure course expectations, requirements, and outcomes are met.
-
It is your responsibility to check your submissions on Canvas and ensure the files are not corrupt and are gradable. If you turn in something that the instructor/TAs cannot open, is for a different class, or is not in the correct format, that is an automatic 0 on the assignment.
-
If you are absent, you are responsible for determining what work was missed and for putting forth a good faith effort to review the material. Once the material is reviewed, bring questions to the instructor and TAs as quickly as possible. The material in this class builds on itself from week to week, so staying on track and catching up quickly is important for your success.
-
Be proactive and communicate your course-related concerns and needs to your instructor in a timely manner.
-
Be aware and follow the university’s code of conduct.
-
CS@Mines takes academic integrity seriously. The penalty for violating academic integrity will be determined by the instructor on a case-by-case basis. Be aware of the CS@Mines policy on collaboration. I do not want to see any academic dishonesty in this class! Seek help before this becomes a possibility for you. Note that no sharing of actual work/answers/code on a homework or programming assignment is permitted by the collaboration policy or this class, unless specifically stated otherwise in the assignment description.
-
Prepare for a comprehensive final exam.
-
No accommodations will be made for exams unless there is an excused absence.
-
Exams are scheduled in the common exam schedule in the weeks noted in the schedule at the end of this syllabus. Make your travel plans outside these weeks.
-
Due to the pandemic, the class quiz will be a Canvas quiz that is available for 24 hours starting at 3pm each Friday, so that they can be completed asynchronously for those unable to attend live. These quizzes are timed (20 minutes, or adjusted for accomodations) and are individual activities - do not share the questions, your work, or the answers with anyone else. You will be expected to complete all quiz activities by the due date without prior arrangement.
-
Recordings of classes will be provided by the next morning at 10am; if recordings fail for some reason, a replacement recording will be provided by the next day. Note that chat (not including private chat) and automatic transcripts/subtitles are also be provided.
-
Be active and physically take notes/write questions when participating live or viewing the recording.
-
You are expected to be courteous during live class, especially during in-class activities.
-
Use Piazza for CSCI 341 questions. First do a quick search to see if your question has already been addressed. If not found, go ahead and post your question so that the instructor, TAs, or another student can address it. Do not post your own work that you plan to submit publicly on Piazza, or request solutions to assignments. If you are unsure, submit it privately to the Instructors on Piazza to share it with just me and the TAs.
-
Use email, a private message on Piazza, the Canvas Inbox, or my office hours if you wish to contact me about your grade, an excused absence, or other matter not appropriate to share with the class as a whole. I will return messages within 24 hours during the week, possibly longer on the weekends.
Zoom Etiquette
Our class size is large, so please follow these for a successful class session:
- If your connection drops, rejoin when you can; recordings will be available if you are unable to re-join live.
- Join with your video on but muted. Only unmute to speak, or when in a break-out room for group discussions, or when called upon in the recorded class. Re-mute once done talking. Say your name when you begin talking.
- If you are not comfortable being recorded, remain muted and use the chat or submit questions on Piazza or during office hours. Only the speaker’s video appears in the recordings.
- Open the participants panel so that you can raise your hand if you have a questions, and to answer yes/no questions.
- Open the chat panel to see shared information and to enter questions.
- Questions are welcome: unmute and ask a question, or type it into the chat at any time.
- We may use breakout rooms in small groups then rejoin to discuss results. Breakout rooms are not part of the course recordings. Note that it is easy to mis-click and leave the class rather than return to the main room; if that happens, re-join class as quickly as you can so as not to miss any further material.
- If you would like clarification on an item, note there will be limited time around classes on Zoom. I aim to open the Zoom room 5 minutes before each class, and stay 5 minutes after. If you are unable to use that time, please post on Piazza, email me, or come to office hours.
Pandemic Policies
Mines has put in place several policies related to course management during the pandemic. Those policies will be applied as appropriate to this class, and may impact existing policies.
Oredigger Promise: We Climb Together
Orediggers climb together. Orediggers look out for each other.
It will take a shared commitment from each and every one of us to stop the spread of COVID-19, open campus and be together at Mines this year. We take great pride in being a top engineering and applied sciences university and we will strive to be the exemplar in preventing the spread of COVID-19 in a university setting.
Therefore, as a member of the Oredigger community, I promise to protect classmates and colleagues, our families and neighbors, and myself by adopting the practices and attitudes summarized below; I will:
- Complete training sessions to learn required safety practices and expectations for learning, working, and living on campus.
- Monitor my health daily. I will report to a medical professional if I experience any of the COVID-19 symptoms: fever of 100.4F or higher, dry cough, difficulty breathing or shortness of breath, chills, unusual muscle aches, sore throat, or new loss of taste or smell.
- Stay home if I have COVID-19-related symptoms, even if I feel well enough to come to campus.
- Isolate and self-quarantine for the prescribed period of time after exposure to someone who is ill or has tested positive for COVID-19.
- Maintain appropriate social distancing in all settings, both on- and off-campus.
- Wear an appropriate face covering over my mouth and nose when indoors and in any other setting where it is difficult to maintain social distancing, and use any other protective gear prescribed by the university.
- Wash my hands frequently using soap and water or hand sanitizer. Contribute to the cleaning of classroom surfaces as requested.
- Carefully observe and follow campus and building instructional signs and directions.
- Participate in COVID-19 testing and contact tracing to preserve the wellness of the community.
- Be positive and gracious when others provide safety reminders and suggestions.
- Be attentive and helpful to anyone around who may be in need of support.
Expectations of online etiquette or netiquette
Here are few do’s and don’ts about communicating in your course through emails or in online discussion forums (Piazza and Canvas):
- Do…
- Ask questions and engage in conversations as often as possible—feel free to contact the instructor via the discussion forum for questions or via email or other communication.
- Be patient and respectful of others and their ideas and opinions they post online.
- Remember to be thoughtful and use professional language. Keep in mind that things often come across differently in written text, so review your writing before posting.
- Be prepared for some delays in response time, as “virtual” communication tends to be slower than “face-to-face” communication.
- Contact the instructor if you feel that inappropriate content or behavior has occurred as part of the course.
- Check the syllabus and course policies stated by your instructor to know what to expect about your instructor’s turnaround time for responding.
- Do NOT…
- Use inappropriate language—this includes, but is not limited to, the use of curse words, swearing, or language that is derogatory.
- Post inappropriate materials—for example, accidentally posting/showing a picture that is not appropriate for the course content.
- Post in ALL CAPS, as this is perceived as shouting and avoid abbreviations and informal language (“I’ll C U L8R”).
- Send heated messages even if you are provoked. Likewise, if you should happen to receive a heated message, do not respond to it.
- Send an email or post to the entire class, unless you feel that everyone must read it.
Diversity and Inclusion
At Colorado School of Mines, we understand that a diverse and inclusive learning environment inspires creativity and innovation, which are essential to the engineering process. We also know that in order to address current and emerging national and global challenges, it is important to learn with and from people who have different backgrounds, thoughts, and experiences.
Our students represent every state in the nation and more than 90 countries around the world, and we continue to make progress in the areas of diversity and inclusion by providing Diversity and Inclusion programs and services to support these efforts.
Disability Support Services
The Colorado School of Mines is committed to ensuring the full participation of all students in its programs, including students with disabilities. If you anticipate or experience any barriers to learning in this course, please feel welcome to discuss your concerns with me. Students with disabilities may also wish to contact Disability Support Services (DSS) to discuss options to removing barriers in this course, including how to register and request official accommodations. Please visit their website at disabilities.mines.edu for contact and additional information. If you have already been approved for accommodations through DSS, please meet with me at your earliest convenience so we can discuss your needs in this course.
Accessibility within Canvas
Read the Accessibility Statement from Canvas to see how the learning management system at the Colorado School of Mines is committed to providing a system that is usable by everyone. The Canvas platform was built using the most modern HTML and CSS technologies, and is committed to W3C’s Web Accessibility Initiative and Section 508 guidelines.
Discrimination, Harassment, and Title IX
All learning opportunities at Mines, including this course, require a safe environment for everyone to be productive and able to share and learn without fear of discrimination or harassment. Mines’ core values of respect, diversity, compassion, and collaboration will be honored in this course, and the standards in this class are the same as those expected in any professional work environment. (More information can be found here.) Discrimination or harassment of any type will not be tolerated. As a participant in this course, we expect you to respect your instructor and your classmates. As your instructor, it is my responsibility to foster a learning environment that supports diversity of thoughts, perspectives and experiences, and honors your identities.
To help accomplish this:
- Course rosters are provided to the instructor with the student’s legal name. I will honor your request to address you by a preferred name or gender pronoun. Please advise me of this preference early in the semester so that I may make appropriate changes to my records.
- If something is said or done in this course (by anyone, including myself) that made you or others feel uncomfortable, or if your performance in the course is being impacted by your experiences outside of the course, please report it to:
- Me (if you are comfortable doing so)
- Wellness Center - Counseling (https://www.mines.edu/counseling-center/)
- Speak Up (https://www.mines.edu/speak-up/) - Anonymous Option
In this course, we will cultivate a community that supports survivors, prevents interpersonal violence, and promotes a harassment free environment. Title IX and Colorado State law protects individuals from discrimination based on sex and gender in educational programs and activities. Mines takes this obligation seriously and is committed to providing a campus community free from gender and sex-based discrimination.
Discrimination, including sexual harassment, sexual violence, dating violence, domestic violence, and stalking, is prohibited and will not be tolerated within the Mines campus community. If these issues have affected you or someone you know, you can access the appropriate resources here: http://www.mines.edu/title-ix/. You can also contact the Mines Title IX Coordinator, Camille Torres, at 303.384.2124 or titleix@mines.edu for more information.
It’s on us, all of the Mines community, to engineer a culture of respect.
CARE @ Mines
If you feel overwhelmed, anxious, depressed, distressed, mentally or physically unhealthy, or concerned about your wellbeing overall, there are resources both on- and off-campus available to you. If you need assistance, please ask for help form a trusted faculty or staff member, fellow student, or any of the resources below. As a community of care, we can help one another get through difficult times. If you need help, reach out. If you are concerned for another student, offer assistance and/or ask for help on their behalf. Students seeking resources for themselves or others should visit care.mines.edu.
Additional suggestions for referrals for support, depending on comfort level and needs include:
- CARE at Mines: care.mines.edu for various resources and options, or to submit an online “CARE report” about someone you’re concerned about, or email care@mines.edu
- CASA - https://www.mines.edu/casa/ for academic advising, tutoring, academic support, and academic workshops
- Counseling Center – https://www.mines.edu/counseling-center/ or students may call 303-273-3377 to make an appointment. There are also online resources for students on the website. Located in the Wellness Center 2nd floor. Located at 1770 Elm St. (photo below)
- Health Center - https://www.mines.edu/student-health/ or students may call 303-273-3381 for appointment. Located in Wellness Center 1st floor.
- Colorado Crisis Services - For crisis support 24 hrs/7 days, either by phone, text, or in person, Colorado Crisis Services is a great confidential resource, available to anyone. http://coloradocrisisservices.org , 1-844-493-8255, or text “TALK” to 38255. Walk-in location addresses are posted on the website.
- Food and/or Housing - Any student who faces challenges securing their food or housing and believes this may affect their performance in the course is urged to contact the Dean of Students for support. Furthermore, please notify your professor if you are comfortable in doing so. This will enable your professor to provide resources that may be available.
All of these options are available for free for students. The Counseling Center, Health Center, and Colorado Crisis Services are confidential resources. The Counseling Center will also make referrals to off-campus counselors, if preferred.
In an emergency, you should call 911, and they will dispatch a Mines or Golden PD officer to assist.
Absence Policy
The Student Absences webpage outlines CSM’s policy regarding student absences. It contains information and documents to obtain excused absences.
Note: All absences that are not documented as excused absences are considered unexcused absences. Faculty members may deny a student the opportunity to make up some or all of the work missed due to unexcused absence(s). However, the faculty members do have the discretion to grant a student permission to make up any missed academic work for an unexcused absence. The faculty member may consider the student’s class performance, as well as their attendance, in the decision.
In the case of an absence, the student is responsible for determining what work was missed and for putting forth a good faith effort to review the material on their own.
Policy on Academic Integrity/Misconduct
The Colorado School of Mines affirms the principle that all individuals associated with the Mines academic community have a responsibility for establishing, maintaining an fostering an understanding and appreciation for academic integrity. In broad terms, this implies protecting the environment of mutual trust within which scholarly exchange occurs, supporting the ability of the faculty to fairly and effectively evaluate every student’s academic achievements, and giving credence to the university’s educational mission, its scholarly objectives and the substance of the degrees it awards. The protection of academic integrity requires there to be clear and consistent standards, as well as confrontation and sanctions when individuals violate those standards. The Colorado School of Mines desires an environment free of any and all forms of academic misconduct and expects students to act with integrity at all times.
Academic misconduct is the intentional act of fraud, in which an individual seeks to claim credit for the work and efforts of another without authorization, or uses unauthorized materials or fabricated information in any academic exercise. Student Academic Misconduct arises when a student violates the principle of academic integrity. Such behavior erodes mutual trust, distorts the fair evaluation of academic achievements, violates the ethical code of behavior upon which education and scholarship rest, and undermines the credibility of the university. Because of the serious institutional and individual ramifications, student misconduct arising from violations of academic integrity is not tolerated at Mines. If a student is found to have engaged in such misconduct sanctions such as change of a grade, loss of institutional privileges, or academic suspension or dismissal may be imposed.
The complete policy can be found in the Mines’ Policy Library.
In addition to the Mines policy, CS@Mines faculty have adopted a Collaboration Policy for all courses. This policy is a minimum standard; we augment this policy below. Read the CS@Mines Collaboration Policy, and be sure to note these items also:
For CSCI 341, we also apply these collaboration items:
- You are encouraged to discuss ideas around assignments with other students in the class, but do not share answers or code in whole or in part.
- If you discuss an assignment with anyone (not counting instructors/mentors), you must list their names in your submitted assignment AND provide a brief summary of the discussion, including its benefit to you/impact on your submitted work.
- You are not allowed to give answers/code you have developed to another student NOR copy answers/code created by another person (student or otherwise).
- You can ONLY share your screen showing your answers/code in a 1:1 breakout room with an instructor/mentor/TA, not with another student.
- Any discussion with another person about your answers/code (or theirs) is subject to the empty hands policy, which means you leave the discussion without any record - electronic, mechanical or otherwise - of the discussion.
- Any material from any outside source, such as books, projects, and in particular, from the Web, should be properly referenced. Such sources should not be directly quoted/used in your answers or code - your work needs to be your own, to develop your problem solving and design skills.
- Student groups and peer reviewers formed for the purpose of an assignment or exam are permitted to share answers/code as described in the assignment or exam within the group, but otherwise the items of the Collaboration Policy and these items apply.
If you are aware of students violating this policy, you are encouraged to inform me (the instructor). Violating this policy will be treated as an academic misconduct for all students involved (both the provider and the receiver of answers).
NOTE: All issues of misconduct are reported to the Dean of Students. Academic misconduct may result in course failure for all students involved and an entry on your school record.
Course Schedule
This schedule is tentative, and is subject to change. Note, reading includes activities in the zyBook; those are required to be completed prior to the start of class. Assignments are due the date they are listed unless a due date is given in parentheses.
Please check Canvas for any updates to this schedule.
week | date | topic | reading | assignments |
---|---|---|---|---|
MODULE 1: Overview and Computer Numbers | ||||
1 | 1/13 | Introduction, Integers | Syllabus, 1.1 - 1.6 | HW 1 (1/20) |
1/15 | Integers, Floating point representation | 1.7 | Quiz 1 | |
2 | 1/18 | no class | ||
1/20 | Floating point representation | 1.7 | HW 2 (1/26) | |
MODULE 2: Assembly Programming in MIPS | ||||
1/22 | Arithmetic instructions, MARS introduction | 2.1-2.4, Canvas | ||
2 | 1/25 | Memory access instructions | 2.5-2.6 | |
1/27 | Memory access continued | 2.5-2.6 | HW 3 (2/2) | |
1/29 | Bit-wise instructions | 2.7 | Quiz 3 | |
4 | 2/1 | Decision making instructions | 2.8 | |
2/3 | Programming examples | 8.1-8.5 | HW 4 (2/9) | |
2/5 | Inequality comparison | 2.9 | Quiz 4 | |
5 | 2/8 | Arrays vs. pointers | 2.9 | |
2/10 | Procedures | 2.10 | HW 5 (2/17) | |
2/12 | Procedure conventions | 8.6, Canvas | Quiz 5 | |
6 | 2/15 | no class | ||
2/17 | Nested procedure calls | 2.10, 2.11 | HW 6 (2/23) | |
2/19 | Procedure examples | Quiz 6 | ||
7 | 2/22 | Instruction formats overview | 2.12 | |
2/24 | l format (lui, lw, sw), branch formats | 2.12, 2.13 | HW 7 (3/2) | |
2/26 | conditional and unconditional branch instruction formats | 2.13 | Quiz 7 | |
8 | MODULE 3: Computer Arithmetic | |||
3/1 | Computer arithmetic (+,-) | 3.1-3.2 | ||
3/3 | Computer arithmetic (mult. algorithms) | 3.3 | HW 8 (3/9) | |
3/5 | Computer arithmetic (division algorithms) | 3.4 | Quiz 8 | |
9 | 3/8 | Floating Point arithmetic | 1.7 | (no HW) |
3/10 | FP arithmetic | 1.7 | ||
TBD | Midterm | 1, 2, 3 | Common Exam Schedule | |
Module 4: CPU Data Pipeline | ||||
3/12 | CPU performance evaluation | 4.1, 4.2 | Quiz 9 | |
10 | 3/15 | Single cycle processor design overview | 5.1-5.3 | |
3/17 | R format, Load/store, branch instruction design | 5.3 | HW 9 (3/23) | |
3/19 | Control design | 5.4 | Quiz 10 | |
11 | 3/22 | single cycle datapath and control integrated | 5.4 | |
3/24 | SC Performance | HW 10 (4/6) | ||
3/26 | Pipelining overview | 5.5 | Quiz 11 | |
SB | 3/29 | no class | ||
3/31 | no class | |||
4/2 | no class | |||
12 | 4/5 | Pipelined datapath | 5.6 | |
4/7 | Pipeline control | 5.6 | HW 11 (4/13) | |
4/9 | Data hazard | 5.7 | Quiz 12 | |
13 | 4/12 | Data & Control hazards | 5.7-5.8 | |
4/14 | Control hazards | 5.8 | HW 12 (4/20) | |
4/16 | no class | |||
14 | 4/19 | Hazards interactions | 5.7-5.8 | Quiz 13 |
Module 5: Memory Hierarchy | ||||
4/21 | Memory Hierarchy Basics | 6.1-6.3 | HW 13 (4/27) | |
4/23 | Direct-mapped caches | 6.3 | Quiz 14 | |
15 | 4/26 | Full/set associative cache design | 6.4 | |
4/28 | Cache access | 6.4 | HW 14 (5/4) | |
4/30 | Virtual memory basics | 6.7 | Quiz 15 | |
16 | 5/3 | review week | 1 - 6 | |
5/5 | review week | 1 - 6 | ||
F | TBD | Final Exam | ||
5/7 | no class (final exam week) | |||
5/10 | no class (final exam week) | |||
5/12 | no class (final exam week) |
Maintenance Clause
This syllabus is intended to give students guidance on this course this semester and will be followed as closely as possible. The instructor reserves the right to modify, supplement and make changes as the course needs arise. This syllabus is not a legal document; common sense rules always apply, e.g., no late assignments will be accepted after the solutions are discussed or available.