Linux下pl与ps端的通信,zedboard通过BRAM实现PS和PL的简单通信
使用Block Memory进行PS和PL的数据交互或者数据共享,通过zynq PS端的Master GP0端口向BRAM写数据,然后再通过PS端的Mater GP1把数据读出来,将结果打印输出到串口终端显示。
涉及到AXI BRAM Controller 和 Block Memery Generator等IP的使用。
本文所使用的开发板是zedboard
PC 开发环境版本:Vivado 2016.2 Xilinx SDK 2016.2
---------------------
作者:wangdaling
来源:CSDN
原文:https://blog.csdn.net/rzjmpb/article/details/50365915 https://blog.csdn.net/rzjmpb/article/details/50365915
一、实现的结构原理图
1、PL端硬件架构搭建
新建工程后在Create Block Design中添加IP,点击添加IP的按钮后在弹出的搜索框中搜索ZYNQ时添加PS,搜索BRAM时添加AXI BRAM Controller 和Block Memory Generator,然后对PS中的相应接口做参数设置
2、软件SDK中的代码如下:
#include
#include "platform.h"
#include "xparameters.h"
#include"xparameters_ps.h"
#include"xil_printf.h"
#include"xil_io.h"
//#define DDR_BASEARDDR XPAR_DDR_MEM_BASEADDR+0x10000000
int main()
{
init_platform();
int i;
int rev;
xil_printf("-----The test is start...\n\r");
for(i=0;i<15;i++)
{
Xil_Out32(XPAR_BRAM_0_BASEADDR+i*4,0x10000000+i);
}
for(i=0;i<15;i++)
{
rev=Xil_In32(XPAR_BRAM_0_BASEADDR+i*4);
xil_printf("the address at %x data is: %x \n\r",XPAR_BRAM_0_BASEADDR+i*4,rev);
}
xil_printf("-----The test is end!-------\n\r");
cleanup_platform();
return 0;
}
3、编译软件部分的代码,
4、将zedboard 板子的JTAG和PROG的端口与PC电脑端相连
5、然后program FPGA(从硬件部分生成的bitstream),run configuration,run
Linux下pl与ps端的通信,zedboard通过BRAM实现PS和PL的简单通信相关推荐
- linux下svn(subversion)服务端添加工程及配置权限
linux下svn(subversion)服务端添加工程及配置权限 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/9010507.html 此篇我只是将所做过的 ...
- 全网史上最详细全面的Linux下安装mysql客户端服务端
全网史上最详细全面的Linux下安装mysql客户端服务端Linux下安装mysql 1.上传MySQL5.6的tar包 创建目录: mkdir /usr/local/src/mysql5.6 上传: ...
- Linux下安装SVN服务端
第一步:检查是否安装 使用版本查看检查svn是否已经安装过,如果反馈版本则已经安装过就不需要再次安装,如没有反馈版本信息则可通过yum安装软件. [root@localhost /]# svnserv ...
- linux下查看Tomcat服务端口号
第一种使用命令查看 第一步,ps -ef|grep tomcat 查看运行的Tomcat 服务,获取 PID 第二步,根据 PID ,查找端口号 netstat -antup |grep LISTEN ...
- linux怎么安装git服务器,linux下安装git服务端
[root@m2 ~]# yum install -y epel-* [root@m2 ~]# yum install -y git 创建仓库目录 [root@m2 ~]# mkdir /mnt/gi ...
- 开发基础 - Linux下安装SVN服务端
第一步:检查是否安装 使用版本查看检查svn是否已经安装过,如果反馈版本则已经安装过就不需要再次安装,如没有反馈版本信息则可通过yum安装软件. [root@localhost /]# svnserv ...
- Linux下安装SVN服务端(全)
1.简介 Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. yum install subversion 2.配置 2.1.创建仓库 ...
- Linux下安装SVN服务端小白教程
安装 使用yum安装非常简单: yum install subversion 配置 创建仓库 我们这里在/home下建立一个名为svn的仓库(repository),以后所有代码都放在这个下面,创建成 ...
- Linux下安装SVN服务端教程
1.安装 使用yum安装非常简单: yum install subversion 2.1. 创建仓库 我们这里在/home下建立一个名为svn的仓库(repository),以后所有代码都放在这个下面 ...
最新文章
- After Effects CS4 期末考试卷
- Java学习_day009面向对象(oop):对象和类(下)
- SharePoint 2007 Web Content Management 性能优化系列 前言
- 手机闪存速度排行_2020年双十二3000-4000元高性价比手机推荐!
- usb连接不上 艾德克斯电源_工程师,USB与SPI之间如何通信?什么芯片方案可以实现...
- Spark 交互式处理上百 TB 数据
- 源码安装 nginx 并设置为 service
- mysql更改密码_Mysql更改密码、连接mysql、mysql常用命令
- leach算法的实现过程_LEACH算法源代码
- JAVA计算机毕业设计大学生二手物品交易网站演示记录2021Mybatis+系统+数据库+调试部署
- 【f1c200s/f1c100s】不带中断引脚采用扫描的方式实现通用gpio-keys
- 将博客搬至CSDN_拔剑-浆糊的传说_新浪博客
- 阿里云飞天系统的技术架构
- 虚拟机没有网络教你如何解决
- NOIP2020总结
- 量子计算为算法指数加速:Shor‘s algorithm
- Android数据库与ContentProvider
- matlab怎么改图像的坐标轴,MATLAB函数图像坐标轴刻度改变
- matlab转换为exe文件,matlab GUI编程及转换为独立运行的exe文件
- 【论文阅读笔记】Integral Human Pose Regression
热门文章
- 解决Data too long for column ‘xxx‘ at row 1问题以及深入理解mysql的字符串数据类型(char,varchar,enum,text,longtext...)
- 2021年中国直播电商用户数量、成交额及企业数量分析[图]
- redux1 - 20行代码实现redux
- 关系、关系模式、关系数据库的区别和概念以及关系的完整性约束条件
- 『最近公共祖先·神奇转化』挖矿
- 计算机组成原理试验报告,计算机组成原理试验报告
- Git修改密码重新登录
- 信息化环境下企业如何做到数据安全
- ElementUI快速上手(jar包本地下载)
- 建造者模式(Builder)——从组装电脑开始