We will have projects due every Wednesday at 7 pm. Some of these projects will be assembly language projects; some of them will simulate the hardware. Our projects will require knowledge of MIPS assembly language (which I’ll teach you) and basic knowledge of C and Java. We won’t require much of either Java or C. It is expected that you learned Java in CSC210, and it is assumed that you can learn C quickly because C has a syntax similar to Java. If this is not the case for you, please let me know so I can adapt the content.

Projects will be due at 7 pm, but TAs are not allowed to answer any questions after 5 pm on Wednesdays. All projects will be turned in to Gradescope.

Project title Start Date Deadline Topic
Simulation Project 0 Tuesday, January 14 Wednesday, January 22 Pre-project
Simulation Project 1 Monday, January 20 Wednesday, January 29 Basics of Binary
Assembly Project 1 Monday, January 27 Wednesday, February 05 Introduction to MIPS
Simulation Project 2 Sunday, February 02 Wednesday, February 12 Logic Networks
Assembly Project 2 Monday, February 10 Wednesday, February 19 Loops, Arrays, and Strings
Simulation Project 3 Sunday, February 16 Wednesday, February 26 An ALU
Assembly Project 3 Sunday, February 23 Wednesday, March 05 Intro to Functions
Simulation Project 4 milestone 1 Tuesday, March 04 Wednesday, March 19 Instruction Decode
Simulation Project 4 milestone 2 Monday, March 17 Wednesday, March 26 Single-cycle CPU
Assembly Project 4 Tuesday, March 25 Wednesday, April 02 More Functions
Assembly Project 5 Monday, March 31 Wednesday, April 09 More MIPS
Simulation Project 5 Monday, April 07 Wednesday, April 16 Pipelined Computer
Assembly Project 6 Wednesday, April 16 Wednesday, April 30 More MIPS