diff --git a/rc_add_sub_32.v b/rc_add_sub_32.v index 86cf55b..5418e4f 100644 --- a/rc_add_sub_32.v +++ b/rc_add_sub_32.v @@ -37,7 +37,9 @@ genvar i; generate for (i = 0; i < 64; i = i + 1) begin : add64_gen_loop - FULL_ADDER add64_inst(Y[i], C[i+1], A[i], B[i] ^ SnA, C[i]); + wire B_xor; + xor (B_xor, B[i], SnA); + FULL_ADDER add64_inst(Y[i], C[i+1], A[i], B_xor, C[i]); end endgenerate @@ -62,7 +64,9 @@ genvar i; generate for (i = 0; i < 32; i = i + 1) begin : add32_gen_loop - FULL_ADDER add32_inst(Y[i], C[i+1], A[i], B[i] ^ SnA, C[i]); + wire B_xor; + xor (B_xor, B[i], SnA); + FULL_ADDER add32_inst(Y[i], C[i+1], A[i], B_xor, C[i]); end endgenerate