FPGA series # block design 的 error

add module出现的error:

unable to resolve module-source based on inputs
无法根据输入解析模块源
FPGA series # block design 的 error_第1张图片
1
解决方法:
这里解释一下,红色标记的部分原本是有个小黄块的,error的出现就是因为那个小黄块,此操作正是为了消除小黄块。由于前期忘记截图,所以手动补上。以后要把截图作为一个记录的小习惯,后期总结用得上。
FPGA series # block design 的 error_第2张图片
这里原来调用IP核时选择的是out of context per IP,现在改成选择global。
FPGA series # block design 的 error_第3张图片
错误原因:
选择的是global还是out of context per IP。xilinx工具无法确定网表使用者是否有IP核的licence,所以制作网表的RTL内不能包含xilinx的IP核。这时需要将IP核作为你的模块的一个平行模块。Out of context per IP是指让vivado在综合的时候对IP进行单独综合,生成.dcp文件,然后在工程要用到IP的时候,只需从.dcp文件中解析出对应IP的网表文件即可,而不需对IP进行重新综合,这样的方式可以加快综合的速度;而Gobal选择则是每次工程综合的时候,IP核都会和工程一起综合,这样综合的时间就很长,而且Global选项不会产生.dcp文件,因为工程综合的时候是对IP核的源码进行综合的。
另:
把IP加到自己的工程中,假设综合是采用Out of context per IP进行,如果要把IP和加到自己工程中,我们就需要IP核的顶层设计模块,而由于采用Out of context per IP的时候只会输出包含网表的.dcp文件,所以工程用到IP的时候是不会直接调用源码模块的。而是会调用一个*stub.v的Black Box模块,这个模块值包含IP和顶层模块的输入输出定义,工程表面上是调用这个模块,实际上是解析.dcp文件中的网表,这样工程就可以进行综合了。
关于.dcp文件,推荐参考博客:https://blog.csdn.net/wordwarwordwar/article/details/80188891

synthesis时出现的error:

这是在前面有一篇博客里所提到的upgrade IP Status时漏掉的一个端口引脚,后面再添加的步骤如下:
FPGA series # block design 的 error_第4张图片
这是已接出来之后:
FPGA series # block design 的 error_第5张图片
后面就上板调试了,关于axis的几个端口还得再倒腾倒腾,从后仿真看,似乎是不对的。还有要补一些FPGA的基础,操作流程的一些专用名词,多看别人的文章多动手试,先要形成一个大概的知识架构。路还长,一步一步走。加油。

你可能感兴趣的:(FPGA,vivado)