ECE 391: Computer Systems Engineering

Spring 2026

Repo Creator Bot

https://edu.cs.illinois.edu/create-gh-repo/sp26_ece391

Submission / Policies

To submit, just push your code to a branch named after the assignment (and checkpoint if applicable), in your GitHub repo. We will fetch whatever is on that branch before the deadline, so the branch name must match exactly.

Examples (the string to the right of the colon should be the name of the branch on your GitHub repository. There should be no leading/trailing whitespace, and all alphabetic characters should be lowercase):

We will give a deadline report three times per assignment (Fri/Sat/Sun at 5:59pm CST) and your checkpoint score is the best of those three runs after applying any late penalties. You also get one late waiver that removes the Sunday penalty for a single assignment (applied retroactively at the end of the semester).

Run times: Friday, Saturday, Sunday - each at 5:59pm CST
Penalties:

Score used: maximum of the three post-penalty scores
Late waiver (1 total):

We run a preliminary autograder on Mon/Wed/Fri at 5:59pm CST after release. It uses the same tests as the graded autograder, so you can know your final score early. (Prelims will not run on DDL Fridays)

Hard cutoff: pushes after 5:59pm CST will not be re-graded
No re-runs for wrong branch, late push, or compile errors
Results: posted to the _grades branch (prelim + graded)
Timing: results may take a few hours to appear

Assignments

MP 0

In this individual assignment, you will familiarize yourself with the development environment. You will learn how to compile, assemble and link your code; how to load and execute it in QEMU, and how to debug it using GDB.

MP 1

In this individual assignment, you will write a screensaver in RISC-V assembly language.

MP 2

MP 3