FPGA - 在 ZYNQ-ZYBO-Z710 开发板上运行 Ubuntu 23.04 LTS
FPGA - 在 ZYNQ-ZYBO-Z710 开发板上运行 Ubuntu 23.04 LTS
本博客介绍如何使用 Petalinux 2022.4 在 Zynq ZC7010 开发板上安装 Ubuntu 23.04 LTS。以下说明将帮助您设置环境并成功在 Zynq ZC7010 开发板上安装 Ubuntu
前置准备
在开始安装过程之前,请确保具备以下先决条件:
- Zynq ZC7010 开发板
- Petalinux 2020.1
- Ubuntu 23.04 LTS 安装文件
- SD 卡 (8GB 或更大)
- 能够运行 Linux 系统的主机(最好是 Ubuntu 系统)
- Xillinx Vivado 2020.1,下载链接
Step1 - 配置软件
通过执行以下命令安装所需的依赖项:
1
2
3sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install tofrodos iproute2 gawk gcc git make net-tools libncurses5-dev tftpd zlib1g-dev zlib1g:i386 libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev screen pax gzip从 Xilinx 网站下载 Petalinux 2020.1 安装程序到 Linux 主机上,并按照提供的安装说明进行安装。
Petalinux 2020.1 下载链接
然后在非 root 用户下运行下面指令安装
1
2
3
4sudo mkdir petalinux-2020.1
sudo chmod +x petalinux-v2020.1-final-installer.run
sudo chmod 755 petalinux-2020.1
./petalinux-v2020.1-final-installer.run -d petalinux-2020.1
Step2 - 准备 SD 卡
将SD卡插入主机
确定分配给 SD 卡的设备名称(例如,/dev/sdX)。你可以使用下面的命令来列出所有可用的块设备,并标识 SD 卡
1
lsblk
如果你使用的是 WSL,为了让 WSL 识别到 SD 卡,你需要做一些操作,具体的可以查看这篇文档
执行如下命令对SD卡进行分区和格式化
1
sudo fdisk /dev/sdX
在 fdisk 命令行界面中,创建一个新的分区表(g 命令)和一个新的主分区(n 命令)
使用 t 命令将分区类型设置为FAT32
通过执行 w 命令并退出 fdisk,将更改写入 SD 卡
使用下面的命令来 FAT32 文件系统格式化分区
1
sudo mkfs.vfat /dev/sdX1
将所需的 Ubuntu 引导文件装入 SD 卡。Ubuntu 版本可以在:https://ubuntu.com/download 找到
Step3 - 在 Vivado 中创建硬件设计工程
在主机上启动 Xilinx Vivado,从 Vivado 欢迎界面中选择创建一个新项目,为项目指定名称和位置,并选择适当的项目目录
选择Zynq ZC7010单板作为项目的目标设备。选择 RTL项目 作为项目类型,将源文件、约束和其他必要的设计文件添加到项目中
使用项目选项和 IP 集成商的默认设置,完成项目创建后,点击 Generate Bitstream,生成设计所需的比特流文件
一旦比特流生成完成,通过选择 File -> export -> export hardware 导出硬件设计
选择 Include bitstream,点击 OK,导出硬件设计
Step4 - 准备 Ubuntu 内核镜像
- 打开终端窗口并导航到项目目录。运行以下命令创建一个新的 Petalinux 项目:
1 | Petalinux-create -t project-s project-spec/template.yml |
- 将目录更改为新创建的 Petalinux,然后打开配置菜单,并根据您的需求进行必要的更改以配置项目。确保选择 Ubuntu 23.04 LTS 根文件系统为 rootfs 类型。执行如下命令:
1 | cd petalinux |
- 配置项目后,保存并退出配置菜单。安装 Zynq ZC7010 开发所需组件并生成可引导文件。最初,这可能需要8个小时,但如果我们尝试重新构建项目,它将在15分钟内重新构建。运行以下命令启动构建进程:
1 | petalinux-build |
- 构建过程完成后,复制生成的映像。将 boot.ub和 BOOT.bin 文件拷贝到 SD 卡
Step5 - 在 Zynq ZC7010 开发板上启动 Ubuntu
在 Zynq ZC7010 开发板中插入 SD 卡
连接外设设备
使用串口连接设备与开发板做数据交换