data/full_repos/permissive/405799749/arithmetic_netlists/muliplier/Array multiplier for unsigned nos/array_mul.v
1: b'%Error: Cannot find file containing module: multiplier\n        ... Looked in:\n             data/full_repos/permissive/405799749/arithmetic_netlists/muliplier/Array/multiplier\n             data/full_repos/permissive/405799749/arithmetic_netlists/muliplier/Array/multiplier.v\n             data/full_repos/permissive/405799749/arithmetic_netlists/muliplier/Array/multiplier.sv\n             multiplier\n             multiplier.v\n             multiplier.sv\n             obj_dir/multiplier\n             obj_dir/multiplier.v\n             obj_dir/multiplier.sv\n%Error: Cannot find file containing module: for\n%Error: Cannot find file containing module: unsigned\n%Error: Cannot find file containing module: nos,data/full_repos/permissive/405799749\n%Error: Cannot find file containing module: data/full_repos/permissive/405799749/arithmetic_netlists/muliplier/Array\n%Error: Cannot find file containing module: nos/array_mul.v\n%Error: Exiting due to 6 error(s)\n'
module array_mul(prod,a,b);
	output [31:0] prod;
	input [15:0] a,b;
	wire [15:0] pp1,pp2,pp3,pp4,pp5,pp6,pp7,pp8,pp9,pp10,pp11,pp12,pp13,pp14,pp15,pp16;
	wire [14:0] ra_sum1,ra_sum2,ra_sum3,ra_sum4,ra_sum5,ra_sum6,ra_sum7,ra_sum8,ra_sum9,ra_sum10,ra_sum11,ra_sum12,ra_sum13,ra_sum14,ra_sum15,ra_sum16;
	wire [14:0] ra_cout1,ra_cout2,ra_cout3,ra_cout4,ra_cout5,ra_cout6,ra_cout7,ra_cout8,ra_cout9,ra_cout10,ra_cout11,ra_cout12,ra_cout13,ra_cout14,ra_cout15,ra_cout16;
	

	pp_bits pb1(.pp(pp1),.a(a),.x(b[0]));
	pp_bits pb2(.pp(pp2),.a(a),.x(b[1]));
	pp_bits pb3(.pp(pp3),.a(a),.x(b[2]));
	pp_bits pb4(.pp(pp4),.a(a),.x(b[3]));
	pp_bits pb5(.pp(pp5),.a(a),.x(b[4]));
	pp_bits pb6(.pp(pp6),.a(a),.x(b[5]));
	pp_bits pb7(.pp(pp7),.a(a),.x(b[6]));
	pp_bits pb8(.pp(pp8),.a(a),.x(b[7]));
	pp_bits pb9(.pp(pp9),.a(a),.x(b[8]));
	pp_bits pb10(.pp(pp10),.a(a),.x(b[9]));
	pp_bits pb11(.pp(pp11),.a(a),.x(b[10]));
	pp_bits pb12(.pp(pp12),.a(a),.x(b[11]));
	pp_bits pb13(.pp(pp13),.a(a),.x(b[12]));
	pp_bits pb14(.pp(pp14),.a(a),.x(b[13]));
	pp_bits pb15(.pp(pp15),.a(a),.x(b[14]));
	pp_bits pb16(.pp(pp16),.a(a),.x(b[15]));

	
	assign prod[0] = pp1[0];
	
	row_array ra1(.sum(ra_sum1),.cout(ra_cout1),.a(pp1[15:1]),.b(pp2[14:0]),.cin(15'd0));
	assign prod[1] = ra_sum1[0];
	


	
	row_array ra2(.sum(ra_sum2),.cout(ra_cout2),.a({pp2[15],ra_sum1[14:1]}),.b(pp3[14:0]),.cin(ra_cout1));
	assign prod[2]=ra_sum2[0];

	row_array ra3(.sum(ra_sum3),.cout(ra_cout3),.a({pp3[15],ra_sum2[14:1]}),.b(pp4[14:0]),.cin(ra_cout2));
	assign prod[3]=ra_sum3[0];

	row_array ra4(.sum(ra_sum4),.cout(ra_cout4),.a({pp4[15],ra_sum3[14:1]}),.b(pp5[14:0]),.cin(ra_cout3));
	assign prod[4]=ra_sum4[0];

	row_array ra5(.sum(ra_sum5),.cout(ra_cout5),.a({pp5[15],ra_sum4[14:1]}),.b(pp6[14:0]),.cin(ra_cout4));
	assign prod[5]=ra_sum5[0];

	row_array ra6(.sum(ra_sum6),.cout(ra_cout6),.a({pp6[15],ra_sum5[14:1]}),.b(pp7[14:0]),.cin(ra_cout5));
	assign prod[6]=ra_sum6[0];

	row_array ra7(.sum(ra_sum7),.cout(ra_cout7),.a({pp7[15],ra_sum6[14:1]}),.b(pp8[14:0]),.cin(ra_cout6));
	assign prod[7]=ra_sum7[0];

	row_array ra8(.sum(ra_sum8),.cout(ra_cout8),.a({pp8[15],ra_sum7[14:1]}),.b(pp9[14:0]),.cin(ra_cout7));
	assign prod[8]=ra_sum8[0];

	row_array ra9(.sum(ra_sum9),.cout(ra_cout9),.a({pp9[15],ra_sum8[14:1]}),.b(pp10[14:0]),.cin(ra_cout8));
	assign prod[9]=ra_sum9[0];

	row_array ra10(.sum(ra_sum10),.cout(ra_cout10),.a({pp10[15],ra_sum9[14:1]}),.b(pp11[14:0]),.cin(ra_cout9));
	assign prod[10]=ra_sum10[0];

	row_array ra11(.sum(ra_sum11),.cout(ra_cout11),.a({pp11[15],ra_sum10[14:1]}),.b(pp12[14:0]),.cin(ra_cout10));
	assign prod[11]=ra_sum11[0];

	row_array ra12(.sum(ra_sum12),.cout(ra_cout12),.a({pp12[15],ra_sum11[14:1]}),.b(pp13[14:0]),.cin(ra_cout11));
	assign prod[12]=ra_sum12[0];

	row_array ra13(.sum(ra_sum13),.cout(ra_cout13),.a({pp13[15],ra_sum12[14:1]}),.b(pp14[14:0]),.cin(ra_cout12));
	assign prod[13]=ra_sum13[0];

	row_array ra14(.sum(ra_sum14),.cout(ra_cout14),.a({pp14[15],ra_sum13[14:1]}),.b(pp15[14:0]),.cin(ra_cout13));
	assign prod[14]=ra_sum14[0];

	row_array ra15(.sum(ra_sum15),.cout(ra_cout15),.a({pp15[15],ra_sum14[14:1]}),.b(pp16[14:0]),.cin(ra_cout14));
	assign prod[15]=ra_sum15[0];
	
	cla_16bit c16b1(.sum(prod[31:16]),.c16(x),.a({1'd0,pp16[15],ra_sum15[14:1]}),.b({1'd0,ra_cout15}),.c0(1'd0));
	

endmodule
module array_mul(prod,a,b);

	output [31:0] prod;
	input [15:0] a,b;
	wire [15:0] pp1,pp2,pp3,pp4,pp5,pp6,pp7,pp8,pp9,pp10,pp11,pp12,pp13,pp14,pp15,pp16;
	wire [14:0] ra_sum1,ra_sum2,ra_sum3,ra_sum4,ra_sum5,ra_sum6,ra_sum7,ra_sum8,ra_sum9,ra_sum10,ra_sum11,ra_sum12,ra_sum13,ra_sum14,ra_sum15,ra_sum16;
	wire [14:0] ra_cout1,ra_cout2,ra_cout3,ra_cout4,ra_cout5,ra_cout6,ra_cout7,ra_cout8,ra_cout9,ra_cout10,ra_cout11,ra_cout12,ra_cout13,ra_cout14,ra_cout15,ra_cout16;
	

	pp_bits pb1(.pp(pp1),.a(a),.x(b[0]));
	pp_bits pb2(.pp(pp2),.a(a),.x(b[1]));
	pp_bits pb3(.pp(pp3),.a(a),.x(b[2]));
	pp_bits pb4(.pp(pp4),.a(a),.x(b[3]));
	pp_bits pb5(.pp(pp5),.a(a),.x(b[4]));
	pp_bits pb6(.pp(pp6),.a(a),.x(b[5]));
	pp_bits pb7(.pp(pp7),.a(a),.x(b[6]));
	pp_bits pb8(.pp(pp8),.a(a),.x(b[7]));
	pp_bits pb9(.pp(pp9),.a(a),.x(b[8]));
	pp_bits pb10(.pp(pp10),.a(a),.x(b[9]));
	pp_bits pb11(.pp(pp11),.a(a),.x(b[10]));
	pp_bits pb12(.pp(pp12),.a(a),.x(b[11]));
	pp_bits pb13(.pp(pp13),.a(a),.x(b[12]));
	pp_bits pb14(.pp(pp14),.a(a),.x(b[13]));
	pp_bits pb15(.pp(pp15),.a(a),.x(b[14]));
	pp_bits pb16(.pp(pp16),.a(a),.x(b[15]));

	
	assign prod[0] = pp1[0];
	
	row_array ra1(.sum(ra_sum1),.cout(ra_cout1),.a(pp1[15:1]),.b(pp2[14:0]),.cin(15'd0));
	assign prod[1] = ra_sum1[0];
	


	
	row_array ra2(.sum(ra_sum2),.cout(ra_cout2),.a({pp2[15],ra_sum1[14:1]}),.b(pp3[14:0]),.cin(ra_cout1));
	assign prod[2]=ra_sum2[0];

	row_array ra3(.sum(ra_sum3),.cout(ra_cout3),.a({pp3[15],ra_sum2[14:1]}),.b(pp4[14:0]),.cin(ra_cout2));
	assign prod[3]=ra_sum3[0];

	row_array ra4(.sum(ra_sum4),.cout(ra_cout4),.a({pp4[15],ra_sum3[14:1]}),.b(pp5[14:0]),.cin(ra_cout3));
	assign prod[4]=ra_sum4[0];

	row_array ra5(.sum(ra_sum5),.cout(ra_cout5),.a({pp5[15],ra_sum4[14:1]}),.b(pp6[14:0]),.cin(ra_cout4));
	assign prod[5]=ra_sum5[0];

	row_array ra6(.sum(ra_sum6),.cout(ra_cout6),.a({pp6[15],ra_sum5[14:1]}),.b(pp7[14:0]),.cin(ra_cout5));
	assign prod[6]=ra_sum6[0];

	row_array ra7(.sum(ra_sum7),.cout(ra_cout7),.a({pp7[15],ra_sum6[14:1]}),.b(pp8[14:0]),.cin(ra_cout6));
	assign prod[7]=ra_sum7[0];

	row_array ra8(.sum(ra_sum8),.cout(ra_cout8),.a({pp8[15],ra_sum7[14:1]}),.b(pp9[14:0]),.cin(ra_cout7));
	assign prod[8]=ra_sum8[0];

	row_array ra9(.sum(ra_sum9),.cout(ra_cout9),.a({pp9[15],ra_sum8[14:1]}),.b(pp10[14:0]),.cin(ra_cout8));
	assign prod[9]=ra_sum9[0];

	row_array ra10(.sum(ra_sum10),.cout(ra_cout10),.a({pp10[15],ra_sum9[14:1]}),.b(pp11[14:0]),.cin(ra_cout9));
	assign prod[10]=ra_sum10[0];

	row_array ra11(.sum(ra_sum11),.cout(ra_cout11),.a({pp11[15],ra_sum10[14:1]}),.b(pp12[14:0]),.cin(ra_cout10));
	assign prod[11]=ra_sum11[0];

	row_array ra12(.sum(ra_sum12),.cout(ra_cout12),.a({pp12[15],ra_sum11[14:1]}),.b(pp13[14:0]),.cin(ra_cout11));
	assign prod[12]=ra_sum12[0];

	row_array ra13(.sum(ra_sum13),.cout(ra_cout13),.a({pp13[15],ra_sum12[14:1]}),.b(pp14[14:0]),.cin(ra_cout12));
	assign prod[13]=ra_sum13[0];

	row_array ra14(.sum(ra_sum14),.cout(ra_cout14),.a({pp14[15],ra_sum13[14:1]}),.b(pp15[14:0]),.cin(ra_cout13));
	assign prod[14]=ra_sum14[0];

	row_array ra15(.sum(ra_sum15),.cout(ra_cout15),.a({pp15[15],ra_sum14[14:1]}),.b(pp16[14:0]),.cin(ra_cout14));
	assign prod[15]=ra_sum15[0];
	
	cla_16bit c16b1(.sum(prod[31:16]),.c16(x),.a({1'd0,pp16[15],ra_sum15[14:1]}),.b({1'd0,ra_cout15}),.c0(1'd0));
	

endmodule