Skip to main content

Verifying Your Handins -- Tutorial

We have two versions of submission scripts. The Python version only checks if your files are ok, while the shell checker checks a) if your files are ok, b) prints which vcheck files (if any) have Verilog Rules violations in them, c) runs the name-convention-check script, and d) if at least one basic test passes for what you turned in. Details on both are below, but if you run the shell checker you don't need to run the Python version too, because the shell checker checks both. Note that the syntax will vary slightly for each homework and project phase -- the below examples are not intended to work if copy-pasted for every single assignment, you need to change the path to the appropriate assignment (e.g., run HW1 scripts on your HW1 submission).

Shell Checker

You can find the .sh version here:

/u/s/i/sinclair/public/html/courses/cs552/spring2022/handouts/scripts/project/phase1/verify_submission_format.sh

To run the .sh checker, the usage is:

/u/s/i/sinclair/public/html/courses/cs552/spring2022/handouts/scripts/project/phase1/verify_submission_format.sh demo1.tgz

This script will create a new folder called tmp_testing, untar, and run the tests in that folder. Nevertheless, we strongly recommend you run this from a different directory then where your code is, to avoid overwriting anything! For example:

[sinclair@royal-01] (145)$ mkdir temp
[sinclair@royal-01] (146)$ cp demo1.tgz temp
[sinclair@royal-01] (147)$ cd temp
// now run your verification

In addition to verifying that your submission contains the files (as explained below), this version also checks your vcheck files for violations, runs name-convention-check, and runs lbi_0.asm on your processor. If it passes, you should see something like:

[sinclair@royal-01] (148)$ /u/s/i/sinclair/public/html/courses/cs552/spring2022/handouts/scripts/project/phase1/verify_submission_format.sh demo1.tgz
Verifying Complete. Please ensure there are no error(s) printed.
Format checking complete. Continuing to check vcheck files...
... // vcheck and name-convention-check output
Testing project phase 1 with lbi_0.asm
lbi_0.asm passed.

If you want to see the output for your run of lbi_0.asm, or you want to see what failed, look at submit_test.log. Note that this does not guarantee that your design works for all tests, merely that it a) has the files needed to run your processor, b) what vcheck files, if any, have violations (I recommend making sure only the provided files have violations), c) which Verilog files, if any, have naming convention violations, and d) it passes the lbi_0 test.

Python Checker

We have also created a script to check that your submission correctly follows the format, located at (NOTE: the path will differ slightly for each assignment, here we use HW1 as the example throughout):

/u/s/i/sinclair/public/html/courses/cs552/spring2022/handouts/scripts/hw1/verify_submission_format.py

You are expected to run this script before submitting your homework and project assignments in order to ensure that you don't lose points for incorrectly formatting your submission! To run it, simply use the following command from wherever you tarball or zip is located:

python3 /u/s/i/sinclair/public/html/courses/cs552/spring2022/handouts/scripts/hw1/verify_submission_format.py <netID>-hw1.tgz

Note that the above path will only be accessible on CSL machines.

If the verification script passes, all you should see is something like:

[sinclair@snares-08] (74)$ ~/public/html/courses/cs552/spring2022/handouts/scripts/hw1/verify_submission_format.py msinclair-hw1.tgz
Verifying Complete. Please ensure there are no error(s) printed.

If your submission is missing something, you will see something like this:

[sinclair@snares-08] (74)$ ~/public/html/courses/cs552/spring2022/handouts/scripts/hw1/verify_submission_format.py msinclair-hw1.tgz
[Error] hw1_2/cla_16b.vcheck.out not found!
[Error] hw1_2/cla_16b_bench.v not found!
Verifying Complete. Please ensure there are no error(s) printed.

If your submission contains something it shouldn't, you will see something like this:

[sinclair@snares-08] (74)$ ~/public/html/courses/cs552/spring2022/handouts/scripts/hw1/verify_submission_format.py msinclair-hw1.tgz
[Error] hw1_1/__work exists! Please delete it!
Verifying Complete. Please ensure there are no error(s) printed.