tyagifaisal
Newbie level 4
- Joined
- Feb 25, 2013
- Messages
- 7
- Helped
- 0
- Reputation
- 0
- Reaction score
- 0
- Trophy points
- 1,281
- Activity points
- 1,343
Hi,
I have a Verilog multiplier module which is part of a big hierarchy. When I synthesize it, during the "Elaborate Design" phase (using Synopsys DCS), I get the message that the memory device has been inferred as a latch. I don't have any dangling if...else statement, and if the issue is with the way I am taking care of the 'else' condition, can someone tell me the right way to do it?
Thanks,
Faisal
Here's my code and output from synthesis:
Synthesis Output:
Inferred memory devices in process
in routine mult line 9 in file
'/homes/mult.v'.
===========================================================================
| Register Name | Type | Width | Bus | MB | AR | AS | SR | SS | ST |
===========================================================================
| out_reg | Latch | 32 | Y | N | N | N | - | - | - |
===========================================================================
I have a Verilog multiplier module which is part of a big hierarchy. When I synthesize it, during the "Elaborate Design" phase (using Synopsys DCS), I get the message that the memory device has been inferred as a latch. I don't have any dangling if...else statement, and if the issue is with the way I am taking care of the 'else' condition, can someone tell me the right way to do it?
Thanks,
Faisal
Here's my code and output from synthesis:
Code:
module mult(in1, in2, out, mult_start);
input signed [16-1:0] in1, in2;
input mult_start;
output signed [32-1:0] out;
reg signed [32-1:0] out;
always @(in1 or in2 or mult_start)
begin
if (mult_start == 1'b1)
begin
out <= (in1 * in2);
end
else
out <= out;
end
endmodule
Synthesis Output:
Inferred memory devices in process
in routine mult line 9 in file
'/homes/mult.v'.
===========================================================================
| Register Name | Type | Width | Bus | MB | AR | AS | SR | SS | ST |
===========================================================================
| out_reg | Latch | 32 | Y | N | N | N | - | - | - |
===========================================================================