Xilinx 7系列FPGA部分重配置【2】

在之前的“Xilinx 7系列FPGA部分重配置【1】”中已经较为详细地记录了分别在工程模式(Project Mode)和非工程模式(Non-Project Mode)下、使用7系列的Xilinx FPGA芯片创建部分重配置(Partial Reconfiguration,PR)项目、并生成相应的bit配置文件的流程。

前述流程是一个较为基本的PR项目操作流程、在UG947和UG909文档的示范例中都有说明,自己也按照前述的流程、参考UG文档、在Xilinx Arty评估板上(xc7a35ticsg324-1L)创建了两个简单的PR项目、对PR功能成功进行了实现和验证。评估板上的下载和调试接口是USB JTAG,对FPGA的下载和配置使用的是JTAG模式。根据UG470,FPGA的配置模式主要包含以下几种:

在粗略地整体浏览完UG470之后意识到,JTAG模式是一种健壮性相对比较好的配置模式。

而前段时间工作项目上、板上FPGA的型号为xc7a35tftg256-1、配置模式为从串模式、FPGA的配置文件由另外一个stm32芯片进行加载,并且整个PR项目的复杂度远非UG文档上的示例所可比拟(由于实际应用的需求,接手的FPGA工程的复杂度主要体现在user IO的使用率极高、几乎用完了全部可分配的管脚),所以按照前述PR项目的创建和配置文件生成流程进行操作之后、一直无法通过PR验证。

后来在仔细参考了当前项目之前的降级版本的项目片上FPGA的工程文件包之后、在VIVADO的批处理模式下(batch mode)、运行编写的TCL脚本、使用和之前一样的代码包作为源文件、重新生成了FPGA配置文件,在测试板上实验之后、PR功能验证通过。所以在这里将TCL脚本中、相对前述的操作流程作出更改的几个点进行记录,以便日后参考。

 

1、设计思路改变

自己在之前的PR操作中一直采取的思路是:

begin

分别生成顶层的逻辑综合dcp(末尾有RP(Reconfigurable Partition)黑盒子定义)、以及N种RM的综合dcp-

使用顶层+RM1拼接生成第一种全局配置-

挖空RP(updata_design -black_box)得到static.dcp-

打开static.dcp-

填入第二种RM-

实现第二个全局配置-

……

填入第N种RM-

实现第N个全局配置

end

而参考了前人的TCL脚本之后、现在采取的创建思路是:

begin

直接利用全部的.v文件生成第一种完整的配置(TOP.v文件末尾不包含对RP的黑盒子定义)-

将RP挖空(updata_design -black_box)、得到static.dcp-

综合第二中RM、执行reset_timing命令、保存为RM_2nd.dcp

填入第二种RM-

实现第二个全局配置-

……

填入第N种RM-

实现第N个全局配置

end

 需要注意的是,在保存生成的第二个RM的综合dcp之前进行了一个reset_timing的命令,这在之前做的时候都是没注意过、也没采用过的。

  

2、综合命令选项

 执行synth_design时需要指定的属性变量

如果对A模块做综合时、B模块中的参数需要通过A模块传递过去,那么在综合时可以使用-generic属性,格式如下:

-generic <name>=<value> - (Optional)

The value of a VHDL generic entity, or of a Verilog parameter. The -generic option can be used to override the assigned values of parameters in the RTL design sources. However it can only override parameters at the top level of the design. Repeat the -generic option multiple times in the synth_design command for each generic or parameter value to be defined.

在进行PR项目中还进行设置了的属性包括

-flatten_hierarchy <arg> - (Optional)

Flatten the hie

  • 3
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值