vivado版本:2017.4
petalinux版本:2017.4
1、vivado硬件设计
vivado中并没有自带的AXI4接口可以使用,所以我们需要自己创建

选择创建一个新的AXI4外设

更改名字然后next,IP核的位置会放在你工程项目目录下

选择接口类型为Full,选择接口存储大小,我这里选择的是1024字节。

点击finish

将自定义的核添加到 block design 中

添加 smart_connect IP核

添加处理器,处理器相关设置根据自己的板子来进行设计。
想要使用AXI4从机接口,就必须打开GP0 主机接口

添加完成后,启动自动连接自动连接

最终完成的硬件图(不同ZYNQ芯片设计效果图不同,但一定要开启GP0接口):

查看XI4从机接口的地址,地址是0x7aa00000,这个地址我们之后会用到

然后生成创建顶层文件,生成bit流这些我就不赘述了,如有疑惑可以看我的这篇博客:
https://blog.youkuaiyun.com/yohe12/article/details/104789041
2、使用petalinux生成系统并导入开发板
将硬件资源导入ubuntu

使用 petalinux-create -t project --template zynq --name axi4_test 命令创建项目
使用petalinux-config --get-hw-description=./axi_slave_wrapper_hw_platform_0命令来使用硬件资源生成系统

选择默认配置,然后选择 Exit 就会自动配置系统

使用 petalinux-build 命令编译系统

编译完成后,使用 petalinux-package --boot --fsbl zynq_fsbl.elf --fpga axi4_test_wrapper.bit --u-boot 生成BOOT.BIN
将BOOT.BIN 和 uimage.ub放入TF卡中,再启动开发板。
3、编写应用程序
现在我们要在应用程序中使用axi4的接口,使用mmap函数就可以将AXI4接口映射为一个地址,我们读写这个地址就相当于读写AXI4接口。
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
AXI4接口在ZYNQ上的应用

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



