Xilinx zynq系列pcie xdma通信(二):下位机PS端
在上一篇博文中介绍了PL端的设置,本文继续介绍PS端的设置。PS端仅用于验证上位机读写DDR3是否正确,因此相对比较简单。
一、新建SDK项目
在生成好bit文件之后先Export Hardware
启动SDK
打开SDK后界面如图,可以看到自动生成了一个platform_0的文件夹,这个文件夹里的内容就是之前文章中zynq的一些配置内容。当工程目录发生更改后,SDK又会再自动生成一个platform。platform文件夹删除后,重启SDK可自动重新生成platform配置信息。
PS端程序主要对DDR3内存进行读写,用来验证上位机通过PCIE对DDR3的读写是否正确,因此这里只写一个简单的hello world程序。先new一个application project。
填好工程名,OS Platform选standalone或者FreeRTOS无所谓,因为我比较习惯有操作系统的,因此选了FreeRTOS,然后单击next
选择FreeROTS Hello World,然后finish即可
二、工程配置方法简介
工程建完以后我们有得到了两个新的文件夹,pcie_test和pcie_test_bsp。其中前者相当于用户工程,后者为xilinx库函数。我们先关注pcie_test中的lscript.ld文件,双击打开以后可以查看/修改当前的ddr3内存范围、堆栈大小。根据xilinx芯片手册介绍0x00000000~0x000FFFFF的地址是有其他功能的,因此我们可以使用的ddr3范围是0x00100000~0x3FFFFFFF。
另一个比较重要的配置文件就是pcie_test_bsp中的system.mss文件,打开后选择Modify this BSP's Setting,可以设置库文件的一些配置,比如当前操作系统的一些配置等等。测试程序没啥特殊需求,这两个文件保持默认即可。
三、修改主函数
打开pcie_test工程中的freertos_hello_world.c文件,更改为以下代码。main函数中新建一条default线程,入口函数为defaultTask,然后开启任务调度,freertos操作系统即开始运行。在defaultTask中,先向内存地址0x24000000(在刚才说的内存范围中随便选了一个地址)中写入了123456789,然后每隔1秒读一次该内存地址中的数据查看是否被更改。此处Xil_Out32和Xil_In32为xil_io.h中的内存读写函数,看了下源代码,其实Xil_Out32就相当于*(u32*)(0x24000000) = 123456789,Xil_In32相当于data = *(u32*)(0x24000000)。
http://www.taodudu.cc/news/show-5309084.html
相关文章:
- 【VS 2022】未能加载文件或程序集“sapnco”或它的某一个依赖项。试图加载格式不正确的程序。
- 未能加载文件或程序集“”或它的某一个依赖项。试图加载格式不正确的程序。
- Noesis.Javascript.dll 引用时报错“找不到指定的模块”
- AES加密出现Error: Malformed UTF-8 data报错的解决方法
- new and operator new
- Python报ImportError: No module named错误解决过程记录
- Maven中source插件的使用及其注意问题
- 并行算法设计与性能优化_如何通过多学科优化设计来提升产品设计性能?
- 未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。(转)...
- 未能加载文件或程序集“********”或它的某一个依赖项。试图加载格式不正确的程序。...
- C# Javascript引擎,如何在C#中执行现有的JS代码?
- javascript(十五) 错误处理技术
- 零真红之蝶 模型提取
- 转帖一篇---Noesis:一款基于本体的大气科学语义搜索工具
- Noesis.Javascript中执行arttempllate读取运行错误
- 未能加载 noesis.javascript ......
- 关于 mat0_c.jpg 风格的 PBR 材质贴图与 Noesis 加入 .mview 文件的问题解决
- Noesis:一款基于本体的大气科学语义搜索工具
- Noesis: 科学家们的语义搜索引擎
- 未能加载文件或程序集Noesis.Javascript.DLL或它的某一个依赖项。找不到指定的模块。
- android zuomian app,安卓手机中必备的五个黑科技App,没装的简直太可惜了
- 微软账户登录的win11家庭版开启局域网共享
- 论如何创建APP打开提示手机框架不兼容(架构:32位和64位)
- 安全的随想Android手机恶意软件移除
- 手机文件服务器app,有没有什么软件可以让手机和电脑相互传东西的?拜托各位大神?...
- 百度网盘VIP功能免费用!官方出品的这个文件管理App,太赞了!
- 易点天下IPO被中止:财务资料过有效期 申请上市2年仍无进展
- 16 个使用 App Bundle 发布应用和游戏的理由
- java filebody出错_java-FileNotFoundException打开失败:Samsung设备上...
- html文件怎么传给手机app,手机向电脑传输文件该用什么app好?2019局域网传输软件推荐...
Xilinx zynq系列pcie xdma通信(二):下位机PS端相关推荐
- Xilinx zynq系列pcie xdma通信(一):下位机PL端
一.前言 本人没什么FPGA的开发经验,然而一上来就要搞zynq和PCIE通信,上手真的太难了.查阅了各种网上资料,经历了一个多月各种测试终于成功调通了.因为网上关于pcie的资料太少,翻来翻去就是那 ...
- axi dma 寄存器配置_FPGA Xilinx Zynq 系列(三十二)AXI 接口
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分.大侠可以关注FPGA技术江湖,在"闯荡江湖"."行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢. ...
- 【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十章 PS端RTC中断实验
原创声明: 本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处. 适用于板卡型号: AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E ...
- Xilinx FPGA PCIe XDMA性能测试报告(一)
1 测试内容 本报告对Xilinx FPGA的PCIe XDMA的性能进行了测试,同时,给出了具体的测试框图.测试平台.测试步骤.测试记录等内容. 2 测试框图 3 测试平台 硬件平台:Dell R3 ...
- FPGA Xilinx 7系列高速收发器GTX通信
Xilinx 7系列高速收发器GTX 说明: FPGA: TX端_zynq(7z035) RX端_zynq(7z100). 两个FPGA通过SFP(光纤)接口相连进行GTX的通信. 环境:Vivado ...
- 疫情爆发,“缺芯潮”来袭,ZYNQ系列出货量剧增如何满足供求,看这里!
1.疫情爆发,加剧"缺芯潮"! 据中国台湾<经济日报>6月5日消息,中国台湾半导体封测大厂京元电子(King Yuan Electronics)竹南厂发生聚集性感染事件 ...
- Xilinx Zynq ZynqMP DNA
作者 QQ群:852283276 微信:arm80x86 微信公众号:青儿创客基地 B站:主页 https://space.bilibili.com/208826118 参考 Xilinx FPGA的 ...
- 移动机器人下位机软件
文章目录 前言 一.串口通信部分 二.PWM调速 三.编码器数据获取 四.PID速度控制 五.里程计数据计算 总结 前言 移动机器人的控制系统软件部分分为上位机软件与下位机软件两部分,二者之间通过串口 ...
- 数据采集系统下位机与上位机代码
数据采集系统下位机与上位机代码. 下位机采用开发板来完成. AD9226模数转换芯片,最大65MHz采样,12bit量化. 双通道采样. 上位机可以设置下位机的采样深度最大采集8K,采样率(1M,10 ...
最新文章
- pythontuple数据类型_Python基础教程2d–数据类型-tuple(元组)
- 前端JS: 通过代码-看函数作用域this对象
- [攻防世界 pwn]——反应釜开关控制
- mysql查看锁表与解锁
- 编译MiniGUI 程序
- python永久保存数据_python如何保存数据
- 鬼才!用Python计算圆周率 π
- swift中没有selectall的解决
- SpringMVC中异常捕获
- python入门指南txt-【杂谈】爬虫基础与快速入门指南
- 第4次作业类测试代码 021
- 禅道---Bug管理模块
- ESP8266在arduino下开启路由转发实现wifi中继的方法小记
- 局域网***原理与防御(网络执法官类)
- 如何使用js实现图片轮播
- 微信公众平台开发之微喜帖
- 卷积神经网络(CNN)相关知识以及数学推导
- CentOS 7中同步系统时间
- postgres导入excel_PostgreSQL导入Execl表格方法
- Solidity学习记录——第四章
热门文章
- 2022-2028全球与中国WIFI芯片组市场现状及未来发展趋势
- GBase 8c安装部署(三):手工部署方式
- 聪明的头脑+有趣的灵魂 揭秘腾讯云最暖智能酒店解决方案
- 如何做好城市人才引进后的人才服务?
- pmp 证书到底有什么用处?
- juniper SSG 导出导入配置
- 【强化记忆】生物选修三填空题考点强化记忆1-基因工程、细胞工程——2017年2月25日...
- python正则匹配ip地址_IP地址正则表达式匹配方法,ip正则表达式匹配
- php微信网页不缓存,微信中浏览器缓存了不该缓存的网页?
- 说点冷知识:在秦汉之前,姓和氏是有区别的!