F-Tile Dynamic Reconfiguration Suite Intel® FPGA IP User Guide

ID 711009
Date 4/03/2023
Public

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

Document Table of Contents

4.14.2. Automation for selecting the Master Clock Channel

This section describes a method which allows the Intel Quartus Prime software to automatically select the System PLL DIV2 output for dynamic reconfiguration of the protocol IP. Using this method alleviates the need to specify a stable, non-reconfigurable master clock channel within the protocol IP.
In order to allow the Intel Quartus Prime software to automatically select the system PLL DIV2 output for dynamic reconfiguration protocol IP, perform the following steps:
  1. Configure the protocol IP instance with the targeted settings.
  2. Create your RTL design. There are no special connections required in the RTL for this method.
  3. In Quartus, run the Support-Logic Generation.
  4. Open Tile Assignment Editor.
  5. Create a new Dynamic Reconfiguration group.
  6. Add your protocol IP instance to the Reconfiguration group.
  7. Assign the proper Reconfiguration Controller to the Reconfiguration Group.
  8. Click on the Has master clock channel check box.
  9. Do NOT assign a Master Clock Channel.

    Leave Use master clock channel from field blank.

  10. Click on Save Tile Alignment Editor button.
  11. Compile the dynamic reconfiguration design.
For example, consider an example design that includes three instances of Direct PHY Multirate IP variants spread across two tiles.
Figure 23. Tile Assignment Editor includes three instances of Direct PHY Multirate IP variants spread across two tiles.
In the above screenshot, the following reconfiguration groups are created:
  • Test
  • Test_WP
Each reconfiguration group corresponds to a unique tile and is associated with its own reconfiguration controller. For each reconfiguration group Has master clock channel is selected, with Use master clock channel from left blank in order to generate the IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL OFF .qsf assignment.

Quartus uses this information to automatically select the System PLL DIV2 source for dynamic reconfiguration, eliminating the need to reserve a stable PMA stream for the master clock channel.

The QSF assignments which are generated from the above Tile Assignment Editor are shown below:
set instance_assignmsetent -name IP_COLOCATE F_TILE -from 
gen_xcvr.xcvr_i|gen_dr_suites[3].gen_dr_suite.ip_dr_suite_i|dr_f_0 -to 
gen_xcvr.xcvr_i|s0_3_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_insts[0].gen_xcvr_en.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_instance_assignment -name IP_COLOCATE F_TILE -from 
gen_xcvr.xcvr_i|gen_dr_suites[3].gen_dr_suite.ip_dr_suite_i|dr_f_0 -to 
gen_xcvr.xcvr_i|q0_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_instance_assignment -name IP_COLOCATE F_TILE -from 
gen_xcvr.xcvr_i|gen_dr_suites[1].gen_dr_suite.ip_dr_suite_i|dr_f_0 -to 
gen_xcvr.xcvr_i|ddq0_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_global_assignment -name IP_RECONFIG_GROUP_TYPE "TEST:EXCLUSIVE:CLK_MASTER" -entity c7_chip

set_global_assignment -name IP_RECONFIG_GROUP_TYPE "TEST_WP:INCLUSIVE:CLK_MASTER" -entity c7_chip

set_instance_assignment -name IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL OFF -to
gen_xcvr.xcvr_i|ddq0_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_instance_assignment -name IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL OFF -to 
gen_xcvr.xcvr_i|s0_3_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_insts[0].gen_xcvr_en.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_instance_assignment -name IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL OFF -to 
gen_xcvr.xcvr_i|q0_i|gen_xcvr.gen_dr_en.gen_dr_mode.xcvr_inst|directphy_f_dr_0 -entity c7_chip

set_global_assignment -name IP_RECONFIG_GROUP_PARENT
"TEST:GEN_XCVR.XCVR_I|DDQ0_I|GEN_XCVR.GEN_DR_EN.GEN_DR_MODE.XCVR_INST|DIRECTPHY_F_DR_0/RG_A_E" -entity c7_chip

set_global_assignment -name IP_RECONFIG_GROUP_PARENT
"TEST_WP:GEN_XCVR.XCVR_I|S0_3_I|GEN_XCVR.GEN_DR_EN.GEN_DR_MODE.XCVR_INSTS[0].GEN_XCVR_EN.XCVR_INST|
DIRECTPHY_F_DR_0/RG_A_E" -entity c7_chip

set_global_assignment -name IP_RECONFIG_GROUP_PARENT 
"TEST_WP:GEN_XCVR.XCVR_I|S0_3_I|GEN_XCVR.GEN_DR_EN.GEN_DR_MODE.XCVR_INSTS[0].GEN_XCVR_EN.XCVR_INST|
DIRECTPHY_F_DR_0/RG_A_E" -entity c7_chip