【精品博文】Vivado中将verilog代码封装成IP

赢一个双肩背包

有多难?

戳一下试试看!

→_→

长摁识别

Xilinx的Vivado采用原理图的设计方式,比较直观适合大型项目,我们自己的code都需要封装成user IP。

这里主要介绍怎么把多个关联管脚合并成类似bus的大端口。

  1. 先新建一个project,把要package的v文件加进去

  2. Tools->Create and Package IP,选第一项current project

  3. 建个文件夹Verilog_IP,存自己的IP

  4. 除了第一个Width是传递参数,其他都是状态机的参数,可以全部删掉

  5. 刚开始Port页会自动把能识别的clk和rst都分类好,但不是我们想要的分类

  6. 选中右键 Remove Interface

    (有两种分类情况,需要跟xilinx的IP对接的标准接口,以及我们自己定义的接口)

  7. 前面的port是打算引出芯片的nand接口,选中右键Create Interface Definition,名称nand_x8

  8. 后面的bram0和bram1都是要跟标准AXI_BRAM接口对接的,各自选中右键Add Bus Interface

  9. 默认是aximm_rtl接口,要换成bram

  10. 打开浏览,选Advanced页的bram接口

  11. 选好后如下,Mode选master,跟你代码的in/out有关

  12. 然后逐个接口map,主要依据in/out/inout类型关联。接口太多先search筛选

  13. 最终的界面就清爽了

  14. 最终框图。输入脚在左,输出脚在右

  15. 确认下名字和路径,全部OK后点Re-Packaged IP就完成了

  16. 然后你在IP Catalog中是可以选中新IP的

  17. 如果后续再建project时,搜不到自己的IP,请按照下面的方式添加IP路径

  18. IP的更新也有很多注意事项,在下一篇中详细说明。

(未完待续~)

(0)

相关推荐