cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
4,028 Views
Registered: ‎03-02-2014

Error with OBUF

Jump to solution

Hi friends,

 

i am desining a simple adder for a project but ise keeps erroring as below:

ERROR:MapLib:979 - LUT3 symbol "Addup/Sum1" (output signal=Sum2_1_OBUF) has
input signal "Cin" which will be trimmed. See Section 5 of the Map Report
File for details about why the input signal will become undriven.

 

this is the simple programs for adder.

 

module FulAdder( Cout,Sum,A,B,Cin);
output Cout;
output Sum;
input A,B,Cin;

and an1 (Outan1,A,B);

xor x01 (Outxo1,A,B);

and an2 (Outan2,Cin,Outxo1);

or or1 (Outor1,Outan1,Outan2);

xor xo2 (Sum,Outxo1,Cin);


endmodule

 

********************

 

 

module Adder2(Cout,Sum2,A,B,Cin);
output Cout;
output [1:0] Sum2;

input [1:0] A;
input [1:0] B;
input Cin;

wire Outdow;

FulAdder Adddow (Outdow,Sum2[0],A[0],B[0],Cin);

FulAdder Addup (Cout,Sum2[1],A[1],B[1],Outdow);

endmodule

 

 

*****************************

 

 

eny body have any Idea what can i do ?

 

 

thanks to all.

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Xilinx Employee
Xilinx Employee
4,939 Views
Registered: ‎09-20-2012

Hi,

 

In FULLADDER module, I dont see Cout is connected. See below. You have defined Cout as an output but didnot assign anything to it in the code. This is the reason the Cin input of Addup submodule is getting trimmed which results in MAP error. Please fix this in your code.

 

module FulAdder( Cout,Sum,A,B,Cin);
output Cout;
output Sum;
input A,B,Cin;
and an1 (Outan1,A,B);
xor x01 (Outxo1,A,B);
and an2 (Outan2,Cin,Outxo1);
or or1 (Outor1,Outan1,Outan2);
xor xo2 (Sum,Outxo1,Cin);

endmodule

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)

View solution in original post

3 Replies
Highlighted
Historian
Historian
4,013 Views
Registered: ‎02-25-2008

For starters, used named association for your module instances. 

And show the lower-level modules.

----------------------------Yes, I do this for a living.
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
4,940 Views
Registered: ‎09-20-2012

Hi,

 

In FULLADDER module, I dont see Cout is connected. See below. You have defined Cout as an output but didnot assign anything to it in the code. This is the reason the Cin input of Addup submodule is getting trimmed which results in MAP error. Please fix this in your code.

 

module FulAdder( Cout,Sum,A,B,Cin);
output Cout;
output Sum;
input A,B,Cin;
and an1 (Outan1,A,B);
xor x01 (Outxo1,A,B);
and an2 (Outan2,Cin,Outxo1);
or or1 (Outor1,Outan1,Outan2);
xor xo2 (Sum,Outxo1,Cin);

endmodule

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)

View solution in original post

Highlighted
Visitor
Visitor
3,976 Views
Registered: ‎03-02-2014

Thanks alot frien. It solwed. that was an obviouse mistake of mine  :-).

0 Kudos