4.2. Dynamic Reconfiguration QSF Settings
QSF Settings | Description |
---|---|
set_instance_assignment -name IP_TILE_ASSIGNMENT -to <ip_instance_hpath> <tileid> | Assign an IP to a specific tile in which you want the IP to be placed. This assignment is not required if you use "auto-placement" during Quartus Support Logic Generation. |
set_instance_assignment -name IP_BB_LOCATION -to <bb_instance_hpath> <bb-location> | Assign a building block instance in the design to a specific location in the tile to which the IP containing the building block is assigned. Note that this assignment does not identify a specific tile. This assignment is not required if you use "auto-placement" during Quartus Support Logic Generation. |
set_instance_assignment -name IP_RECONFIG_GROUP -to <ip_instance_hpath> <reconfig-group-id-string> | Assign a Tile IP compliant IP in design to a named reconfiguration group. All IP in a group are located in the same tile. |
set_instance_assignment -name IP_RECONFIG_GROUP_STARTUP_INSTANCE -to <ip_instance_hpath> ON|OFF | Indicate if a Tile IP compliant IP instance is active at startup; also supplies the clocks. |
set_instance_assignment -name IP_RECONFIG_ID -to <ip_instance_hpath> <positive-number-greater-than-zero> | Specify a positive integer > 0 as an identifier for an IP. All such identifiers should be consecutive. The IDs are global, i.e. across the entire design. The reconfiguration IDs are defined globally and must be unique per Quartus design but not per Tile. The provided ID serves as a base for all subprofiles associated with that IP and the IDs for the subprofiles increment sequentially from the provided ID. If you do not provide an ID, the tool assigns an ID.
If the IP instances require consistent reconfiguration IDs assigned by Quartus per compilation, you should specify the reconfiguration IDs per IP instance. If you do not specify a reconfiguration ID in the qsf file, the Quartus® Prime Pro Edition auto-assigns the reconfiguration IDs. The generated .h file contains the reconfiguration ID value used per DR profile. Refer to Determining Profile Numbers.
Attention: When using this assignment, be careful not to assign reconfiguration IDs that overlap and cause collisions between subprofile IDs. (For example, two subprofiles having the same ID).
|
set_global_assignment -name IP_RECONFIG_GROUP_TYPE <reconfig-group-id-string>:<exclusive|inclusive>:clk_master |
Assign a reconfiguration group type to a Tile IP compliant IP in the design.
|
set_global_assignment -name IP_RECONFIG_GROUP_PARENT <parent-reconfig-group-id-string>:<child-reconfig-group-id-string> | Create group hierarchy, should be cumulative like VERILOG_FILE. |
set_instance_assignment -name IP_COLOCATE -from <hpath1> -to <hpath2> F_TILE | A QSF that associates a hub IP like the DR controller, with a slot IP like a protocol IP it is controlling. The IP instance represented by hpath1 and hpath2 should be put in the same F-tile. IP_COLOCATE is assigned on a "per IP" basis, not a "per profile" basis.
Note: The hpath1 is the hierarchy path of the Dynamic Reconfiguration Suite IP in your design and hpath2 is the hierarchy path of the Protocol IP in your design.
|
set_instance_assignment -name IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL -to <bb_instance_hpath> <clock-port-name> | Indicate which bb_m_hdpladadapt_rx or bb_m_hdpldadapt_tx instance supplies the master clock.
The allowed clock port names are:
All IP in the group containing <ip_instance_hpath> and any sub-groups receive this master clock.
|
QSF assignment example required for the dynamic reconfiguration designs
The Tile Interface Planner derives both the tile locations and IP hierarchy for the IP_TILE_ASSIGNMENT and IP_BB_LOCATION assignments.
set_instance_assignment -name IP_COLOCATE F_TILE -from dr_ctrl_inst|dr_f_0 \ -to ex_100G_mr_dut|eth_f_dr_0 -entity eth_dr_ed
set_instance_assignment -name IP_COLOCATE F_TILE -from dr_ctrl_inst|dr_f_0 \ -to GEN_CPRIPHY_MR_INST[0].cpriphy_dr_ed_dut_wrapper|cpriphy_mr_dut|cpriphy_mr_f_0 \ -entity cpriphy_dr_ed_hw
set_instance_assignment -name IP_COLOCATE F_TILE -from dr_dut|dr_f_0 \ -to dut|directphy_f_dr_0