CS 220: Computer Architecture Course Syllabus – Spring 2023
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
CS 220: Computer Architecture
Course Syllabus – Spring 2023
Course Description
Course Description. This course introduces the fundamental physical and structural concepts of assembly language programming. Topics include machine architecture, memory addressing, input/output, interrupts, control structures, compiling, and linking.
Prerequisites.
• CS 112: Introduction to Computer Science II - Java with a minimum grade of C or better
Transfer Credit. CSU
Student Learning Outcomes.
1. The student will be able to analyze low-level programming problems and to design solutions to be coded in assembly language that will efficiently utilize the components of the specified computer architecture.
2. The student will implement effective solutions to assembly language programming problems. These solutions may require linking assembly language routines with high-level program code.
3. The student will be able to define the basic components of a computer's architecture and explain an assembly language program's design and implementation both verbally and in writing.
4. The student will be able to work collaboratively and cooperatively in teams to develop and implement assembly language programs in a timely manner.
Performance Objectives. Upon successful completion of this course, students will be able to do the following:
1. Identify essential hardware components of an 80 x 86 machine
2. Employ hexadecimal notation to address memory locations
3. Write and test an assembly language program to store data into memory and retrieve that data
4. Write and test an assembly language program to accept keyboard input and display a message to the screen
5. Write and test an assembly language program to implement a system and interrupt and read data from- -or write data to--a register
6. Write and test an assembly language program to implement a loop
7. Write and test an assembly language program to process a data array
8. Compile and link an assembly language program into executable code
Textbook and Software
Required Textbook.
The Elements of Computing Systems: Building a Modern Computer from First Principles
Author: Nisan, N. & Schocken, S.
ISBN: 978-0262640688
Publisher: MIT Press
Edition: 2nd
Software. We will be utilizing the Nand to Tetris Software Suite to design and simulate all computer architecture in this class. The software is installed on the computers in our classroom, OC 4804. If you would like to install the software on your personal computer, you may do the following:
Nand to Tetris Software Suite – This software is free and can be downloaded directly from the following
link:https://www.nand2tetris.org/software
The Canvas Learning Management System will be used to post material, take quizzes, submit
assignments, post announcements, check grades, and participate in online discussions.
You can reach Canvas directly from the following link: https://miracosta.instructure.com
• You can find help and answers for many of your questions regarding Canvas by clicking on the MiraCosta College Canvas Helpdesk and Tutorialslink. You may also call the 24-hour support line at 877.884.1673
• A copy of the lecture slides for each class will be posted in Canvas.
• Assignments should be submitted through Canvas’ “Assignments” section.
• You can stay up-to-date with your grades through the “Grades” link in Canvas.
Student Responsibilities
To be successful in this course, it is your responsibility to attend class, review the assigned material from the slides and design examples, complete homework, labs, quizzes and all exams (both midterm and final exam).
Exercises. Learning to build a computer from scratch requires effort, dedication and experimentation . Many of us are learning computer architecture for the first time and, like learning a programming language, it takes a great deal of practice to become fluent. To facilitate the learning process, CS 220 includes many unique exercises. Some of the exercises will be assigned as labs, homework and one final project.
Labs
There are weekly labs based on the material covered that very same lecture (see schedule). You will get credit for attempting the lab, as long as you’re present and trying to complete the lab you will receive the full points. The point of the lab is to help understand or validate that you’ve learned the material we’ve covered in class, making errors or struggling with understanding the problem is natural and expected. It’s the point actually! By working through that together, I’m hoping to model for you how to approach larger problems like the homework.
Homework
In CS 220, there will be approximately ten (10) homework assignments. Homework will be assigned through Canvas and will also be announced and discussed in class. All projects should be turned in on the due date before class starts. Any work submitted late will incur a 25% deduction per week late. Projects freeze (meaning no submissions will be accepted) two weeks after they are due. Therefore, late work is only accepted for two weeks after the original homework deadline.
Final Project
The final project is an opportunity for you to synthesize computer architecture learned in this class with respect to how it is used in today’s technical environment. You will be asked to choose a topic covered in the class and research or implement a topic of computer architecture that intersects with class material, presented to the class either as a talk or demonstration. The requirements will be discussed later in the semester.
Quizzes. Approximately once a week on Fridays (not including midterm week or final exams week), you will take a brief 20-minute quiz on Canvas on the content from the previous week. The quiz content will be drawn from the class lecture and slides posted on Canvas. Please be on time to class to take the quiz. All quizzes close after 20 minutes into the class, therefore arriving late to class will reduce the time you have available for the quiz. All quizzes must be completed in class.
Midterm Exam. The midterm exam will be administered through Canvas and will be a mixture of short answer, multiple choice and machine code snippets (in Hardware Description Language – HDL – which you will learn!) You can think of this exam as a combination of quizzes, labs and homework together. If you are
consistent with your work in the class, you can expect to perform very well on the midterm exam.
Grading Policy
Grading. All grades will be posted on the class Web site on Canvas. You should check your grades regularly and notify me immediately if there are any discrepancies. I will post grades for assignments, quizzes, projects and exams etc. shortly after the due date, typically after one week has elapsed to allow time for any late submissions.
Grades will be calculated as follows:
Student Support Services
● DSPS Students:
○ A student with a verified disability may be entitled to appropriate academic accommodations. Please turn in any Accommodation Sheets in the first week
or ASAP to allow time for accommodations.
○ https://www.miracosta.edu/student-services/dsps/index.html
● Career Center:
○ Career Center empowers students to make informed, intentional career decisions.
○ https://www.miracosta.edu/student-services/career-services/index.html
● Health Services:
○ Student Health Services assists students with their physical and mental health needs so they may accomplish academic success.
○ https://www.miracosta.edu/student-services/health-services/index.html
● Student Equity:
○ The college has worked to expand student success efforts with a focus on student equity, particularly for those populations identified as at-risk.
○ https://www.miracosta.edu/student-services/student-equity/index.html
● Student Food and Housing Resources
○ Resources for students experiencing homelessness, displacement, and/or food insecurity - MiraCosta College is committed to equity and inclusion for students who are experiencing challenges related to housing and/or food insecurity. To learn more about the Food Pantry (OC 3306/3435/3326, SEC 929, CLC Front Desk), showers and hygiene kits (OC Gym), mental and physical health services,
and San Diego County resources.
○ https://www.miracosta.edu/student-services/care/index.html
○ https://www.miracosta.edu/student-services/care/student-resources.html
● LGBTQIA+ Resources
○ MiraCosta College has an expressed commitment to equity and inclusion for students, faculty, and staff members who are lesbian, gay, bisexual, transgender, queer, questioning, intersex, and asexual. The district employs a Campus Liaison for LGBTQIA+ needs, offers LGBTQIA Safe Space training, and has multiple student scholarships for members and active allies of the LGBTQIA+ community. For information about campus resources and services:
○ https://www.miracosta.edu/student-services/lgbtqia/index.html
● Undocumented Students
○ I am an ally to undocumented students and their families. Please do not hesitate to contact me should you have questions or concerns about your status or would like guidance toward resources to ensure your success while at MiraCosta College.
○ https://www.miracosta.edu/student-services/student-equity/uprise/ally- program.html
● Veteran Services:
○ Veterans Services consists of the Veterans Education Office and the Veterans Information Center, the staff is committed to helping you achieve your
academic goals
https://www.miracosta.edu/student-services/veterans-services/index.html
Ethics
Assignments are to be completed by the individual student. While meaningful dialogue over homework is acceptable, turning in work that someone else has completed is considered academic dishonesty. Other things that could also be deemed as academic dishonesty, but not limited to, are: using all or parts of a solution online (Google, StackOverflow, GitHub, Yahoo Answers, etc.), sharing all or parts of your solution with a classmate, turning in a solution that fakes output but does not actually solve intended problem, and other practices up to the discretion of your instructor. All parties involved will receive no points for that assignment. Also, any student caught cheating on a quiz or exam will automatically receive a 0 for the assessment.
Attendance
Attendance is mandatory. Class starts at the time shown on the schedule. It is crucial that you attend all scheduled classes, as the information for the current week builds on the learning from previous weeks. It will be quite difficult to catch up after multiple absences. Besides, the entire class (myself especially) will miss you if you’re out.
If you miss any class meetings in the first week OR if you miss two (2) or more class meetings in the following weeks you may be dropped without notice; do not assume, however, that you will be automatically dropped if you fail to come to class. It is your responsibility to withdraw from class and to check the deadlines on the MiraCosta website. Note: students cannot be dropped after the deadline for the last day to drop with a W. |
Communication
The most efficient way to communicate with me is through email AND/OR coming to my office during office hours . I typically read and reply to emails from Monday through Friday early in the morning and at the end of the work day .
Announcements. I will email you any announcements to your Canvas account, so do check your email account daily. Canvas allows you to link with a personal email account to receive communication from the course (including myself all your fellow colleagues). You can find help and answers for many of your questions regarding Canvas by clicking on theMiraCosta College Canvas Helpdesk and Tutorialslink. You may also call the 24-hour support line at 877.884.1673
Other Course Information
Incomplete grade. I do not assign incomplete grades to anyone. If you are not able to take the final exam, you will not pass the class, but you can retake the class at a later time and overwrite your grade with a passing grade.
Disruptive Behavior. I expect all of you to be polite, respectful, and helpful to your fellow students, and to leave your sitting station neat and clean. If, in my judgment, your behavior negatively impacts the rest of the class, you may be reported to subject to disciplinary action.
Reservation of Rights. I reserve the right to modify this syllabus without limitation, especially to accommodate the needs of the class. If I do change any item or policy, I will notify you by sending an announcement through Canvas.
2023-01-30