Linux教程

【ZYNQ搭建系统】第4篇:linux系统层实现AXI DMA数据传输

本文主要是介绍【ZYNQ搭建系统】第4篇:linux系统层实现AXI DMA数据传输,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本文依据个人工作经验整理而成,如有错误请留言。
文章为个人辛苦整理,付费内容,禁止私自转载。
文章专栏:《黑猫的FPGA知识合集》

1 前言

1.1 工程环境

软件
windows上装的vivado 2018.1
windows上装的SDK 2018.1
ubuntu

工程项目
axi dma loop实验

硬件
zedboard开发板(ZYNQ 7020)
SD卡:通过sd卡启动开发板
1.2 背景概述
我使用的是ZYNQ芯片的zedboard开发板,在开发板中跑Linux系统,之所以跑linux系统是想实现多线程,想解决的目标是通过DMA驱动将数据实现PL和PS互联。

之前学习FPGA的时候,是基于裸板开发,vivado工程创建好以后,在SDK会生成相应的板级支持包BSP,直接调用BSP里面的函数接口,就能进行DMA的初始化、传输数据、接收数据等功能。

但是当zedboard开发板搭建了操作系统以后,就不知道如同通过DMA实现PL和PS之间的通信了。原因就在于完全不懂内核驱动,自己第一次搞,又没有人指导,网上查了好久都没查到具体怎么弄。当时干了很多无用功,存在很多疑惑,浪费了很多时间,如下:

1、
SDK创建standalone工程会根据硬件生成BSP可供FPGA开发人员调

这篇关于【ZYNQ搭建系统】第4篇:linux系统层实现AXI DMA数据传输的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!