diff options
author | RossTheRoss <mstrapp@protonmail.com> | 2020-11-21 15:24:04 -0600 |
---|---|---|
committer | RossTheRoss <mstrapp@protonmail.com> | 2020-11-21 15:24:04 -0600 |
commit | 63c9186ad87efb4c28c22296750f6494b2d97e0e (patch) | |
tree | 8a9b4017b7f90674eb25f784d66161296339dcc3 /ee4363/mp1/MIPSALU.v | |
parent | add breakout (diff) | |
download | homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar.gz homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar.bz2 homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar.lz homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar.xz homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.tar.zst homework-63c9186ad87efb4c28c22296750f6494b2d97e0e.zip |
aaaaaaaaaaaaaaaa
Diffstat (limited to '')
-rw-r--r-- | ee4363/mp1/MIPSALU.v | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ee4363/mp1/MIPSALU.v b/ee4363/mp1/MIPSALU.v new file mode 100644 index 0000000..096aff5 --- /dev/null +++ b/ee4363/mp1/MIPSALU.v @@ -0,0 +1,18 @@ +module MIPSALU (ALUctl, A, B, ALUOut, Zero); + input [3:0] ALUctl; + input [31:0] A,B; + output reg [31:0] ALUOut; + output Zero; + assign Zero = (ALUOut==0); + always @(ALUctl, A, B) + case (ALUctl) + 0: ALUOut <= A & B; + 1: ALUOut <= A | B; + 2: ALUOut <= A + B; + 6: ALUOut <= A - B; + 7: ALUOut <= A < B ? 1:0; + 12: ALUOut <= ~(A | B); + default: ALUOut <= 0; + endcase +endmodule + |