Hi Rohit,
"Rohit Tandon" <rohit2000s@gmail.com> wrote in message
news:
[email protected] oups.com...
> I registered a 37-bit signal using an always block in verilog without
> reset specification, hoping that a SRL would be inferred if registering
> is done without a reset. But ISE still implemented it as a 37-bit
> register using flops. Could anyone please let me know if I missed out
> something? Any comments/suggestions would be appreciated. Thanks in
> advance.
The conditions for SRL16 inference for are:
(1) No resets (which you've covered);
(2) Identical clock-enables for all registers, or no clock-enables;
(3) Output of stage N feeds input of stage N+1 with no intervening logic;
(4) Output of each stage does not feed any other destination
For example, if you want a parallel-in, serial-out shift register (or
serial-in, parallel-out) then you cannot use SRL16s. Make sure all the
conditions above are met by your circuit.
Also check that SRL16 inference is enabled in your synthesis tool's options
(in your case XST, I guess).
If it still doesn't work, perhaps you could post the code for us to look at?
Cheers,
-Ben-