xilinx planahead partial reconfiguration
1.为什么要使用reconfiguration?
reconfiguration,即逻辑可重配,指的是FPGA的逻辑只加载指定区域(功能)的逻辑,而对除此之外的逻辑不产生影响,最常用的就是PCIe/PCI逻辑可重配,这样当我重新修改了逻辑后,pcie部分一直正常工作,上位机对pcie的读写也正常,可重配有两种方法:
- 通过jtag加载或者selectmap接口,加载可重配逻辑;
- 通过PCIe访问ICAP接口由上位机加载程序;
现在讨论的是第一种。
2.逻辑可重配如何实现?
第一步,划分整个工程代码为固定的部分以及需要经常修改的部分,称固定代码为static logic,而经常修改的代码为reconfiguration logic;
第二步,在ISE新建两个部分的工程,将两个工程综合,主要在生成网表的过程中,需要注意综合的选项,-iobuf,即Add I/O Buffers,在静态逻辑中需要勾选上,而在可重配逻辑中不能勾选此选项;
第三步,新建planahead工程,将静态逻辑生成的网表以及静态工程使用的ngc文件,并且需要注意勾上使能逻辑可重配选项,添加静态逻辑ngc文件和ucf约束文件;
第四步,设定某个module为可重配逻辑,并指定其对应的网表文件;
第五步,设定这部分逻辑可以使用的FPGA资源;
第六步,编译并生成代码。
3.一些注意事项
所有的全局资源,比如BUFG,MMCM等都不能位于可重配逻辑中,这样可重配逻辑可以使用的资源基本上只有SLICE,RAM,IO,DSP等,建议IO资源也在静态逻辑中使用,可重配逻辑只使用RAM和DSP以及slice资源。
部分可重配逻辑里面使用的NGC通过add reconfigurable logic sources加入到工程里面。
4.可重配资源如何使用chipscope
只能使用ip核生成的chipscope,无法使用图形界面。icon只能位于静态逻辑中,ila和vio可以在可重配逻辑中使用,并且需要注意,ip核生成的control管脚是inout类型,不能在可重配逻辑中使用,所以需要修改ip核文件。
5.如何使用selectmap接口对FPGA进行反复的加载
默认的当程序加载完成后,selectmap IO没有使能,在生成bit文件时加上-g选项,让selectmap io在加载完后使能。
可参考的文档:第一种加载方法:ug743,第二种:xapp883
xilinx planahead partial reconfiguration的更多相关文章
- Xilinx 7系列FPGA部分重配置【2】
在之前的“Xilinx 7系列FPGA部分重配置[1]”中已经较为详细地记录了分别在工程模式(Project Mode)和非工程模式(Non-Project Mode)下.使用7系列的Xilinx F ...
- Xilinx FPGA DPR技术
动态部分重配置技术 DPR(Dynamic Partial Reconfiguration)可以使得PL的一个部分或几个部分在运行时刻被完全地重新配置.这些部分需要被指定为可重配置分区(Reconfi ...
- planAhead的启动时间较长
发现Xilinx planAhead的启动时间约需10秒钟.
- icape3 的使用
在FPGA中,有时需要使用用户代码重配置FPGA,配置的内容可以是flash或者是其他的来源这样FPGA的启动模式有关,在本实验中配置文件是存放在flash中.实际的操作步骤如下: 1:生成一个工程, ...
- PCIe Tandem PROM 方法
PCIe Tandem PROM 方法 什么是Tandem PROM? 简单总结:市面多数的FPGA都是SRAM型,需要在上电时从外部存储器件完成代码的加载,对于具有PCIe功能的SRAM FPGA而 ...
- Xilinx的ISE14.7和PlanAhead与win10系统的兼容性问题解决方案
Xilinx的ISE14.7和PlanAhead与win10系统的兼容性问题解决方案 2018年07月03日 18:27:57 feq123 阅读数:4495 今天在新电脑的win10系统上安装I ...
- Xilinx 网站资源导
Xilinx 网站资源导读 ———版权声明———–本文作者 Ricky Suwww.fpganotes.comrickysu.fpga@gmail.com 欢迎转载,转载请保持原样及署名商业使用须得到 ...
- Xilinx 网站资源导读2
Xilinx 网站资源导读 ———版权声明———–本文作者 Ricky Suwww.fpganotes.comrickysu.fpga@gmail.com 欢迎转载,转载请保持原样及署名商业使用须得到 ...
- xilinx 网站资源导读
[经验整理.01]Xilinx网站资源导读 ISE11版 标签: ISE Xilinx 入门 资源 2009-09-01 20:41 序 虽然自己也曾想过,但如果不是向农要求,把曾经写过的文 ...
随机推荐
- Ci下面隐藏index.php的方法
1.需要apache打开rewrite_module,然后修改httpd.conf的AllowOverride none 为AllowOverride All(里面,不同的环境目录不同) 2.在CI的 ...
- 《python基础教程(第二版)》学习笔记 语句/循环/条件(第5章)
<python基础教程(第二版)>学习笔记 语句/循环/条件(第5章) print 'AB', 123 ==> AB 123 # 插入了一个空格print 'AB', 'CD' == ...
- mysql 的类型转换函数cast的用法
CAST(expr AS type), CONVERT(expr,type) , CONVERT(expr USING transcoding_name) CAST() ...
- DL二(稀疏自编码器 Sparse Autoencoder)
稀疏自编码器 Sparse Autoencoder 一神经网络(Neural Networks) 1.1 基本术语 神经网络(neural networks) 激活函数(activation func ...
- Codeforces 876B Divisiblity of Differences:数学【任意两数之差为k的倍数】
题目链接:http://codeforces.com/contest/876/problem/B 题意: 给你n个数a[i],让你找出一个大小为k的集合,使得集合中的数两两之差为m的倍数. 若有多解, ...
- php设计模式课程---2、为什么会用到简单工厂设计模式
php设计模式课程---2.为什么会用到简单工厂设计模式 一.总结 一句话总结: 比如调用数据库的语句,如果调用的数据库名字改了,或者调用的数据库类型改了(比如从Mysql用到了Mysqli),那么要 ...
- node.js+express+jade系列七:富文本编辑框的使用
下载nicEdit富文本编辑框, 把nicEdit.js文件放到public/javascripts/下 新建jade文件:代码如下 doctype htmlhtml head t ...
- python-编译安装Python2.7
yum中最新的也是Python 2.6.6,只能下载Python 2.7.5的源代码自己编译安装. 操作步骤如下: 1)下载并解压Python 2.7.9的源代码 cd /opt wget --no- ...
- codeforces 637D D. Running with Obstacles(dp,水题,贪心)
题目链接: D. Running with Obstacles time limit per test 2 seconds memory limit per test 256 megabytes in ...
- 寻找总和为n的连续子数列之算法分析
看到有这么道算法题在博客园讨论,算法eaglet和邀月都已经设计出来了,花了点时间读了下,学到点东西顺便记录下来吧. 题目是从1...n的数列中,找出总和为n的连续子数列. 这里先设好算法中需要用到的 ...