data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v
1: b"%Error: data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v:46: Cannot find file containing module: 'MULT'\n MULT #(.N(N/2), .M(N/2)) MULT1 (.A(y_in), .B(y_in), .O(y_sqr));\n ^~~~\n        ... Looked in:\n             data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib,data/full_repos/permissive/486954482/MULT\n             data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib,data/full_repos/permissive/486954482/MULT.v\n             data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib,data/full_repos/permissive/486954482/MULT.sv\n             MULT\n             MULT.v\n             MULT.sv\n             obj_dir/MULT\n             obj_dir/MULT.v\n             obj_dir/MULT.sv\n%Error: data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v:48: Cannot find file containing module: 'COMP'\n COMP #(.N(N)) COMP1 (.A(x), .B(y_sqr), .O(t));\n ^~~~\n%Error: data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v:50: Cannot find file containing module: 'SUB_'\n SUB_ #(.N(N/2), .M(N/2)) SUB1 (.A(y_in), .B(y0_in), .O({temp[0], y_min_y0}));\n ^~~~\n%Error: data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v:52: Cannot find file containing module: 'MUX'\n MUX #(.N(N/2)) MUX1 (.A(y_min_y0), .B(y_in), .S(t), .O(y_mid));\n ^~~\n%Error: data/full_repos/permissive/486954482/TinyGarble/circuit_synthesis/syn_lib/square_root_comb.v:55: Cannot find file containing module: 'ADD_'\n ADD_ #(.N(N/2), .M(N/2)) ADD1 (.A(y_mid), .B(y0), .O({temp[1],y}));\n ^~~~\n%Error: Exiting due to 5 error(s)\n"
module squar_root_unit #(parameter N = 8)(
	input		[N-1:0]		x,
	input	[N/2-1:0]	y_in, y0_in,
	output	[N/2-1:0]	y, y0
);

	wire 						t;
	wire		[N/2-1:0]	y_min_y0, y_mid;
	wire		[N-1:0]		y_sqr;
	wire		[1:0]		temp;
	

	MULT #(.N(N/2), .M(N/2)) MULT1 (.A(y_in), .B(y_in), .O(y_sqr));

	COMP #(.N(N)) COMP1 (.A(x), .B(y_sqr), .O(t));

	SUB_ #(.N(N/2), .M(N/2)) SUB1 (.A(y_in), .B(y0_in), .O({temp[0], y_min_y0}));

	MUX #(.N(N/2)) MUX1 (.A(y_min_y0), .B(y_in), .S(t), .O(y_mid));
	assign 	y0 = y0_in >> 1;

	ADD_ #(.N(N/2), .M(N/2)) ADD1 (.A(y_mid), .B(y0), .O({temp[1],y}));
	

endmodule
module squar_root_unit #(parameter N = 8)(
	input		[N-1:0]		x,
	input	[N/2-1:0]	y_in, y0_in,
	output	[N/2-1:0]	y, y0
);


	wire 						t;
	wire		[N/2-1:0]	y_min_y0, y_mid;
	wire		[N-1:0]		y_sqr;
	wire		[1:0]		temp;
	

	MULT #(.N(N/2), .M(N/2)) MULT1 (.A(y_in), .B(y_in), .O(y_sqr));

	COMP #(.N(N)) COMP1 (.A(x), .B(y_sqr), .O(t));

	SUB_ #(.N(N/2), .M(N/2)) SUB1 (.A(y_in), .B(y0_in), .O({temp[0], y_min_y0}));

	MUX #(.N(N/2)) MUX1 (.A(y_min_y0), .B(y_in), .S(t), .O(y_mid));
	assign 	y0 = y0_in >> 1;

	ADD_ #(.N(N/2), .M(N/2)) ADD1 (.A(y_mid), .B(y0), .O({temp[1],y}));
	

endmodule