data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v
1: b"%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:194: Cannot find file containing module: 'AND2X1'\n  AND2X1 n32(.A(N[0]), .B(N[16]), .Y(N[32]));\n  ^~~~~~\n        ... Looked in:\n             data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce,data/full_repos/permissive/162571337/AND2X1\n             data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce,data/full_repos/permissive/162571337/AND2X1.v\n             data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce,data/full_repos/permissive/162571337/AND2X1.sv\n             AND2X1\n             AND2X1.v\n             AND2X1.sv\n             obj_dir/AND2X1\n             obj_dir/AND2X1.v\n             obj_dir/AND2X1.sv\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:195: Cannot find file containing module: 'AND2X1'\n  AND2X1 n48(.A(N[2]), .B(N[16]), .Y(N[48]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:196: Cannot find file containing module: 'AND2X1'\n  AND2X1 n64(.A(N[4]), .B(N[16]), .Y(N[64]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:197: Cannot find file containing module: 'AND2X1'\n  AND2X1 n82(.A(N[6]), .B(N[16]), .Y(N[82]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:198: Cannot find file containing module: 'AND2X1'\n  AND2X1 n98(.A(N[8]), .B(N[16]), .Y(N[98]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:199: Cannot find file containing module: 'AND2X1'\n  AND2X1 n114(.A(N[10]), .B(N[16]), .Y(N[114]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:200: Cannot find file containing module: 'AND2X1'\n  AND2X1 n132(.A(N[12]), .B(N[16]), .Y(N[132]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:201: Cannot find file containing module: 'AND2X1'\n  AND2X1 n148(.A(N[14]), .B(N[16]), .Y(N[148]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:203: Cannot find file containing module: 'AND2X1'\n  AND2X1 n164(.A(N[0]), .B(N[18]), .Y(N[164]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:204: Cannot find file containing module: 'BUFX2'\n  BUFX2 n166(.A(N[149]), .Y(N[166]));\n  ^~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:206: Cannot find file containing module: 'AND2X1'\n  AND2X1 n182(.A(N[2]), .B(N[18]), .Y(N[182]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:207: Cannot find file containing module: 'AND2X1'\n  AND2X1 n198(.A(N[4]), .B(N[18]), .Y(N[198]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:208: Cannot find file containing module: 'AND2X1'\n  AND2X1 n214(.A(N[6]), .B(N[18]), .Y(N[214]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:209: Cannot find file containing module: 'AND2X1'\n  AND2X1 n232(.A(N[8]), .B(N[18]), .Y(N[232]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:210: Cannot find file containing module: 'AND2X1'\n  AND2X1 n248(.A(N[10]), .B(N[18]), .Y(N[248]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:211: Cannot find file containing module: 'AND2X1'\n  AND2X1 n264(.A(N[12]), .B(N[18]), .Y(N[264]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:212: Cannot find file containing module: 'AND2X1'\n  AND2X1 n282(.A(N[14]), .B(N[18]), .Y(N[282]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:213: Cannot find file containing module: 'HAX1'\n  HAX1 n298(.A(N[48]), .B(N[164]), .YS(N[298]), .YC(N[299]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:214: Cannot find file containing module: 'HAX1'\n  HAX1 n314(.A(N[64]), .B(N[182]), .YS(N[314]), .YC(N[315]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:215: Cannot find file containing module: 'HAX1'\n  HAX1 n332(.A(N[82]), .B(N[198]), .YS(N[332]), .YC(N[333]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:216: Cannot find file containing module: 'HAX1'\n  HAX1 n348(.A(N[98]), .B(N[214]), .YS(N[348]), .YC(N[349]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:217: Cannot find file containing module: 'HAX1'\n  HAX1 n364(.A(N[114]), .B(N[232]), .YS(N[364]), .YC(N[365]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:218: Cannot find file containing module: 'HAX1'\n  HAX1 n382(.A(N[132]), .B(N[248]), .YS(N[382]), .YC(N[383]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:219: Cannot find file containing module: 'HAX1'\n  HAX1 n398(.A(N[167]), .B(N[264]), .YS(N[398]), .YC(N[399]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:220: Cannot find file containing module: 'AND2X1'\n  AND2X1 n414(.A(N[0]), .B(N[20]), .Y(N[414]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:221: Cannot find file containing module: 'AND2X1'\n  AND2X1 n432(.A(N[2]), .B(N[20]), .Y(N[432]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:222: Cannot find file containing module: 'AND2X1'\n  AND2X1 n448(.A(N[4]), .B(N[20]), .Y(N[448]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:223: Cannot find file containing module: 'AND2X1'\n  AND2X1 n464(.A(N[6]), .B(N[20]), .Y(N[464]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:224: Cannot find file containing module: 'AND2X1'\n  AND2X1 n482(.A(N[8]), .B(N[20]), .Y(N[482]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:225: Cannot find file containing module: 'AND2X1'\n  AND2X1 n498(.A(N[10]), .B(N[20]), .Y(N[498]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:226: Cannot find file containing module: 'AND2X1'\n  AND2X1 n514(.A(N[12]), .B(N[20]), .Y(N[514]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:227: Cannot find file containing module: 'AND2X1'\n  AND2X1 n532(.A(N[14]), .B(N[20]), .Y(N[532]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:228: Cannot find file containing module: 'FAX1'\n  FAX1 n548(.A(N[314]), .B(N[414]), .C(N[299]), .YS(N[548]), .YC(N[549]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:229: Cannot find file containing module: 'FAX1'\n  FAX1 n564(.A(N[332]), .B(N[432]), .C(N[315]), .YS(N[564]), .YC(N[565]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:230: Cannot find file containing module: 'FAX1'\n  FAX1 n582(.A(N[348]), .B(N[448]), .C(N[333]), .YS(N[582]), .YC(N[583]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:231: Cannot find file containing module: 'FAX1'\n  FAX1 n598(.A(N[364]), .B(N[464]), .C(N[349]), .YS(N[598]), .YC(N[599]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:232: Cannot find file containing module: 'FAX1'\n  FAX1 n614(.A(N[382]), .B(N[482]), .C(N[365]), .YS(N[614]), .YC(N[615]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:233: Cannot find file containing module: 'FAX1'\n  FAX1 n632(.A(N[398]), .B(N[498]), .C(N[383]), .YS(N[632]), .YC(N[633]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:234: Cannot find file containing module: 'FAX1'\n  FAX1 n648(.A(N[282]), .B(N[514]), .C(N[399]), .YS(N[648]), .YC(N[649]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:235: Cannot find file containing module: 'AND2X1'\n  AND2X1 n664(.A(N[0]), .B(N[22]), .Y(N[664]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:236: Cannot find file containing module: 'AND2X1'\n  AND2X1 n682(.A(N[2]), .B(N[22]), .Y(N[682]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:237: Cannot find file containing module: 'AND2X1'\n  AND2X1 n698(.A(N[4]), .B(N[22]), .Y(N[698]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:238: Cannot find file containing module: 'AND2X1'\n  AND2X1 n714(.A(N[6]), .B(N[22]), .Y(N[714]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:239: Cannot find file containing module: 'AND2X1'\n  AND2X1 n732(.A(N[8]), .B(N[22]), .Y(N[732]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:240: Cannot find file containing module: 'AND2X1'\n  AND2X1 n748(.A(N[10]), .B(N[22]), .Y(N[748]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:241: Cannot find file containing module: 'AND2X1'\n  AND2X1 n764(.A(N[12]), .B(N[22]), .Y(N[764]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:242: Cannot find file containing module: 'AND2X1'\n  AND2X1 n782(.A(N[14]), .B(N[22]), .Y(N[782]));\n  ^~~~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:243: Cannot find file containing module: 'FAX1'\n  FAX1 n798(.A(N[564]), .B(N[664]), .C(N[549]), .YS(N[798]), .YC(N[799]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:244: Cannot find file containing module: 'FAX1'\n  FAX1 n814(.A(N[582]), .B(N[682]), .C(N[565]), .YS(N[814]), .YC(N[815]));\n  ^~~~\n%Error: data/full_repos/permissive/162571337/multiplers/16x16_unsigned/pareto_pwr_wce/mul16u_3HJ_pdk45.v:245: Cannot find file containing module: 'FAX1'\n  FAX1 n832(.A(N[598]), .B(N[698]), .C(N[583]), .YS(N[832]), .YC(N[833]));\n  ^~~~\n%Error: Exiting due to too many errors encountered; --error-limit=50\n"
module mul16u_3HJ ( input[15:0] A,
                   input[15:0] B,
                   output [31:0] O
                 );

