Quartus® Prime Pro Edition User Guide: Platform Designer

ID 683609
Date 9/30/2024
Public
Document Table of Contents

3.5. Exporting HDL Parameters to a System

You can define and export Platform Designer component HDL parameters to make the parameters accessible to a higher-level system. After adding system HDL parameters, you can map the HDL parameters to components instantiated within the system.

This technique allows you to set a component's parameter values outside of the immediate subsystem that contains the component, and propagate the HDL parameters upward. When you generate the system HDL, the HDL includes the parameters and mapping that you specify.

Note: Parameterization of ports is not supported.
To export an instantiated component's HDL parameters to a system, follow these steps:
  1. Instantiate a component in a Platform Designer system, as any of the following describe:
  2. In Platform Designer, click View > HDL Parameters. The HDL Parameters tab allows you to define system HDL parameters, and overwrite instantiated components' HDL parameter values in the current system.
  3. To add a new HDL parameter to the current system, click the Add HDL Parameter button and specify values for the parameter name, Type, Width, Value, and Tooltip options that apply to the HDL parameter. Refer to HDL Parameters Tab Settings and Controls.
  4. To export the parameter during system HDL generation, thereby exposing the HDL parameter to a higher-level system, enable the Export option.
    Figure 152. Specifying HDL Parameters
  5. To change the parameter value for Modules with Exported HDL Parameters, select the Value that you want to implement during HDL generation. You can specify any of the added parameters as the value, as Figure 152 shows with any of the TOP_PARAMx parameters.
  6. To generate the HDL that includes exported parameters, click the Generate HDL button in Platform Designer.
    Figure 153. Generated HDL for Parameters Specified in Figure 81

    When you generate the HDL, Platform Designer instantiates the IP or generic components with the inline parameters set to the system HDL parameter values, or set to constant values if applicable:

    • For IP components with parameters defined in _hw.tcl and subsystems—the generated system HDL only writes out inline parameters for those HDL parameters that you overwrite for the system in the HDL Parameters tab (or with the set_exposed_hdl_parameter_value scripting command).
    • For generic HDL or Blackbox components—the generated system HDL writes out all HDL parameters in the instantiation. The generated system HDL prioritizes setting HDL parameter values you specify in the HDL Parameters tab (or with the set_exposed_hdl_parameter_value scripting command). If the component's HDL parameter value is not overwritten in the HDL Parameters tab or with set_exposed_hdl_parameter_value, the HDL parameter's default value applies.
    Note: If instantiating your component in _hw.tcl, rather than using the GUI, you must set HDL_PARAMETER to true and AFFECTS_GENERATION to false.