ECE 391: Computer Systems Engineering

Spring 2026

Syllabus

Instructor Kirill Levchenko
Office hour: Mondays 4pm in CSL 458
Dong Kai Wang
Office hour: Mondays 3pm in ECEB 2066
Triticum aestivum
Grad. TAs Rudra Thakkar (head TA)
Neil Ghose
Vinit Gupta
Hao Ren
Jiwoong Jung
Sharvil Garg
Head CA Aastha Grover
Lectures Tue & Thu 2 to 3:20 pm
ECEB 1002

Please read the course policies below carefully, as you are expected to abide by them.

Grading

Your course grade will be weighted as follows:

Late Assignments

Please see the Submission / Policies on the assignments page.

Group Work

We encourage you to discuss lecture material with other students. In addition, MP3 is completed in groups of up to three students. All other assignments must be completed individually. You may not work with anyone else on these assignments.

Permitted Resources

In completing your assignments, you may use the following resources:

  1. Documentation, how-to guides, and tutorials about the software and tools used in class (Qemu, gcc, gas, gdb, etc.), that do not contain information about how to solve assigned programming problems;
  2. RISC-V instruction set manuals, RISC-V Platform-Level Interrupt Controller specifications, Virtual I/O specifications, and any other specifications that do not contain information about how to solve assigned programming problems;
  3. References listed on the course website; and
  4. Wikipedia articles.

You are not allowed to use any resource that does not fall into one of the categories above, unless you have obtained explicit instructor permission.

Prohibited Resources

You are explicitly prohibited from using the following:

The term use in the sentence above should be understood very broadly to prohibit: downloading another person's code, looking at another person's code, compiling another person's code, using another person's code to test your own code. Posession of another student's code on your computer, or storing your code on another student's computer.

You are not permitted to discuss the technical substance of the programming assignments with anyone except the course staff and, for MP3, members of your group.

AI Policy

You are not permitted to use AI in any way unless explicitly permitted in writing by the instructors. Unless you receive written permission from an instructor, you are not permitted to use any IDE with AI functions, with the exception of Visual Studio Code, which must be used with all AI extensions disabled.

Prohibited IDEs include (but are not limited to): Google Antigravity, Cursor, Trae, Windsurf, Zed AI. The Microsoft C/C++ IntelliSense extension is permitted (but not IntelliCode).

Academic Integrity

All work products of this course (machine problems and examinations) must be (a) your own individual work for individual assignments and the work of your team for group assignments, and (b) completed using permitted resources only.

You are responsible for all work your group turns in. You must take proactive steps to make sure that other members of your group complete work in accordance with course policies, including policies on AI use. You will not receive credit for a group assignment if any part of the group assignment, including parts not completed by you, violate the course academic integrity policy. If you suspect one of your team members of violating a course policy, report this to the course staff immediately.

In the past, the most common academic integrity violation is this class has been plagiarism. Plagiarism means representing the ideas of others as your own. Note that plagiarism is not limited to copying another person's code. In the context of this class, plagiarism includes using the ideas expressed in another person's work in your assignments.

The most common ECE 391 academic integrity violation last semester was AI use. Please familiarize yourself with course AI policy to ensure you do not violate it.

Academic integrity violations will be processed through the FAIR system, which retains a record of violations with the college.

If you violate the academic integrity policy on an assignment, you will receive no credit on the assignment and a 10 percentage point (roughly equivalent to a letter grade step) drop in your overall course grade. If you cheat on an exam, you will receive no credit on the exam and a 10 percentage point (roughly equivalent to a letter grade step) drop in your overall course grade.