Xilinx Zynq开发教程

作者

QQ群:852283276
微信:arm80x86
微信公众号:青儿创客基地
B站:主页 https://space.bilibili.com/208826118

Xilinx Zynq介绍

芯片架构

Arm CPU

PL可编程逻辑

开发环境搭建

首先Xilinx开发arm cpu的工具有两种:裸机开发和嵌入式linux开发。如果不跑linux操作系统,那么就用vitis就够了,如果跑linux操作系统,那么则需要xilinx的petalinux工具,vitis支持linux和windows两种操作系统,但是petalinux只支持linux操作系统。比如petalinux-v2019.2的最小安装配置是,

  1. 8GB内存
  2. 2GHz的CPU,最少8核
  3. 100GB磁盘空间
  4. 支持的操作系统:
    Red Hat Enterprise Workstation/Server 7.2, 7.3, 7.4 (64-bit)
    CentOS 7.2, 7.3, 7.4 (64-bit)
    Ubuntu Linux 16.04.3 (64-bit)

所以,如果你的电脑是linux操作系统,那么直接安装vitis和petalinux就可以了。如果你的电脑是windows操作系统,通过安装虚拟机软件,可以运行linux操作系统,在虚拟机的linux操作系统上安装petalinux,对于win10的用户还可以选择WSL/WSL2来代替虚拟机软件,常用的虚拟机软件有vmware和visualbox,我们选择vmware workstation player,点击下载vmware workstation player,选择最新版下载即可,这个软件对个人用户是免费的,常用功能也没有阉割。linux操作系统我们使用ubuntu,版本16.04.x,点击下载ubuntu,选择ubuntu-16.04.x-desktop-amd64.iso下载,我最后的安装环境是,

  1. win10
  2. vmware workstation player
  3. ubuntu16.04.6
  4. 虚拟机配置:4核+8GB内存
  5. 200GB磁盘

开发环境搭建教学视频链接:点我

Xilinx Vitis安装

Vitis安装比较简单,双击安装文件,安装即可。Vitis最早从2019.2开始引入,以前是没有这个软件的,以前只有Vivado,现在Vitis把Vivado包含进去了,提供了更丰富的功能。

嵌入式Linux开发环境安装

准备软件VMware Workstation Player,Uubuntu16.04.x的镜像ISO文件,Petalinux安装文件。
1. 在虚拟机上安装ubuntu
安装虚拟机和创建Ubuntu虚拟机请参考博客VMware安装和使用
2. 安装petalinux
首先在虚拟机上安装Petalinux的依赖软件,

$ sudo apt install vim ssh tftp-hpa tftpd-hpa dos2unix iproute2 gawk xvfb git make net-tools libncurses5-dev zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf libtool tar unzip texinfo gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev screen pax gzip zlib1g:i386 minicom u-boot-tools mtd-utils python device-tree-compiler

开始安装Petalinux,比如安装在路径/opt/pkg/petalinux-v2019.2-final,可执行下面操作,

$ sudo mkdir -p /opt/pkg/petalinux-v2019.2-final
$ sudo chmod 777 -Rf /opt
$ ./petalinux-v2019.2-final-installer.run /opt/pkg/petalinux-v2019.2-final

问题记录
awk: read error (Bad address),由于网络不好,依赖的软件包没有全部安装好,解决办法:重新执行安装命令。
/bin/sh is not bash,在ubuntu上会出现这个警告,执行sudo dpkg-reconfigure dash,在弹出的界面中选No

配置CPU和开发PL逻辑功能

配置CPU和开发PL逻辑功能需要使用Xilinx Vivado创建工程,而Vivado在安装Vitis时会自动安装。

裸机软件开发

裸机软件开发需要使用Vitis(2019年之前是使用Xilinx SDK)创建工程。

Linux开发

Linux开发需要使用Petalinux工具,使用Petalinux工具之前需要打开中断,执行命令,

$ source /opt/Xilinx/Petalinux/2018.2/settings.sh

创建工程

  1. 如果你使用自己开发的Vivado工程,那么你使用的是自定义硬件,参考博客Xilinx Petalinux安装和使用

  2. 如果你使用官方下载BSP或者第三方提供的BSP,将bsp文件拷贝到虚拟机,执行下面命令,例如,

$ petalinux-create -t project -s <your-bsp>.bsp

编译工程

进入工程路径,执行命令,例如,

$ cd <proj-dir>
$ petalinux-build

生成固件

启动引导文件,将vivado编译出的bit文件拷贝到工程路径下的images/linux文件夹,进入工程路径,执行命令,例如,具体流程参考Xilinx Zynq ZynqMP boot文件生成与下载

$ cd <proj-dir>
$ petalinux-package --boot --fpga images/linux/pcierc_wrapper.bit --u-boot --force

生成的启动引导文件名是BOOT.BIN。

烧录固件

需要烧录两个文件,位于工程目录下,

<proj-dir>/images/linux/BOOT.BIN
<proj-dir>/images/linux/image.ub
  1. BOOT.BIN:对于新板卡,第一次需要用Vivado或SDK下载BOOT.BIN,具体流程参考Xilinx Zynq ZynqMP boot文件生成与下载,后面可以利用网络升级BOOT.BIN。在Vivado2015以后的版本,下载BOOT.BIN时需要使用zynq_fsbl.elf,该文件也位于<proj-dir>/images/linux
  2. image.ub:下载完BOOT.BIN后重启板卡进入u-boot,利用u-boot下载或更新image.ub。

工程介绍

内核的配置文件位于project-spec/meta-user/recipes-kernel/linux/linux-xlnx中,例如,

$ ls -l <proj-dir>/project-spec/meta-user/recipes-kernel/linux/linux-xlnx
total 20
-rw-rw-r-- 1 qe qe 3245 Nov 27 10:32 user_2020-11-27-10-32-00.cfg
-rw-rw-r-- 1 qe qe  102 Nov 30 11:47 user_2020-11-30-11-47-00.cfg

打开这些文件可以看到新增或者删减了什么内核配置项,

$ cat <proj-dir>/project-spec/meta-user/recipes-kernel/linux/linux-xlnx/user_2020-11-30-11-47-00.cfg 
CONFIG_RTL8192EE=m
CONFIG_RTLWIFI=m
CONFIG_RTLWIFI_PCI=m
CONFIG_RTLWIFI_DEBUG=y
CONFIG_RTLBTCOEXIST=m
  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值