Article ID: 000085792 Content Type: Troubleshooting Last Reviewed: 03/11/2013

Why is my VHDL for loop not synthesized correctly?

Environment

  • Quartus® II Subscription Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    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.

    Related Products

    This article applies to 1 products

    Intel® Programmable Devices