Read Chapter 1 and Appendix A.
Create a repository on Bitbucket named exactly
csci201-project-01. Invite me (
joshuaeckroth) as a reader.
Implement the following logic gates by writing an HDL file for each. Start with the HDL templates provided. Be sure to test your implementations with the corresponding test scripts.
You may only use the builtin Nand gate and any other gates you correctly implement during this project.
Gates to implement
- Not gate, HDL file
Not.hdl. Test script:
Not.tst, and comparison output:
- And gate, HDL file
And.hdl. Test script:
And.tst, and comparison output:
- Or gate, HDL file
Or.hdl. Test script:
Or.tst, and comparison output:
- Xor gate, HDL file
Xor.hdl. Test script:
Xor.tst, and comparison output:
- Mux gate, HDL file
Mux.hdl. Test script:
Mux.tst, and comparison output:
- DMux gate, HDL file
DMux.hdl. Test script:
DMux.tst, and comparison output:
- Or16 gate, HDL file
Or16.hdl. Test script:
Or16.tst, and comparison output:
- And16 gate, HDL file
And16.hdl. Test script:
And16.tst, and comparison output:
- Or8Way gate, HDL file
Or8Way.hdl. Test script:
Or8Way.tst, and comparison output:
- Eq gate, HDL file
Eq.hdl. Test script:
Eq.tst, and comparison output:
- ConstantZero gate, HDL file
ConstantZero.hdl. Test script:
ConstantZero.tst, and comparison output:
- ConstantOne gate, HDL file
ConstantOne.hdl. Test script:
ConstantOne.tst, and comparison output:
Download a ZIP file containing all of the above, including files for gates that I am not asking you to implement.
A gate is considered correct if it passes all of the tests defined in its corresponding
.tst script and
.cmp comparison output.
- All gates correct: 5 pts
- At least 10 gates correct: 4 pts
- At least 8 gates correct: 3 pts
- At least 6 gates correct: 2 pts
- At least 2 gates correct: 1 pts
- 0 gates correct: 0 pts
If you implement your gates with the fewest low-level gates possible (fewest “PARTS” in the HDL file), you receive extra credit.
- All gates are as simple as possible: +3 pts
- At least 6 gates are as simple as possible: +2 pts
- At least one gate is as simple as possible: +1 pt