Final project for COMP251

The bulk of the last week of classes will be spent on an ungraded final project. In these classes, we will also spend a little time doing revision for the final exam, and mentioning one or two interesting (but non-examinable) topics in computer architecture. The primary recommended project is Project 1 from Nisan and Schocken's Elements of Computing Systems. All the necessary resources are available on this book's Study Plan page. You will need to download the necessary software from the "Software" link on that page. Then, go to the "Project 1" link and follow the instructions there.

Before you start, do the following required reading. From the book The Elements of Computing Systems, by Noam Nisan and Shimon Schocken, read the publicly-available online versions of Chapter 1 and Appendix A (Sections 1-6 only). Also check out the Study Plan page for more resources, such as lecture slides.

Project 1 concerns designing logic gates. If you're already familiar with this topic, or perhaps you just prefer to do something different, you might consider tackling Project 6 instead. This is a very interesting and educational project in which you write an assembler program for a particular instruction set. Before starting the project, you will need to read Chapter 6 of the book (and possibly refer back to some earlier parts of the book too). This project is a little more challenging than Project 1.

If you enjoy these projects, why not try some of the others? They are all extremely worthwhile and will increase the depth of your knowledge and experience as a computer scientist. Almost all the resources you need are provided online. In addition, you can purchase a copy of the book, or use the copy in the Tome library.


Last updated: