在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 13795|回复: 11

[求助] Vivado在实现阶段怎么才能保证模块逻辑在布局布线前资源不被优化

[复制链接]
发表于 2014-10-8 14:58:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
正在通过ISE和Vivado两个软件平台下分别对模块逻辑资源利用率进行评估和对比1、在ISE综合和实现时,模块综合不被优化掉,而且在布局布线后大部分资源也没有被优化掉,得出来的资源利用率分析报告是正常的,差不多也符合实际的逻辑资源利用情况
2、在Vivado综合和实现时,模块综合后没有被优化掉,但是在实现(Implementation)阶段,进行的第一步逻辑优化(Opt-design)后大部分资源被优化掉,从而在布局布线后,得出来的资源利用率分析报告是不正常的,逻辑资源利用很少。
现在的问题是,为什么在ISE里面综合和实现后得出的资源利用分析报告是符合要求的,资源利用也正常,但是在vivado里面综合是正常的,实现阶段却有大部分资源都被优化掉???同一个工程,且约束文件都是各自对应所要求的约束,管脚分配也对。哪位大神之前也遇到过类似的情况,能否给小弟指点一下啊?万分感谢!!!
    下面两个图是在Vivado综合和实现时分别得出的资源利用率分析图
6TL}OD[HYO(TZWP6VSRN83U.jpg                    D74`_NVXD1@EHR]LZKB]P}I.jpg
发表于 2014-10-8 15:15:29 | 显示全部楼层
应该是两个工具的选型设置不一样,vivado中对用户开放的选项少了很多。另外要看一下告警,是不是有逻辑被优化掉了。ISE中有个Trim unconnect net的选型确认一下有没有勾选上。
 楼主| 发表于 2014-10-8 16:02:01 | 显示全部楼层
回复 2# zhaojingzb
在ISE里面综合和实现都没问题,最后得出来的资源利用分析报告也是正常的。现在在Vivado里面,可以确定就在实现(implementation)的第一步进行逻辑优化(opt_design)把很多模块资源给优化掉了(提示说逻辑单元没有负载),但是在ISE实现的时候没有被优化掉,现在真的不知道问题到底出现哪了?
发表于 2014-10-10 10:54:22 | 显示全部楼层
那你看一下我说的ISE里面的选型,这个勾掉的话你说的这种情况资源也会被优化掉的。
 楼主| 发表于 2014-10-10 22:39:07 | 显示全部楼层
回复 4# zhaojingzb


ISE里的Trim unconnect net的选型确实是勾选上。但是ISE实现后的资源利用是对的,基本符合设计的要求,没有太多的资源被优化。现在的问题是在Vivado里面综合后的资源利用也是正常的,优化的不是太多,但是实现阶段的第一步,逻辑优化后有很多资源被优化掉了,最后的资源利用很少,肯定不正常的,不应该用了那么少的资源。上面的两个图分别是vivado综合后和实现后的资源利用分析报告图,很明显看出来实现后很多资源被优化掉了!我由于刚接触vivado没多久,现在不知道该如何解决了,请问,您之前用vivado出现过类似的问题吗?非常感谢你上面对我的指点,我给你发了短信息,上面有我的QQ号,就是想以后咱们学习vivado多探讨,多交流,再次谢谢你了!!!
发表于 2014-10-11 08:38:07 | 显示全部楼层
回复 5# zhangwei0814


    vivado我们已经用了很久了,没有遇到过你说的这种情况
从目前的情况分析,应该是你代码的问题。
vivado这个工具比ISE在语法方面要求更严格了。
看一下你的代码是不是严格按照语法写的。
另外,我没有时间上qq。不好意思
 楼主| 发表于 2014-10-11 13:49:30 | 显示全部楼层
回复 6# zhaojingzb

非常感谢你的回复,我的这个工程最开始的ISE的工程,后来为了验证vivado的效率能够提高多少,就直接把这个工程通过vivado里面的导入ISE工程的方法直接导入到vivado里面了,当然约束文件肯定得重新写的,这个我都弄好了,其它的vivado与ISE的代码风格和语法差别还有吗?我现在还不是很熟悉vivado,现在在vivado跑综合是没有问题的。
发表于 2014-12-26 00:23:14 | 显示全部楼层
如果你想让某一个module或者信号不被优化,可以在module或者信号后面加/*synthesis keep_syn = 1*/
 楼主| 发表于 2014-12-26 15:41:34 | 显示全部楼层
回复 8# gjb649666926


   谢谢你的回复!你说的防止被优化的办法主要是针对综合阶段的,但是我现在综合阶段是正常的,没有太多的资源被优化,符合设计的要求,问题在于实现阶段,很多资源都被优化掉了,到现在还没解决这个问题
发表于 2015-12-16 14:55:51 | 显示全部楼层
请问你的问题解决了没有啊,最终如何处理的?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-25 09:16 , Processed in 0.027093 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表