data/full_repos/permissive/174642777/Experiments/Lab X3/Lab 09 ADD_4bit_CLA/ADD_4bit_CLA.v
1: b'%Error: Cannot find file containing module: X3/Lab\n        ... Looked in:\n             data/full_repos/permissive/174642777/Experiments/Lab/X3/Lab\n             data/full_repos/permissive/174642777/Experiments/Lab/X3/Lab.v\n             data/full_repos/permissive/174642777/Experiments/Lab/X3/Lab.sv\n             X3/Lab\n             X3/Lab.v\n             X3/Lab.sv\n             obj_dir/X3/Lab\n             obj_dir/X3/Lab.v\n             obj_dir/X3/Lab.sv\n%Error: Cannot find file containing module: 09\n%Error: Cannot find file containing module: ADD_4bit_CLA,data/full_repos/permissive/174642777\n%Error: Cannot find file containing module: data/full_repos/permissive/174642777/Experiments/Lab\n%Error: Cannot find file containing module: ADD_4bit_CLA/ADD_4bit_CLA.v\n%Error: Exiting due to 5 error(s)\n'
module ADD_4bit_CLA(
  input wire[3:0] A,
  input wire[3:0] B,
  input wire Cin,
  output wire[3:0] S,
  output wire Cout
);
  
  FullAdder fa1(.A(A[0]), .B(B[0]), 
                .Cin(Cin), 
                .S(S[0]));
  
  FullAdder fa2(.A(A[1]), .B(B[1]), 
                .Cin( A[0]&B[0] | Cin&A[0] | Cin&B[0] ), 
                .S(S[1]));
  
  FullAdder fa3(.A(A[2]), .B(B[2]), 
                .Cin( A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0]) ), 
                .S(S[2]));
  
  FullAdder fa4(.A(A[3]), .B(B[3]), 
                .Cin( A[2]&B[2] | (A[2]|B[2])&(A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0])) ), 
                .S(S[3]));
  
  assign Cout = A[3]&B[3] | (A[3]|B[3])&(A[2]&B[2] | (A[2]|B[2])&(A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0])));

endmodule
module ADD_4bit_CLA(
  input wire[3:0] A,
  input wire[3:0] B,
  input wire Cin,
  output wire[3:0] S,
  output wire Cout
);

  
  FullAdder fa1(.A(A[0]), .B(B[0]), 
                .Cin(Cin), 
                .S(S[0]));
  
  FullAdder fa2(.A(A[1]), .B(B[1]), 
                .Cin( A[0]&B[0] | Cin&A[0] | Cin&B[0] ), 
                .S(S[1]));
  
  FullAdder fa3(.A(A[2]), .B(B[2]), 
                .Cin( A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0]) ), 
                .S(S[2]));
  
  FullAdder fa4(.A(A[3]), .B(B[3]), 
                .Cin( A[2]&B[2] | (A[2]|B[2])&(A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0])) ), 
                .S(S[3]));
  
  assign Cout = A[3]&B[3] | (A[3]|B[3])&(A[2]&B[2] | (A[2]|B[2])&(A[1]&B[1] | (A[1]|B[1])&(A[0]&B[0] | Cin&A[0] | Cin&B[0])));

endmodule