本文档详细描述了基于Xilinx Zynq 7020 SOC的自定义IP的实现,并带领大家一步步完成自定义用户逻辑IP与Zynq ARM通过AXI-Lite通讯的实验。教程非常详细包括FPGA部分和SDK软件部分的开发,以及自定义驱动文件的创建和使用等。
ZYNQ芯片的PL部分也就是FPGA部分,定义了一个用户逻辑的IP,实现将两个输入的32bit的数据相加。自定义的用户逻辑IP中设计了4个寄存器,其中3个配置寄存器(可读、可写)和一个状态寄存器(只读)。
ARM处理器通过写配置寄存器slv_reg0和slv_reg1分别写入两个输入数据,用户逻辑做加法运算,计算相加的结果放入slv_reg3寄存器中。slv_reg3寄存器作为自定义IP的状态寄存器使用,不能写,只能读。ARM处理器读取slv_reg3寄存器中的数据,并将结果显示在串口调试工具窗口中。
1