



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、如何分析FPGA的片上资源使用情况 在维护遗留代码(4)时序问题初露端倪这篇文章中,我提到“第三方开发的设计中,组合逻辑与时序逻辑的比例为2.6:1”,这是造成该设计时序收敛困难的原因之一。mengyudn朋友很热心,对这个数据的来历产生了疑问。下面我就简单地介绍一下如何分析FPGA芯片上的组合逻辑(LUT)和时序逻辑(REG)的利用率。 riple一、如何得到LUT与REG的使用比例 riple 我们先看一个FPGA工程的编
2、译结果报告: 在这个报告中,我们可以看到如下信息: Total logic elements 24071/24624(98%): 该芯片中共有24624个LE资源,其中的98%在这个工程的这次编译中得到了使用。 riple Total combinational functions 21612/24624(88%): 该芯片的24624个LE资源
3、中,88%用于实现组合逻辑。 riple Dedicated logic registers 8858/24624(36%): 该芯片的24624个LE资源中,36%用于实现寄存器,即时序逻辑。 riple 就是从上述信息中,我得到了组合逻辑与时序逻辑的使用比例21612/8858 = 2.4:1。 riple二、一份更详细的资源利用率报告 riple
4、60; 在这个报告中,有一点可能会令人困惑:为什么Total combinational functions与Dedicated logic registers之和(30470)大于Total logic elements(24071),甚至大于该芯片的总资源(24624)。我们再来看一份更详细的资源使用报告Fitter Resource Usage Summary: 这份报告包含很多信息,在这里我们只需要关心Total logic elements一项。Total logic elements 24071/2
5、4624(98%)由三种使用情况不同的LE资源组成:仅用于实现组合逻辑的LE(Combinational with no register 15213),仅用于实现时序逻辑的LE(Register only 2459),同时用于实现组合逻辑和时序逻辑的LE(Combinational with a register 6399)。 riple三、从Resource Property Editor看LE的使用情况 riple 在进一步分析这些数据之前,我们有必要回顾一下FPGA的基本组成元素LE(Logic Ele
6、ment)的结构和功能。以Altera的Cyclone III系列FPGA芯片为例,其LE内部结构如下图所示: 这个LE同时用于实现组合逻辑和时序逻辑,其中蓝色部分为组合逻辑(一个4输入LUT),其中黄色高亮部分为时序逻辑(一个D触发器)。 riple 我们再来看一个更有趣的LE: 这个LE也同时用于实现组合逻辑和时序逻辑,与上一幅图不同的地方在
7、于,这里的组合逻辑(4输入LUT)与时序逻辑(REG)并没有连接关系。组合逻辑从COMBOUT直接输出,时序逻辑从REGOUT输出。这种互不相关的组合逻辑与时序逻辑共用同一个LE的情况很特殊,这是采用了Register Packing资源优化技术之后的实现方式。如果没有采用这一资源优化技术,就要用两个LE来分别实现相应的组合逻辑和时序逻辑。 riple 明白了上面这两幅图,大家也能由此类推,想象出仅用于实现组合逻辑的LE(Combinational with no register)和仅用于实现时序逻辑的LE(
8、Register only)该是什么样子。 riple四、“数字终于对(凑)上了!” riple 我们回到前面关于资源利用率分析的部分。有了上面介绍的知识,大家应该能够把资源利用率报告中三种使用情况不同的LE区分开了。 riple 我们把“同时用于实现组合逻辑和时序逻辑的LE(6399)”分别加到“仅用于实现组合逻辑的LE(15213)”和“仅用于实现时序逻辑的LE(2459)”上面,就可以得到“全部组合逻辑”(Total co
9、mbinational functions = 6399 + 15213 = 21612)和“全部寄存器”(Dedicated logic registers = 6399 + 2459 = 8858)两个数值了。这两个数值就是第一幅图中关于资源利用率的汇总报告结果,它们的比例恰好就是2.4:1。 riple 由于6399这个数字被使用了两次,所以我们最初关于“Total combinational functions与Dedicated logic registers之和(30470 = (6399 + 15
10、213) + (6399 + 2459))大于Total logic elements(24071 = 6399 + 15213 + 2459)”的困惑也得到了解答。 riple五、总结 riple 由于FPGA设计中用到的组合逻辑与时序逻辑的数量不均衡,部分LE会仅用于实现组合逻辑或时序逻辑;进一步,由于布局位置的限制,单独实现组合逻辑或时序逻辑的两个LE可能不能合并到一个LE中实现。所以,在资源利用率报告中会出现三种使用情况不同的LE。 riple 由于过长的组合逻辑链(级联的LUT)会引入较大的延时,而时序逻辑(REG)能够把较长的组合逻辑链分割成较短的组合逻辑链,有效地缩短关键路径和次关键路径的长度,进而提高该FPGA设计的整体时序性能,所以组合逻辑与时序逻辑的使用比例可以作为评价一个FPGA设计时序性能的辅助参数。 riple
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村电子商务平台建设及维护合同
- 产品品质保障及售后维修服务合同
- 产品市场推广合作合同
- 工程款退款合同协议书
- 足浴会所定金合同协议
- 转让出租店铺合同协议
- 建筑工程劳务大清包承包合同
- 沙特签约协议书
- 合伙制合同协议书
- 运费结算方式合同协议
- 国际教育规划合同8篇
- 2024-2025学年陕西省西安交大附中八年级(下)期中数学试卷(含详解)
- 浙江省宁波市三锋教研联盟2024-2025学年高一下学期4月期中化学试卷(含答案)
- 校医招聘笔试试题及答案
- 整装定制合同协议
- 产品研发项目管理制度
- DBJ-T13-483-2025 预拌流态固化土技术标准
- 2025年全国中学生汉字听写大会比赛题库及解析(共八套)
- 防汛安全培训课件
- 关于临期商品的处理管理办法
- 新能源全面入市是构建新型电力系统的重要支撑-136号文政策解读
评论
0/150
提交评论