The class teaches you the computer architecture of modern microprocessors. Today, one cannot program modern machines efficiently and securely without understanding their internal organization. The course aims to teach you the basics of computer architecture and the factors influencing the design of hardware and software elements of computer systems. We will cover the topics related to: instruction set design; processor micro-architecture and pipelining; cache and virtual memory organizations; security mechanisms, and programming models.

The course uses Computer Organization and Design -- The Hardware/Software Interface -- 5th or 6th Edition, David Patterson and John Hennessy (5th or 6th edition will work).

The following is a tentative guideline and may undergo changes. A mid-term exam will count for 30%, the final exam will count for 40%, and assignments will count for 30% of the final grade. The exams will be open-notes. There will be approximately 10 assignments. We have zero tolerance for cheating. TAs will be on the lookout for solution sets that appear very similar. Further, if your class rank in the assignments is significantly different from your class rank in the exams, only your rank in the exams will count towards your grade.

We know you're juggling multiple activities and the assignment deadline may not always be favorable. I also anticipate students may be affected by illnesses in their immediate family. You are therefore allowed to skip two assignments -- use these freebies prudently. To be fair to the rest of the class, no exceptions to the above rule will be made. Late submissions will not be graded.

Working with others on assignments is a good way to learn the material and is encouraged. However, there are limits to the degree of cooperation that is permitted. Students may discuss among themselves the meaning of homework problems and possible approaches to solving them. Any written portion of an assignment, however, is to be done strictly on an individual basis. Note the School of Computing's Academic Misconduct Policy. (Links to an external site.) BOTTOM LINE: You may not copy from another student or from any other source, and you may not allow another student to copy your work!! Any violation of the above is considered to be cheating and will result in a reduced or a failing grade in the class. TAs will be on the lookout for solution sets that appear very similar. Also, if your class rank in the assignments is significantly different from your class rank in the exams, only your rank in the exams will count towards your grade.

Updated: August, 2022