Important Test Bench: Starting Files

Download the following files

Starter File - Problem1.dig

Starter File - Problem2.dig

Starter File - Problem3.dig

Build your circuits within the appropriate files named Problem1, Problem2 and Problem3. Once you’ve built your circuits, you can submit to gradescope to check if your circuit passes all test cases.

Like lab 3, our auto grader needs specfic the IO names. Do not change IO names in your submission. Signal name descriptions for the starter files:

Problem 1 : A - Input Data (4-bits), S - Shift Amount (2-bits), X - Output Data (4-bits)

Problem 2 : C - Clock, Reset - Reset, X(0-3) - Output bits 0 - 3 (4 x 1-bits)

Problem 3 : A - Input Data (4-bits), WE - Write-enable (1-bit), S - Select (2-bits), X - Output (4-bits)

Note: You would need to use a splitter/merger to be able to combine the 4 output bits and pass it to a single output component (X). The splitter can be found in Components>wires>Splitter/Merger. We have a video demostrating splitter/merger and tunnel usage.

Note: You will need to use demultiplexers and multiplexers as well. They can be found in the same pane: Components>Plexers>

Note: Use Components>Wires>Supply Voltage to force an input to be 1.

Note: Use Components>Wires>Ground to force an input to be 0.

Before you submit : We also have a testbench that tests your circuit’s functionality. To run the test bench, click on the play button with a green tick mark on it. The tool should run your circuit against the test cases and show you the input/output from the circuit. Test your circuit against the testbench before submitting to gradescope.

Submission

Upload the following to gradescope:

  • Your circuit for problem 1 - Problem1.dig
  • Your circuit for problem 2 - Problem2.dig
  • Your circuit for problem 3 - Problem3.dig

HW 2 Description

Fill out the worksheet handed out in class. If you were not there, please print out homework2.pdf and fill it out. (We’ll release the PDF for this semester on Monday)

Collaboration

For this homework only: As is commonly done1 on math-worksheet-like assignments, you may collaborate with other students in this class. As an exception to the usual collaboration policy, you do not need to tell us about casual interactions of the “I got \(X\), what did you get?” variety. But do cite any close collaboration or major corrections; for example if the answer to the above hypothetical was “I think \(X\) is wrong, here’s why” and then you change your answer, add a note like “mst3k suggested this answer” next to your answer. However, we expect that everyone will work on the assignment to better understand circuits, so you may not directly copy another student’s answer.

This exception does not apply to sources other than other students in this course. Websites, outside tutors, etc., are still subject to our plagiarism rules.

As always, we reserve the right to request you explain your solutions to us and may penalize you if it appears that you did not understand what you submitted as your work.

Submit

Upload your completed assignment to Gradescope by 11:59 pm Monday.

  1. It is not clear to us that this is commonly allowed per course policies, but it is commonly done


Copyright © 2023 Daniel Graham, John Hott and Luther Tychonievich.
Released under the CC-BY-NC-SA 4.0 license.
Creative Commons License