转载的上一篇博文对自定义IP的封装流程有了比较详细的介绍,作者对该部分有比较深入的理解,我就不敢造次了。之所以还写一篇类似的博文,主要是想介绍一下数据量比较小的情况下,对自动生成的IP文件做比较少的改动,以及如何添加自己的端口和verilog文件。
一,创建IP
在Vivado工程中,选择菜单栏中的Tools,然后再下拉菜单中选择Creat and Package IP… 。如图1所示。
然后弹出向导,如图2所示。
点击 next,进入下一步,选择操作类型,如图3所示。在本例中创建AXI总线IP,当然根据需要可对特定的文件路径或对当前工程封装IP。
图3 选择操作类型
对IP进行基本的描述,例如命名、版本号、存放位置等
对总线进行设置,如接口类型(Lite,Full,Stream),主从模式,位宽,寄存器个数,本例采用Lite总线
创建并编辑IP
二,编辑IP
打开IP顶层文件,在用户接口添加相应的外部接口。
相应地在IP第二层文件添加相应的用户接口
在IP第二层文件例化我们需要封装的verilog模块
在相应的寄存器读写部分替换成我们需要的接口即可
拷贝相应的verilog模块到当前文件夹下,并添加到工程
封装IP即可
三,测试(与上篇博文一致)
打开一个Vivado工程,进入IP Catalog,然后右键调出下拉菜单,选择Add Repository..,选择IP所在的文件夹。
这里就可以在IP Catalog中找到刚才自定义的IP,并使用。双击该IP,就可以对该IP进行配置。