data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v
1: b"%Error: data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v:14: Cannot find file containing module: 'SN74194'\n SN74194 MultiplierRegister(Multiplier,MultiplierOut,1'b0,1'b0,Shift1[2],Shift0[2],reset,clock);\n ^~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/42149584/MultiplicationUnit,data/full_repos/permissive/42149584/SN74194\n             data/full_repos/permissive/42149584/MultiplicationUnit,data/full_repos/permissive/42149584/SN74194.v\n             data/full_repos/permissive/42149584/MultiplicationUnit,data/full_repos/permissive/42149584/SN74194.sv\n             SN74194\n             SN74194.v\n             SN74194.sv\n             obj_dir/SN74194\n             obj_dir/SN74194.v\n             obj_dir/SN74194.sv\n%Error: data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v:15: Cannot find file containing module: 'SN74157'\n SN74157 MultiplicantMux(Multiplicant[3],1'b0,Multiplicant[2],1'b0,Multiplicant[1],1'b0,Multiplicant[0],1'b0,1'b0,MultiplierOut[0],QA,QB,QC,QD);\n ^~~~~~~\n%Error: data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v:20: Cannot find file containing module: 'SN74194'\n SN74194 UpperProductRegister(Sum,Product[7:4],1'b0,CarryOut,Shift1[1],Shift0[1],reset,clock);\n ^~~~~~~\n%Error: data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v:23: Cannot find file containing module: 'SN74194'\n SN74194 LowerProductRegister(4'd0,Product[3:0],1'b0,Product[4],Shift1[0],Shift0[0],reset,clock);\n ^~~~~~~\n%Error: data/full_repos/permissive/42149584/MultiplicationUnit/DataUnit.v:26: Cannot find file containing module: 'SN7483'\n SN7483 Adder({QA,QB,QC,QD},Product[7:4],1'b0,CO,Sum);\n ^~~~~~\n%Error: Exiting due to 5 error(s)\n"
module DataUnit(Product, Multiplicant, Multiplier, Shift1, Shift0, reset, clock);
	input	clock, reset;
	input [3:0] Multiplicant, Multiplier;
	input [2:0] Shift1, Shift0;
	output [7:0] Product;


	wire [3:0] MultiplierOut;
	SN74194 MultiplierRegister(Multiplier,MultiplierOut,1'b0,1'b0,Shift1[2],Shift0[2],reset,clock);
	SN74157 MultiplicantMux(Multiplicant[3],1'b0,Multiplicant[2],1'b0,Multiplicant[1],1'b0,Multiplicant[0],1'b0,1'b0,MultiplierOut[0],QA,QB,QC,QD);


	wire [3:0] Sum;
	reg CarryOut;
	SN74194 UpperProductRegister(Sum,Product[7:4],1'b0,CarryOut,Shift1[1],Shift0[1],reset,clock);
	

	SN74194 LowerProductRegister(4'd0,Product[3:0],1'b0,Product[4],Shift1[0],Shift0[0],reset,clock);
	
	wire CO;
	SN7483 Adder({QA,QB,QC,QD},Product[7:4],1'b0,CO,Sum);

	always@(posedge clock or negedge reset)
		if(reset==0) CarryOut<=0;
		else CarryOut<=CO;
endmodule
module DataUnit(Product, Multiplicant, Multiplier, Shift1, Shift0, reset, clock);

	input	clock, reset;
	input [3:0] Multiplicant, Multiplier;
	input [2:0] Shift1, Shift0;
	output [7:0] Product;


	wire [3:0] MultiplierOut;
	SN74194 MultiplierRegister(Multiplier,MultiplierOut,1'b0,1'b0,Shift1[2],Shift0[2],reset,clock);
	SN74157 MultiplicantMux(Multiplicant[3],1'b0,Multiplicant[2],1'b0,Multiplicant[1],1'b0,Multiplicant[0],1'b0,1'b0,MultiplierOut[0],QA,QB,QC,QD);


	wire [3:0] Sum;
	reg CarryOut;
	SN74194 UpperProductRegister(Sum,Product[7:4],1'b0,CarryOut,Shift1[1],Shift0[1],reset,clock);
	

	SN74194 LowerProductRegister(4'd0,Product[3:0],1'b0,Product[4],Shift1[0],Shift0[0],reset,clock);
	
	wire CO;
	SN7483 Adder({QA,QB,QC,QD},Product[7:4],1'b0,CO,Sum);

	always@(posedge clock or negedge reset)
		if(reset==0) CarryOut<=0;
		else CarryOut<=CO;
endmodule