Vivado封装自定义IP及调用

FPGA基础入门篇(八) Vivado封装自定义IP及调用
在FPGA实际的开发中,官方提供的IP并不是适用于所有的情况,需要根据实际修改,或者是在自己设计的IP时,需要再次调用时,我们可以将之前的设计封装成自定义IP,然后在之后的设计中继续使用此IP。因此本次详细介绍使用VIvado来封装自己的IP,并使用IP创建工程。

一、IP的创建
  1. 首先新建工程。
    如前面部分介绍的工程创建,完成代码的设计、输入,并在功能仿真或时序仿真完全正确的情况下。
    按如下步骤执行:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 选择要存放的位置,这一步很重要,可以存放在以后专门自定义的IP文件夹内,方便以后添加和管理查看。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 然后会弹出如下封装IP的界面,按如下执行Package IP
    在这里插入图片描述
    在这里插入图片描述
  4. 至此,我们IP就封装好了。可以打开我们IP的文件夹,包括三个文件,src是源代码文件。
    在这里插入图片描述
二、IP的使用

本次设计采用block design来使用自定义的IP。

  1. IP的添加。
    1.新建一个vivado工程。
    在这里插入图片描述
    按照上面的步骤添加自定义的IP。
  2. 创建一个BD文件
    在这里插入图片描述
    在这里插入图片描述
  3. 使用自定义的IP
    在这里插入图片描述
    在这里插入图片描述
    添加完之后如下:
    在这里插入图片描述
  4. 将引脚引出并重新命名,具体操作选中相应的管脚,右键选择make external
    在这里插入图片描述
  5. 然后右键选择general output product
    在这里插入图片描述
    在这里插入图片描述
  6. 然后右键选择 create HDL wrapper。
    在这里插入图片描述
    在这里插入图片描述
  7. 最后添加约束文件并进行综合编译产生bit流,然后上班调试。