riley commented on issue TroubleElectrical/FPGA_Uni#3 2026-09-14 00:10:06 +10:00
ALU Testbench needs test cases and ALU needs to be tested.

Done in 78efccfe1e389d718e9b8a8c44227d99a0ead578

riley commented on issue TroubleElectrical/FPGA_Uni#2 2026-09-14 00:09:20 +10:00
Update Instruction classifier (and others) to use our own MUX rather than a case statement.

Instruction classifier was re-implemented in 4df723318bf1b41034fe40b330dfee432a08c264 to use explicit combinational logic with a gate depth of 3 and a throughput/pipeline delay of 1. It performs…

riley commented on issue TroubleElectrical/FPGA_Uni#3 2026-09-13 23:56:53 +10:00
ALU Testbench needs test cases and ALU needs to be tested.

Case statements (should) synthesize optimally provided that all possibilities assign to the same variables and that there is a default case. This was implemented in 4df723318bf1b41034fe40b330dfee43…

riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-13 23:54:01 +10:00
4df723318b Ensured case variable assignment is internally consistent with other possibilities to ensure optimal case synthesis
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-13 23:35:18 +10:00
49f539c855 Updated instruction classifier to use combinational logic with a depth of 3 gates (AND, XNOR, HAND)
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-13 23:09:18 +10:00
19ba1bf473 Added header guards to prevent errors from double-inclusions
78efccfe1e Implemented ALU test cases for all operations. Added ALU testbench to active testing. Fixed bug where alu_flags module argument was defined as a 2-element logic array output rather than a 2-bit logic output
Compare 2 commits »
riley opened issue TroubleElectrical/FPGA_Uni#4 2026-09-10 16:05:00 +10:00
Update ASU to use MUX on B rather than the current logic
riley opened issue TroubleElectrical/FPGA_Uni#3 2026-09-10 16:02:57 +10:00
ALU Testbench needs test cases and ALU needs to be tested.
riley opened issue TroubleElectrical/FPGA_Uni#2 2026-09-10 15:59:52 +10:00
Update Instruction classifier (and others) to use our own MUX rather than a case statement.
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-10 15:58:00 +10:00
f69f87ccab Just add cases for ALU testbench. The structure of the ALU testbench is now implemented.
cd7074a78c Need to change instruction classifier implementation to use a more parallel architecture as case statements can produce sequential MUX'es
Compare 2 commits »
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-10 15:42:55 +10:00
37644c629e Fixed bug of confuddling width with 2^n and w.
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-10 15:39:20 +10:00
e9feb3cb8d Merge branch 'main' of ssh://git.rileyk.au:19482/TroubleElectrical/FPGA_Uni
669357ccc0 Implemented ALU. Still needs testbench and testing done.
Compare 2 commits »
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-08 22:49:54 +10:00
5acf1c8b87 Fixed bug in adder/subtracter where code assuming width was the bit width was not updated when moving to the 2**N approach required by the assignment. Updated adder/subtracter testbench to correctly instantiate the asser/subtracter and removed unused variable
42f4e661dc Implemented shifter and its test bench code fully
9794f26137 Fixed error in logic unit testbench where it didn't instansiate the DUT at all as well as some faulty test cases and reset logic
fabfba7bdd Removed debug statement from instruction classifier testbench
f5a2455849 Added testbench for instruction classifier and fixed compilation errors. Should be fine to synthesise but icarus does not like the constant bit extraction in the always_comb block for some reason.
Compare 6 commits »
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:58:39 +10:00
b926d71523 Updated seven segment test bench to reflect prior commit
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:56:16 +10:00
3e8aa911ce Made RSIOut the LSB to correspond with wiring configuration
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:49:58 +10:00
dd5d044da3 Fixed bit ordering in seven segment truth table and test bench
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:33:01 +10:00
a89a66d34d Fixed bug where includes still refered to verilog rather than systemverilog. Inverted test cases in seven segment test bench to reflect changes made to module. There is still a bug with the module where it outputs garbage
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:27:10 +10:00
f881a4126b Inverted seven segment decoder to reflect the common anode
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 16:06:55 +10:00
6668969b03 Made it clear that we are using SystemVerilog by renaming HDL files to end in .sv rather than .v
riley pushed to main at TroubleElectrical/FPGA_Uni 2026-09-03 15:25:27 +10:00
0c21734447 Created general project structure. Only seven segment, logic unit and adder/subtractor modules and tests implemented