Objectives
- Understand how a ALU performs numerical operations
Approach Taken
In this project I implemented:
- 1-bit and 8-bit adder using gates (AND, XOR, OR and NOT).
- 8-bit adder / substractor using gates.
- 8-bit equality and less-than checker using gates.
- Tests code to validate the behaviour of components.
- ALU component that supported multiplication and shifts (left and right).
Learning Outcomes
- Developed a understanding how to describe systems in languages like Verilog.
- Gained an appreciation of using tests to provide fast feedback for the behaviour of a system.