We assume students are familiar with at least one ISA. If you have taken COMP2300, that would be the ARM v7 ISA. We will begin showing instructions and basic blocks in the first week. However, we will devote the entire third week to a different but RISC-style (MIPS) ISA. We will then implement the MIPS ISA at the logic block level. Therefore, in the following two weeks (4-6), we will assume familiarity with combinational and sequential logic and some basic digital building blocks such as the ALU, multiplexer, and register. (Note: Based on the quiz outcome, we will introduce background material as required.)
This course is at the boundary between a fresh and an advanced computer architecture course. We do not assume students will be pursuing graduate studies in computer systems. On the other hand, we expect students to show a mature attitude towards learning and managing the workload. We will not distribute homework samples. Also, we expect students to demonstrate good skills in using online resources to solve infrastructure problems. Just like you would do in your professional lives, please use Google as much as possible to solve programming bugs, getting up to speed with the C++ syntax and semantics, and software installs.
Our grading philosophy favors insight over common knowledge, the problem-solving approach over the final solution, understanding meaning over syntax, and connecting with the non-obvious detail. Indeed, there will be no correct or single answer to many homework problems. If you have a strong will to learn fresh material, follow our guidelines, read the text early, and engage in class discussions, you will obtain a good grade.
We expect students to submit each homework as an independent effort. Nevertheless, we encourage all students to brainstorm ideas with other students in the class. We request students to identify all sources that helped with their solutions. In particular, please list the students in any discussion and brainstorming sessions. As an example, “My solution to the third question is inspired by brainstorming for ideas with Alex, Jon, and Rebecca.” You can be more specific, “The modifications to the MIPS pipeline for supporting register-memory instructions is in part due to discussions with Angela.” If called for an oral interview after the homework deadline, the student must explain their homework submission.
We will organize students into groups of up to four to work on the practical assignments. Each group will submit one solution to the assignment. Importantly, each group member must identify their contributions towards the submission. Also, each group member must sign a statement that they have read and understood the assignment, including the proposed solutions and modifications to the simulator code. If called for an oral interview, each group member must be prepared to discuss the assignment submission, including written responses to questions and code-level details.
Report and Presentation
We will assign each (assignment) group two research papers from top-tier computer architecture conferences. This assignment will commence during the second week via bidding. Each group will need to submit a written review of their assigned papers. We will provide guidelines for writing the review. If the schedule permits, each group will present the findings to the entire class in an oral presentation during the final exam week. (More details on this later.)
Code of Conduct
We will penalize any violation of the ANU student code of conduct in oral and written assessments, group work, and feedback sessions with the convener. In particular, please refrain from using curse words or foul language in written assessments, including but not limited to the naming of variables, signals, and new instructions, strings, and comments.
All students must abide by the standards outlined in the ANU statement on academic honesty and plagiarism. Please review the specific requirements for this course on the academic integrity website of the course. As a reminder, individual homework submission must include a signed integrity and originality statement, and all group submissions must include a signed group originality statement. (Please also read the expectations outlined in Homework Effort and Assignment Groups sections above.)