Intel® Quartus® Prime Pro Edition User Guide: Design Optimization

ID 683641
Date 10/02/2023

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

6.5.5. Back-Annotate Optimized Assignments

The Compiler maps the elements of your design to specific device resources during fitting. After compilation, you can back-annotate (copy) the Compiler's resource assignments to preserve that same implementation in subsequent compilations. Back-annotation can simplify timing closure by allowing you to lock down placement of your optimized results.

Locking down placement of large blocks related to Clocks, RAMs, and DSPs can produce higher fMAX with less noise. Large blocks like RAMs and DSPs have heavier connectivity than regular LABs, complicating movement during placement. When a seed produces good results from suitable RAM and DSP placement, you can capture that placement with back-annotation. Subsequent compiles can then benefit from the high quality RAM and DSP placement from the good seed.

Back-Annotate Assignments Dialog Box

To back-annotate (copy) the device resource assignments from the last compilation to the project .qsf (or to a Tcl file) for use in the next compilation:

  1. Run a full compilation, or run the Fitter through at least the Place stage.
  2. Click Assignments > Back-Annotate Assignments.
  3. Under Assignments to back-annotate, specify whether you want to preserve Pin assignments, RAM assignments, DSP assignments, Clock assignments, and Clock Spine assignments in the back-annotation.
  4. In Filter, specify a text string (including wildcards) if you want to filter back-annotated assignments by entity name.
  5. Under Output, specify whether to save the back-annotated assignments to the .qsf or to a Tcl file. A default Tcl file name displays.

Alternatively, you can run back-annotation with the following quartus_cdb executable. The Shell command field displays the shell command constructed by the options that you specify in the GUI.

quartus_cdb chiptrip_nf --back_annotate --pin --ram --dsp --clocks \
    --spines --file "<file>.tcl"
Note: Check available arguments by running quartus_cdb <project> --back_annotate --help.