Prev Problem
Next Problem

71. Arithmetic Logic Unit

Back To All Submissions
Previous Submission
Next Submission

Solving Approach

How do you plan to solve it?

 

Code

/*Write your code here*/
module alu4(a,b,op,y,cf);
input [3:0] a,b;
input [2:0] op;
output  reg [3:0] y;
output reg cf;
always @(*)  begin 
    case (op)
    3'b000: {cf,y}=a+b;
    3'b001: {cf,y}=a+~b+1'b1;
    3'b010: begin 
         y=a&b;
         cf=1'b0;
    end
    3'b011:begin 
        y=a|b;
        cf=1'b0;
    end
    3'b100:begin 
        y=a^b;
        cf=1'b0;
    end
    default:begin 
        y=4'b0000;
        cf=1'b0;
    end
    endcase 
end
endmodule 
          

 

Was this helpful?
Upvote
Downvote