Petalinux系列——1.创建Petalinux工程

前面介绍了Petalinux工具的安装,本篇文章介绍如何使用Petalinux工具给ZYNQ芯片编译一个linux系统。本实验在PYNQ-Z1/Z2上测试通过

  • 创建Vivado工程
    在这里插入图片描述
    用Block Diagram搭建上图所示工程,编译工程产生比特流,由于本篇博文只是建立一个最简单的demo,因此不要求PS部分与上图完全一致,只要包含了ZYNQ7 PS即可。
    在这里插入图片描述
    然后导出硬件描述文件,在这里导出的是hdf格式
  • 进入Petalinux的运行环境
source /opt/pkg/petalinux/settings.sh
  • 创建一个Petalinux工程
petalinux-create --type project --template zynq --name PYNQ

新建Petalinux 工程, 命名为PYNQ,会自动生成一个名为PYNQ的文件夹,然后将前面Vivado生成的硬件描述文件复制到PYNQ文件夹下面。Vivado生成的硬件描述文件有dsa和hdf两种格式,2018.2后的petalinux支持这两种格式。这个文件包含了硬件的信息比如用到了哪些片上外设(USB,I2C等),DDR的配置信息等。根据这些信息Petalinux编译出对应的内核。

  • Petalinux工程导入硬件描述文件
petalinux-config --get-hw-description ./

在这里插入图片描述
如果导入成功会弹出一个图形界面,这里不需要做额外的修改,直接保存退出即可。

  • 编译工程
petalinux-build
  • 打包镜像
petalinux-package --boot --force --fsbl images/linux/*fsbl.elf --fpga images/linux/*.bit --u-boot

编译结束后在images/linux下可以看到下列文件
在这里插入图片描述

BOOT.BIN是fsbl,u-boot,和bitstream打包在一起产生的文件,将BOOT.BIN和image.ub复制到FAT32分区的SD卡上。

  • 测试

ZYNQ启动时通过串口打印启动信息,我们可以用串口工具来观察启动信息。
在这里插入图片描述

打开Mobaxterm,点击左上角的Session,选择Seiral,波特率设置为115200。
将SD卡插入PYNQ,将PYNQ的启动方式设置为从SD卡启动,将PYNQ的MicroUSB接口连接到电脑,启动后看到Done亮起说明比特流加载完毕。上电后打开串口调试助手,可以看到内核启动时的信息。最终,如果出现下图则说明启动成功
在这里插入图片描述

输入用户名root,密码root即可进入Linux系统。
在这里插入图片描述

### PetaLinux 打包教程和指南 #### 使用 `petalinux-package` 命令进行打包 Petalinux 提供了专门用于将项目打包成适合部署格式的命令——`petalinux-package`[^1]。此命令允许开发者创建不同类型的输出文件,以便于后续的系统集成与分发。 对于希望构建可引导映像的情况而言,在执行该操作前需确保已配置好项目的根文件系统以及内核设置等内容。完成这些准备工作之后,则可以通过如下所示的方式调用上述提到的指令来生成最终产物: ```bash petalinux-package --image ``` 这条语句会依据当前工作目录下的定义自动处理必要的编译流程并产出相应的成果物;如果目标是生产一个完整的SD卡镜像(适用于直接烧写至存储介质),则应采用下面的形式指定额外参数: ```bash petalinux-package --prebuilt --sd-image <project_name>.sdk ``` 这里 `<project_name>` 应替换为实际工程名称的一部分,而 `.sdk` 后缀表示这是由Xilinx SDK所管理的一个特定版本的工作空间档案。 另外值得注意的是,在某些情况下可能还需要考虑其他选项以满足具体需求,比如定制启动加载程序或调整压缩级别等特性都可以通过查阅官方文档获取更详细的指导信息[^2]。 为了保证整个过程顺利无误,建议先阅读相关手册中的章节介绍部分,熟悉基本概念后再动手实践。同时也要注意操作系统平台的选择,例如推荐使用Ubuntu 16.04 LTS作为宿主机环境来进行此类开发活动[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值