F-Tile动态重配置套件 Intel® FPGA IP用户指南

ID 711009
日期 6/21/2022
Public
文档目录

4.2. 动态重配置QSF设置

本节介绍了可用于动态重配置的QSF设置。
当创建QSF分配(assignment)时,您必须对使用中的所有IP定义<ip_instance_hpath>层次化路径。.qip文件决定了由<ip_name>/ip_name.qip路径中的工具所生成的每个IP的目录。
表 11.  动态重配置QSF设置
QSF设置 描述
set_instance_assignment -name IP_TILE_ASSIGNMENT -to <ip_instance_hpath> <tileid> 将设计中的一个符合Tile IP的IP分配给一个符合Tile IP的tile。
set_instance_assignment -name IP_BB_LOCATION -to <bb_instance_hpath> <bb-location>

将设计中的一个BB实例分配给tile(包含的IP分配给此tile)中的一个位置。

请注意,该分配不会确定一个具体的tile。

set_instance_assignment -name IP_RECONFIG_GROUP -to <ip_instance_hpath> <reconfig-group-id-string> 将设计中的一个符合Tile IP的IP分配给一个命名的重配置组。一个组中的所有IP都位于同一tile中。
set_instance_assignment -name IP_RECONFIG_GROUP -to <ip_instance_hpath> <reconfig-group-id-string> 将设计中的一个符合Tile IP的IP分配给一个命名的重配置组。一个组中的所有IP都位于同一tile中。
set_instance_assignment -name IP_RECONFIG_GROUP_STARTUP_INSTANCE -to <ip_instance_hpath> ON|OFF 表明一个符合Tile IP的IP实例在启动时是否是激活的;同时也提供时钟。
set_instance_assignment -name IP_RECONFIG_GROUP_SHARED_SIP -to <ip_instance_hpath> ON|OFF 该IP的SIP将对其shared_sip组的所有配置文件(profile)提供支持。
set_instance_assignment -name IP_RECONFIG_ID -to <ip_instance_hpath> <positive-number-greater-than-zero> 指定一个大于0的正整数作为一个IP的标识符。所有这些标识符应该是连续的。这些ID是全局性的,例如在整个设计范围内。如果您不提供id,那么该工具就会分配一个idIntel建议让该工具来分配id。
set_global_assignment -name IP_RECONFIG_GROUP_TYPE <reconfig-group-id-string>:<exclusive|inclusive>:shared_sip:clk_master
将一个重配置组类型分配给设计中的一个符合Tile IP的IP。
  • 未给出(not given)表示inclusiveexclusive表示 not inclusive,反之亦然。

    Exclusive表示该组在动态重配置后只是自身存在。Inclusive表示该组在动态重配置后能够与其他组同时存在。

  • shared_sip表示在组中的IP之间共享SIP。如果没有给出,那么我们假设是'separate_sip',其中每个IP提供它自己的SIP。 在该组中将有一个且仅有一个IP_RECONFIG_GROUP_SHARED_SIP QSF用于IP。
  • clk_master表示QSF IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL用于该组中的一个BB示例。

set_global_assignment -name IP_RECONFIG_GROUP_PARENT <parent-reconfig-group-id-string>:<child-reconfig-group-id-string> 创建组的层次结构,应该像VERILOG_FILE一样也是累加的。
set_instance_assignment -name IP_COLOCATE -from <hpath1> -to <hpath2> F_TILE

一个QSF,它将一个hub IP(例如DR控制器)与slot IP(例如它控制的协议IP)关联起来。

hpath1hpath2代表的IP实例应该被放置在同一F-tile中。
注: hpath1是您设计中的Dynamic Reconfiguration Suite IP的层次路径,hpath2是您设计中的Protocol IP的层次路径。
set_instance_assignment -name IP_RECONFIG_GROUP_MASTER_CLOCK_CHANNEL -to <bb_instance_hpath> <clock-port-name>

表示哪一个bb_m_hdpladadapt_rx或者bb_m_hdpldadapt_tx实例提供主时钟(master clock)。

以下是受支持的时钟端口名称:
  • pld_pcs_rx_clk_out1_dcm
  • pld_pcs_rx_clk_out1_hioint
  • pld_pcs_rx_clk_out2_dcm
  • pld_pcs_rx_clk_out2_hioint
  • pld_pcs_tx_clk_out1_dcm
  • pld_pcs_tx_clk_out1_hioint
  • pld_pcs_tx_clk_out2_dcm
  • pld_pcs_tx_clk_out2_hioint
在包含<ip_instance_hpath>的组中的所有IP以及所有子组都将得到该主时钟。

动态重配置设计所需要的QSF assignment示例

Tile Interface Planner派生出IP_TILE_ASSIGNMENTIP_BB_LOCATION assignment的tile位置以及IP层次结构。

下面的.qsf assignment显示了一个使用Ethernet Multirate Intel® FPGA IP的设计所需要的设置:
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 
下面的.qsf assignment显示了一个使用CPRI Multirate Intel® FPGA IP的设计所需要的设置:
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 
下面的.qsf assignment显示了一个使用PMA/FEC Direct PHY Multirate Intel® FPGA IP的设计所需要的设置:
set_instance_assignment -name IP_COLOCATE F_TILE -from dr_dut|dr_f_0 \
-to dut|directphy_f_dr_0
注: 动态重配置所需要的其他.qsf设置包含在CPRI,Ethernet和PMA/FEC Direct PHY Multirate Intel® FPGA IP它们自身中。