Vivado IP核的综合模式:Global以及Out of context的区别理解

举报
李锐博恩 发表于 2021/07/15 01:48:42 2021/07/15
【摘要】 提出问题 从接触FPGA生成第一个IP核开始,就遇到一个选择的问题,定制完成IP核后,最有一页会有一个选择综合模式的问题,有两个选择,一个是Global,另一个是Out of Context,是什么意思呢? 你可以不用管它,默认的选择是Out of Context是不会坑你的!默认的也是软件推荐的方式。 今天为了加深理解,来理解下这两种综合方式的区别。 问题解释...

提出问题

从接触FPGA生成第一个IP核开始,就遇到一个选择的问题,定制完成IP核后,最有一页会有一个选择综合模式的问题,有两个选择,一个是Global,另一个是Out of Context,是什么意思呢?
在这里插入图片描述

你可以不用管它,默认的选择是Out of Context是不会坑你的!默认的也是软件推荐的方式。
今天为了加深理解,来理解下这两种综合方式的区别。

问题解释

通俗解释

参考互联网上的多家之言,可以这么去理解;
Global:
从字面意思上看,Global可以翻译为全局的方式,也就是说,此IP核生成之后,和用户编辑的逻辑一起综合,且每次逻辑变动之后都要重新综合;这就是问题关键了,这样的操作的一个缺点就是我的IP核本身定制好了是不需要更改的,可是用户逻辑每次变动一次,重新综合的时候,连带我的IP核也要重新综合,这样岂不是白白浪费时间!确实如此,于是就可以选择另一种方式解决这个问题,Xilinx推荐使用的Out of Context综合方式。
Out of Context:
这样方式可以字母直译为每个IP脱离上下文,什么意思呢?就是非全局呗。
只要IP核不改动,那么我的IP在定制完成之后综合一次,以后无论你怎么变动用户逻辑,我的IP都不会重新综合。
由于不需要每次都重新综合,这样就会大大减小每次综合的时间,这对于FPGAer来说,是十分重要的。

更多理解

稍微了解Vivado编译过程的人都知道,在FPGA综合,实现的过程中都会生成dcp文件,从这个角度来看Out-Of-Context与Global synthesis之间的区别:
看下这张图:
在这里插入图片描述

可见,如果按照Global模式,如下图:
在这里插入图片描述

IP文件和顶层一起综合。

如果采用OOC模式,则会产生DCP文件:
在这里插入图片描述

它单独综合出一个网表文件和一个stub文件,在实现过程中,这个IP的网表和顶层文件产生的网表一起参与实现。

OOC模式下的输出文件为:
在这里插入图片描述
本文参考数据手册:ug896,随意翻阅,理解甚浅,抛砖引玉!

参考文献

generate output products - difference between ‘Global’ and ‘Out of context per IP’

Disadvantages of “Out Of Context” synthesis

ug896-vivado-ip

文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。

原文链接:reborn.blog.csdn.net/article/details/108295992

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。