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.