如果IP已经采用OOC综合那么是否可以将其修改为Global综合方式?

描述

本文将介绍Vivado Non-Project模式几个常见问题及解决方法。

问题1:如何读入IP?

问题2:如果IP已经采用OOC综合那么是否可以将其修改为Global综合方式?

问题3:如何对IP执行OOC综合?

问题4:如何对用户模块执行OOC综合并将其集成到整个设计流程中?

相比于Project模式,Vivado Non-Project模式可以提供用户更多的控制权,进而用户可以自主管理整个编译流程,可以根据需要选择是否生成相应的dcp文件或者相关报告。但也面临一个问题就是需要借助Tcl脚本,同时所用到的Tcl命令和Project模式有很大不同且两者不可混用。

问题1:Non-Project模式下如何导入IP,是用read_ip还是import_ip?

我们知道对于Vivado IP Catalog中的IP,只能采用Vivado进行综合。Vivado提供了两种综合方式:Global和Out-of-context(OOC),如下图所示。其中OOC模式就是单独对IP进行综合生成相应的dcp文件。

Vivado

对于设计中用到的IP,建议采用VivadoManage IP创建IP工程,单独对IP进行管理,如下图所示。

Vivado

创建IP工程后即可定制IP,如下图所示,定制了两个IP:char_fifo和clk_core。其中前者采用OOC综合方式,可以看到其图标处有一个橙色方块。后者为Global综合方式。通常情况下,建议对IP采用OOC综合方式并在IP工程中完成对IP的单独综合。

Vivado

这种情况下Non-Project模式读入IP时需要用命令read_ip,而不是import_ip,即使会报告如下图所示警告(忽略该警告,尽管这个警告是建议使用import_ip,但import_ip是在Project模式时使用的)。

Vivado

实际上read_ip读入的不只是.xci文件,已经完成OOC综合所产生的所有输出文件都会被读入,包括dcp文件,因此这种情况下并不需要再次对IP综合,而是可以直接进行顶层设计的综合,相应脚本如下图所示。

其中代码第9行set_part命令用于指定当前工程用到的具体芯片型号,代码第17行用于验证read_ip读入的文件包括IP对应的dcp文件。

Vivado

问题2:如果IP已经采用OOC综合那么是否可以将其修改为Global综合方式?







审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分