IP核创建流程

从各大精华帖总结用vivado封装IP的主要流程

一、将已有的FPGA功能模块封装成IP

在Vivado工程中,选择菜单栏中的Tools,然后再下拉菜单中选择Creat and Package IP… 。如图1所示。 

图1 创建或打包IP

然后弹出向导,如图2所示。 

图2 IP创建向导

点击 next,进入下一步,选择操作类型,如图3所示。在本例中选择对特定文件夹内的代码进行封装。 

图3 选择操作类型

选择打包代码所在的文件夹,如图4所示。 

图4 选择目标文件夹

向导提示需要为IP工程制定一个名字和存储地址,如图5所示,这个工程是临时的,IP封装完之后就会消失,再次编辑IP时才会再重新建立 

图5 设置IP工程名称和位置

点击Finish结束,如图6所示。 

图6 创建完成

三,设置IP参数

设置IP的信息,例如名称,版本,功能描述等,如图7所示。 

图7 IP信息设置

配置IP的兼容性,一般选择默认就可以了,如图8所示。 

图8 IP兼容性配置

配置IP的文件系统,一般选择默认就可以了,如图9所示。 

图9 IP文件系统

配置IP的参数,为了方便系统能识别该IP的AXI4-Lite总线,需要顶层文件中定义2个参数,分别是:AXI_BASEADDR和AXI_HIGHADDR,为32bit数据,用来作为该AXI4外设的地址空间,如图10所示。 

图10 IP参数配置

配置IP的端口,由于IP自动添加的总线端口一般都有问题,所有在配置前,需要将自动添加的总线端口去掉,然后再配置端口。

1.去掉端口

2.添加端口

\

3.添加AXI总线

4.配置AXI总线信息

5.配置端口

6.配置参数

注意,这里需要对AXI总线的时钟增加“ASSOCIATED_BUSIF“,并对应到各种的总线。

配置IP的地址空间,需要修改成图11所示。 

图11 IP地址控制

配置IP的界面,可以根据自己的需要进行配置。如图12所示。 

图12 IP界面

最后生成IP,如图13所示。 

图13 封装IP

二、数据量较小的情况下,对生成的IP添加端口及verilog文件

在Vivado工程中,选择菜单栏中的Tools,然后再下拉菜单中选择Creat and Package IP… 。如图1所示。 

图1 创建或打包IP

然后弹出向导,如图2所示。 

图2 IP创建向导

点击 next,进入下一步,选择操作类型,如图3所示。在本例中创建AXI总线IP,当然根据需要可对特定的文件路径或对当前工程封装IP。

图3 选择操作类型

对IP进行基本的描述,例如命名、版本号、存放位置等

对总线进行设置,如接口类型(Lite,Full,Stream),主从模式,位宽,寄存器个数,本例采用Lite总线

创建并编辑IP

打开IP顶层文件,在用户接口添加相应的外部接口。

相应地在IP第二层文件添加相应的用户接口

在IP第二层文件例化我们需要封装的verilog模块

在相应的寄存器读写部分替换成我们需要的接口即可

拷贝相应的verilog模块到当前文件夹下,并添加到工程

封装IP即可

实例

1)创建vivado工程,命名为oled,设置目录 
这里写图片描述 
2)选择RTL,勾选复选框,此次不指定文件。 
这里写图片描述 
3)选择zedboard开发板,完成工程创建。 
这里写图片描述 
4)Tools->create & package 
这里写图片描述 
5)选择AXI4方式 
这里写图片描述 
6)设置名称,以及其他参数。下面继续next,保持默认参数,修改也可以,看需要 
这里写图片描述 
7)选择edit IP。finish。(以上为vivado创建AXI IP的流程) 
这里写图片描述 
8)此时已经建立了一个临时的工程,在完成后会自行删除 
9)修改文件,创建端口和用户逻辑。双击oled_ip_v1_0.v文件,添加 
output wire [5:0] OLED, 
这里写图片描述 
添加 .OLED(OLED),如下: 
这里写图片描述

10)双击oled_ip_v1_0_S00_AXI.v文件,添加 
output reg [5:0] OLED, 
这里写图片描述 
always @(*) 
begin 
OLED <= slv_reg0[5:0]; 
end 
这里写图片描述

11)保存文件 
12)在project manager面板中,选择Package IP,可以看到如下选项: 
IP Identification:基本信息 
IP Compatibility:.支持芯片 
IP file Groups:文件管理;可选择“merge changes……”以更新文件 
IP customization Parameters: 
IP ports and interfaces:端口,可以更新、添加等 
IP addressing and memory:地址分配 
IP GUI Customization:GUI 
Review and package:生成IP 
这里写图片描述 
13)无误后,选择Package IP生产IP。此时软件自动关闭。可在IP catalog的下属文件夹中找到了定义的IP。(以上为创建AXI IP的基本步骤) 
这里写图片描述 
这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42639919/article/details/81129277