wire [15:0] ll,lh,hl,hh;
wire [31:0] llhhlh_sum;
wire [31:0] shifted_llhh, shifted_lh, shifted_hl;

localparam MAX1 = 15;
localparam MIN1 = 8;

localparam MAX2 = 7;
localparam MIN2 = 0;

mult8_cgp14zr_wc1577_csamrca LxL (.A(A[MAX2:MIN2]), .B(B[MAX2:MIN2]), .O(ll));
mul8_364 HxL (.A(A[MAX1:MIN1]), .B(B[MAX2:MIN2]), .O(hl));
mul8_364 LxH (.A(A[MAX2:MIN2]), .B(B[MAX1:MIN1]), .O(lh));
mul8_364 HxH (.A(A[MAX1:MIN1]), .B(B[MAX1:MIN1]), .O(hh));

assign shifted_llhh = { hh, ll }; 
assign shifted_lh = { {8{1'b0}}, lh, {8{1'b0}}}; 
assign shifted_hl = { {8{1'b0}}, hl, {8{1'b0}}};
CLA32bit LLHHLH (.a(shifted_llhh), .b(shifted_lh), .c_in(1'b0), .sum(llhhlh_sum), .c_out());
CLA32bit SUMO (.a(llhhlh_sum), .b(shifted_hl), .c_in(1'b0), .sum(O), .c_out());

endmodule
module mul16u_3HJ ( input[15:0] A,
                   input[15:0] B,
                   output [31:0] O
                 );


wire [15:0] ll,lh,hl,hh;
wire [31:0] llhhlh_sum;
wire [31:0] shifted_llhh, shifted_lh, shifted_hl;

localparam MAX1 = 15;
localparam MIN1 = 8;

localparam MAX2 = 7;
localparam MIN2 = 0;

mult8_cgp14zr_wc1577_csamrca LxL (.A(A[MAX2:MIN2]), .B(B[MAX2:MIN2]), .O(ll));
mul8_364 HxL (.A(A[MAX1:MIN1]), .B(B[MAX2:MIN2]), .O(hl));
mul8_364 LxH (.A(A[MAX2:MIN2]), .B(B[MAX1:MIN1]), .O(lh));
mul8_364 HxH (.A(A[MAX1:MIN1]), .B(B[MAX1:MIN1]), .O(hh));

assign shifted_llhh = { hh, ll }; 
assign shifted_lh = { {8{1'b0}}, lh, {8{1'b0}}}; 
assign shifted_hl = { {8{1'b0}}, hl, {8{1'b0}}};
CLA32bit LLHHLH (.a(shifted_llhh), .b(shifted_lh), .c_in(1'b0), .sum(llhhlh_sum), .c_out());
CLA32bit SUMO (.a(llhhlh_sum), .b(shifted_hl), .c_in(1'b0), .sum(O), .c_out());

endmodule