Knowledge Base Article
Why is my VHDL for loop not synthesized correctly?
Description
Due to a problem in the Quartus® II software versions 12.0 and later, you may not get a warning or error that the right bound of range must be constant when you have the following VHDL construct:
for J in 0 to <variable> loop
<code>
end loop;
This VHDL construct is not supported by Quartus II Integrated Synthesis and may result in incorrect synthesized logic.
Resolution
To avoid this problem, do not use this construct even though the Quartus II software does not give a warning or error.
This construct generates an appropriate message beginning with the Quartus II software version 12.1 SP1.
Updated 1 month ago
Version 2.0No CommentsBe the first to comment