参考博客

参考网站

有许多关于在ZYNQ处理系统上安装Ubuntu或Linaro发行版的教程红旗linux桌面版,而且其中大部份早已过时,其中一些使用交叉编译工具来建立内核和内核模块,大多数初学者都认为很难。大多数教程在FPGA部份中使用特定硬件,我们难以修改。当我第一次开始在ZYNQZC702上安装Ubuntu时,我不得不通过所有这种方式来确定每位工具链的任务。为此,下边将介绍使用ZC702评估套件在ZYNQ-7000APSoC上安装Ubuntu的最简单快捷的方式。

PetaLinux

PetaLinux是由Xilinx提供的工具链,用于为ZYNQ生成Linux内核镜像、rootfilesystem和内核模块ubuntu root分区,比如具有可编译硬件的嵌入式系统(适用于FPGA部份中不同硬件设计)。

使用PetaLinux工具链,我们可以轻松地为ZYNQPS建立内核和模块linux使用教程,而无需使用交叉编译工具。使用PetaLinux一个缺点是每位PetaLinux版本都附送特定的Linux内核版本。诸如,PetaLinux2016.4附送一个4.6.0的默认内核版本。并且Xilinx提供了一种改变PetaLinux默认内核版本的方式。

NotePetaLinux工具可以为特定硬件设计生成U-Bootfiles、FirstStageBootLoader(FSBL)和BOOT.BIN。使用XilinxSDK可以完成同样的事。

PrerequisitesStart

将主要介绍怎么安装PetaLinux,并打算SD卡以启动Linux。更关注只用PetaLinux。

Step1:InstallPetaLinux

PetaLinuxToolsDocumentation:ReferenceGuide(UG1144)

ubuntu root分区_分区助手_分区工具

Step2:PrepareSDcardforbootingLinux

这可以通过Linuxgparted轻松完成。在Ubuntu中ubuntu root分区,打开终端:

sudo gparted

假如没有安装:

sudo apt install gparted

使用SD卡优盘将SD卡联接到PC,之后使用前面的启动gparted。按一下步骤打算SD卡。

Step3:CreatetheHardwareDesign

此步骤中,我们将使用最基本的硬件设计启动Linux。按照PetaLinuxWorkflowTutorial,在ZYNQ-7000中运行Linux的硬件要求甚少。如下:

以下步骤创建基本硬件设计:

这里写图片描述

这里写图片描述

分区工具_分区助手_ubuntu root分区

Note“RunBlockAutomation”将电路板的预设添加到设计中,一般会手动设置ZYNQPS上运行Linux所需的所有功能。并且为了确保,我们将在下一步中检测这种功能。

这里写图片描述

按照前面的步骤,创建设计的硬件描述文件(.hdf)将保存在项目目录的"project_name.sdk"文件夹中。记住这一步骤,下一步须要。

注意对于下一步,前面的“project_name.sdk”文件夹必须与您安装PetaLinux的操作系统坐落同一操作系统中。假如在不同操作系统中完成上述步骤,只须要将该文件夹复制到相关的操作系统即可。

Step4:GeneratingKernelimagesforthedesignedhardwareusingPetaLinux

在安装PetaLinux的Linux中打开一个Terminal,之后转入要创建PetaLinux项目的目录。将PetaLinux项目命名为“test_boot”。

petalinux-create --type project --template zynq --name test_boot
cd test_boot

分区工具_ubuntu root分区_分区助手

petalinux-config --get-hw-description=/home/user/basic/basic.sdk/

petalinux-config

这将跳出一个窗口(如右图所示)来配置项目。在此窗口下,为了将内核指向自定义根文件系统,须要进行配置。

这里写图片描述

转入“SubsystemAUTOHardwareSettings”-->“AdvancedbootableimagesstorageSettings”-->“bootimagesettings”,将“imagestoragemedia”选项设置为“primarysd”转到“SubsystemAUTOHardwareSettings”-->“AdvancedbootableimagesstorageSettings”-->“kernelimagesettings”,将“imagestoragemedia”选项设置为“primarysd”转到“SubsystemAUTOHardwareSettings”-->“AdvancedbootableimagesstorageSettings”-->“dtbimagesettings”,将“imagestoragemedia”选项设为“primarysd”转到“ImagePackagingConfiguration”,将“Rootfilesystemtype”选项设为“SDcard”

选择“Exit”,并保存新的配置。

petalinux-build

ubuntu root分区_分区助手_分区工具

petalinux-package --boot --format BIN --fsbl ./images/linux/zynq_fsbl.elf --fpga ./images/linux/download.bit --u-boot

Note以上中,使用“download.bit”作为文件名。按照自己的文件名修改。

Step5:DownloadingUbuntu16.04LTSRootFileSystemforZYNQ

提取:

tar xf ubuntu...

假如SD卡的“rootfs”分区安装在“/media/rootfs”,执行下边命令解压Ubunturootfilesystem,并复制到“rootfs”分区,设置权限:

sudo tar xfvp ./*-*-*-armhf-*/armhf-rootfs-*.tar -C /media/rootfs/
sync
sudo chown root:root /media/rootfs/
sudo chmod 755 /media/rootfs/

Step6:BootingLinuxonZC702

将打算好的SD卡联接到PC,并将“

/images/linux/”目录的文件复制到SD卡的BOOT分区

sudo cp ./images/linux/* /meida/BOOT/

这里写图片描述

Alldone,EnjoyUbuntuonZYNQ

本文原创地址://gulass.cn/ufqzzpgtjsaz.html编辑:刘遄,审核员:暂无