Intel® Quartus® Prime Settings File (.qsf) Definition
The Intel® Quartus® Prime Settings File (.qsf) contains all of the project-wide and entity-level assignments and settings for the current revision of the project. A separate Intel® Quartus® Prime Settings File exists for each individual revision. The Intel® Quartus® Prime Settings File syntax is based on Tcl script syntax.
When you create assignments and settings using the Intel® Quartus® Prime wizards and dialog boxes or Tcl commands, the Intel® Quartus® Prime software automatically places the assignment at the end of the Intel® Quartus® Prime Settings File. If you modify the Intel® Quartus® Prime Settings File directly, any assignments you create are recognized, regardless of where in the file you place them.
All text in the Intel® Quartus® Prime Settings File preceded by a pound symbol (#) is considered to be a comment and is not processed. Any comments you create maintain the same relative position in the file when you make changes; comments associated with specific assignments may move when you make changes to assignments. The comments remain even if you delete the associated assignment, and the Intel® Quartus® Prime software does not delete or change comments when the design is processed.
Assignment Type | Command |
---|---|
Global Assignment | set_global_assignment |
Instance Assignment | set_instance_assignment |
Location Assignment | set_location_assignment |
Parameter Assignment | set_parameter |
Option | Example | Description |
---|---|---|
-name | The QSF keyword for the assignment. | |
-value |
set_global_assignment -name family -value Stratix® set_global_assignment -name family Stratix® |
The value of the assignment. The option -value is optional; the assignment is recognized without the-value option. |
-to |
set_location_assignment iobank_1 -to chiptrip\|\|accel |
The destination node for the assignment. Used in single-point and point-to-point assignments. |
-from |
set_instance_assignment -name multicycle 8 -from clock -to timeo |
The source node for the assignment. Used in point-to-point assignments. |
-entity |
set_global_assignment -name ll_auto_size on -entity filtref -section Region_0 |
Specifies the entity for the assignment. This option is recognized in all assignments for which it is required, but is only needed when the assignment is for an entity other than the top-level entity. When the -entity option is required and is not present, the Intel® Quartus® Prime software applies the assignment to the top-level entity. |
-section_id |
set_global_assignment -name eda_map_illegal_characters on -section_id eda_simulation |
Specifies the Logic Lock region, EDA tool type, clique name, breakpoint name, clock name, debug hub name, I/O bank name, or timegroup name for the assignment. |
-comment |
set_instance_assignment -name auto_carry_chains on -to accel -comment "Carry chain comment.". |
Displays any comments you add to the assignment. |
-disable |
set_instance_assignment -name auto_global_memory_controls off -to clock -disable |
Disables the assignment so that it is not processed. |
When creating assignments, you can call assignments from other Intel® Quartus® Prime Settings Files using the source keyword and the Intel® Quartus® Prime Settings File name you want to call. Using the source keyword allows you to use assignments from any other Intel® Quartus® Prime Settings File without having to import the assignments or transfer them to the current Intel® Quartus® Prime Settings File. Any assignment called from another Intel® Quartus® Prime Settings File takes precedence over assignments read before the source line in the current Intel® Quartus® Prime Settings File. For example, the file chiptrip.qsf uses the source keyword to import assignments from new_assignments.qsf:
chiptrip.qsf |
new_assignments.qsf |
---|---|
set_global_assignment -name top_level_entity chiptrip set_global_assignment -name family arria10 source new_assignments.qsf |
set_global_assignment -name device auto |
After compilation the assignments in new_assignments.qsf are processed as if they were in the file chiptrip.qsf, but the assignments are not copied into chiptrip.qsf.
Intel recommends using relative paths when creating assignments and settings that require file name information. Absolute paths do not always transfer properly across different platforms and directories.