FPGA经验谈系列文章——FPGA资源评估
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
FPGA经验谈系列文章——FPGA资源评估
- 前言
- 如何评估
- 哪些资源需要评估
- 怎么快速的进行资源统计
- 评估结果
前言
大家在项目中一般会要遇到需要资源评估的情况,例如立了新项目,前期需要确定使用什么FPGA片子,做到成本越小越好。这就要对即将要实现的功能进行下资源评估。
如何评估
1、你需要一个参考工程
一般来说你首先需要一个参考工程,不会什么代码都没编写的时候就进行资源评估,再怎么厉害也不至于凭空就能想象出一个大型工程会用到多少资源。
所以我们在做一个全新系列的项目时,设计要先行。要把代码编写的七七八八后才能进行资源评估,功能不要求正确,但该有的模块必须都挂上,这样才能比较准确的通过vivado工具来得到大致的资源消耗
2、如果是大部分的模块都是比较成熟的情况下
那么我们可以在之前的项目中,就把那些重点模块的资源都统计出来。在新的衍生项目中,画出基本的实现框图后,基本就可以清楚新的项目中这些模块哪些需要用到,用到的需要例化几次,这样就能够快速得到评估结果。
哪些资源需要评估
主要是以下四类
LUT 逻辑资源
FF 触发器资源
BRAM 存储器资源
DSP 乘法器资源
怎么快速的进行资源统计
1、首先建议模块例化的时候按照自顶向下的顺序依次编号,这样每个模块的的位置清晰可见,像这样u0、u1、u2等
2、准备好execl表格
3、打开资源报表
可以把资源信息一步一步的填入上面准备的EXECL文档中
这样一个一个的填,效率还是有一点低,我们可以用tcl脚本让VIVADO帮我们生成资源报表
整个模块的资源消耗表格,所有模块层次的都会列出来,大而全,但不好用。
report_utilization -hierarchical -file E:/AAA.rpt
用这个只列出顶层模块的资源消耗表格
report_utilization -hierarchical -hierarchical_depth 1 -file E:/AAA.rpt
如果需要对某个重点顶层模块进行进一步分析,则:
report_utilization -cells u0_xxx -hierarchical -hierarchical_depth 2 -file E:/xxx.rpt
这样基本就能和EXECL表格进行对应了,处理起来就很方便了。
评估结果
那么得到评估结果后是不是这四种资源都不超过100%,就是可以实现的呢。
那肯定不是的了,按照个人经验
一般来说LUT和FF最好在70%左右,再多有可能会出现编译不过的情况了,BRAM和DSP可以更多一点。这个东西没有一个绝对的说法,跟主观经验有关
如果同类型的项目做的比较多,对资源的把握也就心里有数了
FPGA经验谈系列文章——FPGA资源评估相关推荐
- FPGA经验谈系列文章——FPGA开发方向以及算法开发模型
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA经验谈系列文章--FPGA开发方向以及算法开发模型 前言 接口方向 算法方向 总结 前言 FPGA开发笼统的说可以分为两个方向 ...
- FPGA经验谈系列文章——前言和目录
FPGA经验谈系列文章--前言和目录 前言 工作内容 最后 前言 转眼间,工作也即将十年时间,也是做FPGA开发的十年,虽然我总是认为我一开始走错了路,我应该去搞互联网的o( ̄︶ ̄)o.但也确实做到了 ...
- FPGA经验谈系列文章——时序不过怎么办
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA经验谈系列文章--时序不过怎么办 前言 如果设计验证和测试已经接近尾声,偶尔进行小改可能出现几条时序违例的情况 逻辑级数过大引 ...
- FPGA经验谈系列文章——那些曾经让我发狂的BUG
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA经验谈系列文章--那些曾经让我发狂的BUG 前言 跨时钟域处理不对问题 组合逻辑产生锁存器问题 外围器件协议理解不深的问题 接 ...
- FPGA经验谈系列文章——静态时序分析(二)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA经验谈系列文章--静态时序分析(二) 四种时序路径 时序路径段 接上一篇,上一篇是一个ALTERA的培训PPT,这一篇是有一个 ...
- FPGA信号处理系列文章——FIR半带插值滤波器-1个时钟2个采样点的优化处理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA信号处理系列文章--FIR半带插值滤波器-1个时钟2个采样点的优化处理 前言 设计参数 常规IP设置 优化处理 总结 前言 假 ...
- FPGA信号处理系列文章——FIR半带插值滤波器
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA信号处理系列文章--FIR半带插值滤波器 信号流 matlab模型 FIR系数生成 IP核的设置 注意事项 信号流 半带插值滤 ...
- FPGA信号处理系列文章——码元同步
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA信号处理系列文章--码元同步 前言 码元粗同步 超前-滞后门同步器 鉴别器 matlab程序 前言 前面,我们将了锁频环和锁相 ...
- FPGA信号处理系列文章——数字锁相环
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA信号处理系列文章--数字锁相环 锁相环的一些概念 鉴相器 Matlab 程序 锁相环的一些概念 1.捕获.锁定与跟踪的概念 捕 ...
最新文章
- 音频编辑软件_Audacity2.12版
- python装饰器函数-python函数装饰器
- 对神经网络分类行为的认识二则
- SpringBoot_配置-properties配置文件编码问题
- 前端学习(3121):组件和模块
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 20丨查询球队积分【难度中等】​
- synchronized锁升级_synchronized详解以及锁的膨胀升级过程
- Javascript高级程序设计第二版第十一章--DOM2,DOM3--笔记
- 【5G落地】首批5G商用牌照正式颁发!5G和AI并肩前行,会带来下一次的工业革命吗?...
- 在Biztalk应用中调用程序集的方法
- UVA654 LA5508 POJ1079 Ratio【暴力】
- 侠客行手游如何用电脑玩 侠客行手游PC电脑版教程
- 微信小程序修改BUTTON点击态样式
- 接口工具POSTMAN怎么设置中文
- java实现文件夹加密_如何用JavaScrpt 实现文件夹轻松加密
- [淘宝客技术篇003]如何获取淘客私密优惠券链接
- 地图上分成一块一块区域 高德地图_高德地图绘制区域边界线
- 介绍.NET Core
- 【OpenCV-Python】教程:5-3 光流
- 用于PCB设计和印刷的修补匠工具