uwlogo CS 450/650 - Computer Architecture

Course Outline - Winter 2018

CS450 is intended to provide the student with an appreciation of modern computer design and its relation to system architecture, compiler technology and operating system functionality. The course places an emphasis on design based on the measurement of performance and its dependency on parallelism, efficiency, latency and resource utilization. [from undergraduate calendar]

CS 650 is a grad course held with CS 450. Additional requirements for CS 650 students are described below.

Andrew Morton
email: andrew.morton at uw...loo.ca
office: EIT-4015
office hours: 2.30-3.30MW,12:30-1:30F
Teaching Assistant
Chathura Kankanamge
email: c2kankan at uw...loo.ca
office: DC-3323
office hours: Mondays 5.00 - 6.00 p.m.
Digital Hardware Design
Hardware description languages (SystemVerilog), instruction-set processor design
Scalar Pipelines
MIPS pipeline, data dependencies, static scheduling, performance, exceptions
VLIW Pipelines
Local scheduling, loop unrolling, software pipelining, trace scheduling, deferred exceptions, predicated execution, IA64
Dynamic Pipelines
Dynamic scheduling, register renaming, speculative execution
Thread-Level Parallelism
Cache coherency, sequential consistency, multithreading, symmetric multiprocessing, transactional memory
Data-Level Parallelism
GPGPU programming, Many-Core processors

There is no official textbook for this course. The lectures are drawn from a number of texts and articles. Approximately half the lecture material comes from the following text. (It is the best choice if you wish to purchase a text.)

  • Parallel Computer Organization and Design, Dubois et al, Cambridge University Press, 2012 (on BookLook)
    • on 3-hour loan at Davis Center reserve desk: call# QA76.5 .D754 2012
This text also covers many topics covered in the course:
  • Computer Architecture: A Quantitative Approach, 5th edition, Hennessy and Patterson, Morgan Kaufmann, 2012
    • on 3-hour loan at Davis Center reserve desk: call# QA76.9.A73
Links to online resources are provided on the Readings page.

CS 450 Grading Scheme

  • Project: 30%
  • Assignments: 20%
  • Final exam: 50%

Grace days: Each student starts the term with 5 grace days which they can use to extend the deadline of any deliverables (with the exception that deadlines can not be extended past the last day of lecture for the term). Submissions handed in late (after grace days are used up) or not handed in at all will get a grade of 0. Any unclaimed paper submissions will be shredded one month after the term ends. Project and assignment grades will be posted on Learn.

CS 650 Grading Scheme

  • Project: 25%
  • Assignments: 10%
  • Term Paper: 20%
  • Final exam: 40%

CS 650 students will have an extended project that involves pipelining the MIPS processor. The term paper will be a literature review on a subject approved by the instructor. The term paper will be 4-6 pages using the IEEE Transactions template.

Group Work

All assignments are to be done individually. Discussion of assignments with classmates is allowed (i.e. how to approach the problem) but solutions must be done individually. A good rule of thumb to use is that when discussing assignments with others leave your pencil and paper at home.

Meet Times
CS 450/650 Course Schedule


piazza We'll use this forum to announce and discuss assignments, projects, and tests. If you have not already been added, use your @uwaterloo email address to sign up. Remember that it is a semi-public forum. And don't post any solutions please.

learn The Learn course will only be used for posting assignment and project marks.

Academic Integrity and Students with Disabilities

Academic Integrity

In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. Check the Office of Academic Integrity's website for more information.

All members of the UW community are expected to hold to the highest standard of academic integrity in their studies, teaching, and research. This site explains why academic integrity is important and how students can avoid academic misconduct. It also identifies resources available on campus for students and faculty to help achieve academic integrity in — and out — of the classroom.


A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70 — Student Petitions and Grievances, Section 4. When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.


A student is expected to know what constitutes academic integrity, to avoid committing academic offenses, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offense, or who needs help in learning how to avoid offenses (e.g., plagiarism, cheating) or about "rules" for group work/collaboration should seek guidance from the course professor, academic advisor, or the Undergraduate Associate Dean. For information on categories of offenses and types of penalties, students should refer to Policy 71 — Student Discipline. For typical penalties, check Guidelines for the Assessment of Penalties.

Avoiding Academic Offenses

Most students are unaware of the line between acceptable and unacceptable academic behaviour, especially when discussing assignments with classmates and using the work of other students. For information on commonly misunderstood academic offenses and how to avoid them, students should refer to the Faculty of Mathematics Cheating and Student Academic Discipline Policy.


A decision made or a penalty imposed under Policy 70, Student Petitions and Grievances (other than a petition) or Policy 71, Student Discipline may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72 — Student Appeals.

Note for students with disabilities

AccessAbility Services , located in Needles Hall, Room 1401, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with AccessAbility Services at the beginning of each academic term.

Last updated: Mon Jan 22 10:42:16 2018