
zynq-petalinux
以zynqMP驱动开发为主,利用petalinux进行操作系统移植
嵌入式小胖
一个自命不凡的电子厂打工仔
展开
-
Yocto相关概念
Yocto:Yocto是这个开源项目的名称,该项目旨在帮助我们进行LINUX系统的自定义; Poky:Poky有两个含义。第一个含义是用来构建LINUX的构建系统,值得注意的是该Poky仅仅是一个概念,而非一个实体:它包含了BitBake工具,编译工具链、BSP、诸多程序包或层,可以认为Poky即是Yocto的本质;此外,Poky还有另外一层意思,使用Poky系统得到的默认参考LIN...原创 2020-05-07 21:21:38 · 1329 阅读 · 0 评论 -
ZYNQ的启动过程
ZYNQ的启动分为两个阶段:第一阶段:BOOT ROM(由ZYNQ厂家固化代码)第二阶段:FSBL(First Stage Bootloader),由SDK工具来制作1. 第一阶段(BOOT ROM) 上电后,ZYNQ SOC会首先执行片内BOOT ROM代码,BOOT ROM代码读取BOOT MODE寄存器来判断是哪一种启动方式(SD CARD / QSPI FLASH / J...原创 2020-05-05 22:03:24 · 1332 阅读 · 0 评论 -
petalinux安装指南--Unable to locate package XXX
本文在UG1144文档《PetaLinux Tools Documentation Reference Guide》基础上更新!1.获取petalinux资源包去官网(https://china.xilinx.com/support/download/index.html/content/xilinx/zh/downloadNav/embedded-design-tools.html)下载...原创 2020-04-05 13:48:25 · 1005 阅读 · 0 评论 -
在linux命令行中动态配置PL比特流
1. 将PL的bit文件打包生成BIN文件,2018.3版本之前,FPGA manager 只支持bootgen generated bin files,由于我们使用的vivado是2017.4版本的,所以需要将bit文件转换为Bin文件,可以通过SDK来将bit文件转换成bin文件。2. 在LINUX的shell命令行中输入: echo 0 > /sy...原创 2020-03-21 20:25:24 · 1145 阅读 · 0 评论 -
配置ZYNQ的PS从QSPI FLASH启动
配置ZYNQMP的PS从QSPI FLASH启动:PS会根据MODE PIN来决定从哪种存储介质中进行启动 从原理图上可知,MODE[3:0]引脚的值为0010,再根据前面BOOT MODE的表,可知PS端的启动模式为Quad-SPI(32b),即QSPI flash启动。 由于BBU上ZYNQMP外挂的是NOR FLASH,NOR FLASH是可以直接...原创 2020-03-21 20:18:20 · 2626 阅读 · 1 评论 -
zynqMP multiboot实现
zynqMP支持multiboot功能,根据选择的启动模式为QSPI32,可知系统会从FLASH的0地址开始查询可用的镜像,如果在0地址处未找到可用的系统镜像,则会偏移32K的地方继续寻找可用的镜像文件。 目前FLASH上的分区如下: 分区名称 包含文件 起始地址 终止地址 分区长度...原创 2020-02-18 17:56:18 · 2689 阅读 · 4 评论 -
petalinux中配置linux系统启动时自启动应用程序
1创建和安装一个新APP:petalinux-create -t apps --template install -n myapp-init --enable2在自动生成的myapp.bb文件中添加和修改:## This file is the plat-init recipe.#SUMMARY = "Simple plat-init application"SE...原创 2019-08-30 14:21:21 · 2624 阅读 · 3 评论 -
AXI-DMA SG模式下接收数据不连续的问题
在调试AXI-DMA SG接收链路时,发现PS端配置的BD buffer的大小超过PL端配置的packet长度时,在status中读取的实际在AXI-Stream中发送的数据的长度就是一个packet的长度如: PS端配置的BD buffer为4096,PL端配置一个packet的长度为2048,读取status的值为0x8c000800,control len ...原创 2019-08-30 14:17:01 · 2757 阅读 · 7 评论 -
Petalinux中创建和使用BSP
1. BSP打包 BSP对于团队和客户之间的分发非常有用。定制的PetaLinux项目可以通过bsp交付给下一个级别的团队或外部客户。本节通过一个示例解释如何用PetaLinux项目打包BSP。 在创建BSP之前,假设你已经针对你的硬件平台已经定制了一套Linux系统。按以下步骤来进行打包BSP。 在你的petalinux工程目录之外运行以下命令:$ pet...原创 2019-08-30 14:12:52 · 5884 阅读 · 0 评论 -
petalinux工程中如何关闭Dropbear SSH server
在linux启动过程中,会启动Dropbear SSH server,生成一串密钥,耗费几秒钟的时间,为了减少linux开机时间,可以通过以下方法来禁止启动Dropbear SSH server:1. 在/project-spec/meta-user/conf/petalinuxbsp.conf中添加:IMAGE_INSTALL_remove = " dropbear"IMAGE_FE...原创 2019-06-27 20:35:08 · 2506 阅读 · 0 评论 -
zynqMP axi-dma详解
AXIDMA:1.基本介绍 官方解释是为内存与AXI4-Stream外设之间提供高带宽的直接存储访问,其可选的scatter/gather功能可将CPU从数据搬移任务中解放出来。在ZYNQ中,AXIDMA就是FPGA访问DDR3的桥梁,不过该过程受ARM的监控和管理。 如图1所示,AXIDMA IP有6个接口,S_AXI_LITE是ARM配置dma寄存器的接口...原创 2019-06-27 18:09:59 · 5788 阅读 · 0 评论 -
SDK烧写FLASH过程中的问题总结
问题: 利用SDK来烧写FLASH时,出现FPGA仿真器识别出两个设备的情况,烧写失败。解决方案: 这是一个已知问题,在2016.4版SDK和所有后续版本中都会出现这个问题,直到2017.4.1发布。SDK flash programmer 将崩溃并显示与“rdi_zynq_flash.exe”相关的错误消息。这是某些FPGA部件号的ID代码检查问题,此问题...原创 2019-06-13 14:15:34 · 10003 阅读 · 2 评论 -
PetaLiunx下利用QEMU来仿真u-boot出错
问题:在PetaLinux 2018.2的环境下,利用QEMU来仿真运行u-boot时,出现如下错误:解决办法:在shell中输入:unset LANG(具体原因暂不明确) u-boot运行成功原创 2019-02-27 19:19:53 · 1029 阅读 · 0 评论 -
petalinux编译自己下载的u-boot
petalinux编译自己下载的u-boot1. 新建工程目录,定位编译链,启动PetaLinux: cd program/ source /home/admin-hjj/PetaLinux/settings.sh2. 新建petaLinux工程: petalinux-create --type project --template zynq...原创 2019-02-27 13:01:22 · 5060 阅读 · 2 评论 -
zynq Linux程序开发
开发环境:vivado 2018.2、PetaLinux 2018.2程序框架:具体步骤:1. 打开vivado 2018.2软件2. 点击Create Project3. 输入工程名和工程路径(注意:工程路径中不要有空格,否则后续SDK会无法导入硬件描述文件)4. 选择RTL工程,下方选项不勾选。5. 选择Verilog语言,不添加文件,一...原创 2019-02-27 13:00:30 · 4957 阅读 · 0 评论 -
手把手教你创建zynq裸板程序
开发环境:vivado 2018.2、xilinx SDK 2018.2程序框架:具体步骤:1. 打开vivado 2018.2软件2. 点击Create Project3. 输入工程名和工程路径(注意:工程路径中不要有空格,否则后续SDK会无法导入硬件描述文件)4. 选择RTL工程,下方选项不勾选。5. 选择Verilog语言,不添加文件,...原创 2019-02-20 11:13:52 · 1714 阅读 · 0 评论