Files
nand2tetris_verilog/fulladder.v
2024-06-13 19:58:39 -07:00

16 lines
411 B
Verilog

`ifndef _fulladder_v
`define _fulladder_v
`include "halfadder.v"
`include "or.v"
module FullAdder (input a, input b, input c, output sum, output carry);
wire halfsum, halfcarry1, halfcarry2;
HalfAdder u1 (.a(a), .b(b), .sum(halfsum), .carry(halfcarry1));
HalfAdder u2 (.a(halfsum), .b(c), .sum(sum), .carry(halfcarry2));
Or u3 (.a(halfcarry1), .b(halfcarry2), .out(carry));
endmodule
`endif