Assignment 6
Assignment
Create a 32-bit ALU that allows for adding, subtracting, and
, or
, not
, xor
, and slt
(and any other operations you’d like to support). You are welcome to use any of the components that Logisim has built in (like multiplexers - but also the Adder, Subtractor, and Comparator).
Grading
This is an 8-point assignment. See the rubric from the syllabus. For this assignment, you can get up to 5 points for turning in a working version of the 4-bit ALU we worked on in class that included add
, and
, or
, not
, and xor
. You can get 1 more point for each of the following:
- Make it 32 bits
- Get subtraction working using the same circuitry as addition (it can be either the adder you made or the built in Adder - just make it work for both addition and subtraction rather than using the Subtractor or a second copy of the Adder)
- Get
slt
working using the same circuitry as addition/subtraction (not just the Comparator)
What to turn in
Turn in screenshots of the following things and submit them to the Blackboard form for the assignment:
- Logisim Diagram(s) of your adder, subtractor, and or slt circuit (depending on how you did it, this may be 1, 2, or 3 different images)
- Logisim Diagram of your ALU
- A test vector that you made which includes comments indicating what they are testing for your specific ALU (this should include several different tests of each operation which are different than in my example, and your op values might be different!)
- Logisim test vector results screen showing which tests it passed and failed
The test vector and results screenshots might look like this (again, your ALU might use different codes for Op
, so include comments that help me understad your results)
Where to turn it in
Submit your document of images to the Assignment 6 hand-in form on Blackboard.