Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Warning :XST: 646 in simple Verilog Design

Status
Not open for further replies.

hector.j.cabrera

Newbie level 1
Joined
Aug 29, 2010
Messages
1
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,286
Hi, I'm new using verilog, so I starter with a simple design of a 4 bit full adder:


Code:
module full_adder( a, b, c_in, c_out, sum);
		
		input [3:0] a,b;
		input c_in;
		output reg c_out;
		output reg [3:0] sum;
		
		/*input wire [3:0] a, b,
		input wire c_in,
		output reg [3:0] sum,
		output reg c_out
    );*/

	reg [4:0] sum_tmp;

	always @(a or b or c_in)
	begin
		sum_tmp = a + b +c_in;
		{c_out, sum} = sum_tmp;
	end


endmodule


I try differents port declaration style but I still get the next warning:


Code:
WARNING:Xst:646 - Signal <sum_tmp> is assigned but never used. This unconnected signal will be trimmed during the optimization process.


What its wrong with the code? how can I remove the warning?

Thanks!
 

I think you can simply ignore this warning.The synthesis tool here, is trying to optimize the design and it found that the declared register is not actually not needed for the design to work.See if the code works in simulation.If yes ignore the warning.

I am not sure if this is valid in Verilog, but can you try this?

{c_out, sum} = a + b +c_in;
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top