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(
    input[3:0] a,b,
    input[2:0] op,
    output reg [3:0] y,
    output reg cf
);

    always@(*) begin
        cf=0;
        case(op) 
            3'd0 : {cf,y} = a+b; 
            3'd1 : {cf,y} = a + ~b +1;
            3'd2 : y = a & b;
            3'd3 : y = a | b;
            3'd4 : y = a ^ b;
            default : y = 4'd0;
        endcase
    end


endmodule

 

Was this helpful?
Upvote
Downvote