The following table displays information for the set_parameter Tcl command:

Tcl Package and Version

Belongs to ::quartus::project 6.0


set_parameter [-h | -help] [-long_help] [-comment <comment>] [-disable] [-entity <entity_name>] [-fall] -name <name> [-remove] [-rise] [-tag <data>] [-to <destination>] [<value>]


-h | -help

Short help


Long help with examples and possible return values

-comment <comment>



Option to disable parameter

-entity <entity_name>

Entity to which to add parameter


Option applies to falling edge

-name <name>

Parameter name


Option to remove parameter


Option applies to rising edge

-tag <data>

Option to tag data to this assignment

-to <destination>

Destination of parameter


Parameter value


Sets or removes the specified parameter name.

The "-name" option is not case sensitive.
The "-to" option is case sensitive.

The parameters created or modified by using this Tcl command are
not saved to the Quartus II Settings File (.qsf) unless you
explicitly call one of the following two Tcl commands:

1) export_assignments
2) project_close (unless "-dont_export_assignments" is specified)

These two Tcl commands reside in the ::quartus::project Tcl 
package. You must save assignment changes before you run 
Quartus(R) II command-line executables. Note, however, that 
the Tcl commands "execute_flow" and "execute_module" (part 
of the ::quartus::flow Tcl package) automatically call 
"export_assignments" before they run command-line executables.

Use the "-entity" option to force the parameter to the specified
entity. If the "-entity" option is not specified, the value for 
the FOCUS_ENTITY_NAME assignment is used. If the FOCUS_ENTITY_NAME
value is not found, the revision name is used.

A parameter is an attribute of a megafunction, macrofunction,
or certain primitives that determines the logic created or used
to implement the function. The parameter information can be 
used to determine the actual primitives and other subdesigns 
needed to implement the logic of the function.

The following general guidelines apply to parameters:

*  All logic options can be assigned as parameters for individual
   instances of megafunctions or macrofunctions. For a given 
   logic OPTION the precedence for parameters is:

      1) Instance specific logic option settings
      2) Instance specific parameter settings
      3) Project-wide default parameter settings

*  You cannot assign a value to the predefined Altera(R) 
   parameter DEVICE_FAMILY, which represents the device family 
   assigned for the project. However, you can use the parameter 
   value in comparisons.

*  The predefined Altera LPM_PIPELINE and LATENCY parameters 
   can be assigned to an instance of a megafunction or 
   macrofunction. However, the parameter applies only to that 
   instance, and is not inherited by the subdesigns of that 

*  All logic options can be assigned as parameters for individual
   megafunctions or macrofunctions. However, logic options cannot 
   be assigned global, project-wide default parameter values.

Example Usage

## Set project-wide, default WIDTH parameter value
set_parameter -name WIDTH 8

## Set entity-specific SIZE parameter value
## to "my_ram" entity
set_parameter -entity my_ram -name SIZE 16

## Specify the same parameter to my_ram
## but inside "top_level" entity
set_parameter -entity top_level -to my_ram -name SIZE 16

Return Value

Code Name


String Return

TCL_OK 0 INFO: Operation successful
TCL_OK 0 INFO: Removed parameter: <string>
TCL_ERROR 1 ERROR: Can't find active revision name. Make sure there is an open, active revision name.
TCL_ERROR 1 ERROR: Entity does not exist or uses illegal name characters: <string>. Specify a legal entity name.
TCL_ERROR 1 ERROR: Can't run Tcl command while a process is in progress: <string>. To run the command, stop the compilation or simulation; or wait for the compilation or simulation to complete.
TCL_ERROR 1 ERROR: Value <string> for <string> assignment is illegal. Specify a legal value.
TCL_ERROR 1 ERROR: Open project does not exist. Open an existing project or create a new project.
TCL_ERROR 1 ERROR: The -<string> option is not required but was specified with the value: <string>. Delete the option.
TCL_ERROR 1 ERROR: The -<string> option is required but was not specified. Specify the required option.
TCL_ERROR 1 ERROR: Parameter does not exist and cannot be removed: <string>. Specify an existing parameter name.
TCL_ERROR 1 ERROR: An unknown error has occured.
TCL_ERROR 1 ERROR: Missing <<string>> for <string> assignment. Specify the required <string>.