ZYNQ linux下AXI4从机接口的使用

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.csdn.net/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>
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值