Zynq UltraScale+ MPSoC Linux启动及设计流程
一、MPSOC Linux启动流程:
Zynq UltraScale+ MPSoC 上电后,首先由 BootROM 对 zynq 设备进行初始启动,然后引导加载 fsbl 到 OCM 并启动 fsbl;fsbl 启动后加载 PMU Firmware,然后加载 ARM Trusted Firmware,配置 DDR,最后将 uboot 加载到 DDR 并启动 uboot;uboot 启动后可选的加载 hypervisor,并在hypervisor 上运行 linux 系统(一般不使用 hypervisor),而是直接使用uboot 加载 linux 系统镜像到 DDR 并启动 linux,至此整个 linux 系统启动完成。
二、MPSOC linux 设计流程:
1.通过vivado创建硬件平台,得到xsa文件;
2.运行 source <petalinux 安装路径>/settings.sh,设置Petalinux运行环境
3.通过petalinux-create -t project 创建 petalinux工程;
4.使用petalinux-config --get-hw-description,将xsa文件导入到Petalinux工程中并配置Petalinux工程;
5.使用petalinux-config -c kernel 配置linux内核;
6.使用 petalinux-config -c rootfs 配置linux跟文件系统;
配置常用的工具如:CAN的 iproute2、I2C的i2ctools;进入Filesystem Packagse -->base -->iproute下 选中iproute2;
7.配置设备树文件,修改petalinux->project-spec->meta-user-recipes-bsp->files下的system-user.dtsi设备树文件;
8.使用petalinux-build编译整个工程;
9.使用 petalinux-package --boot制作BOOT.BIN启动文件;
10.制作SD卡启动卡,将BOOT.BIN和image.ub以及跟文件系统部署到SD卡中;
11.将SD卡插入开发板,并将开发板启动模式设置为从SD卡启动;
12.开发板连接串口线并上电启动,串口上位机打印启动信息,登录进入Linux系统。
文章详细阐述了ZynqUltraScale+MPSoC的Linux启动流程,从BootROM开始,经过FSBL、PMUFirmware、ARMTrustedFirmware,最终到U-Boot和Linux系统的启动。同时,介绍了Linux系统的设计流程,包括使用Vivado创建硬件平台,通过PetaLinux进行工程创建、配置内核、根文件系统、设备树,以及编译、打包和制作启动卡的过程。
1432

被折叠的 条评论
为什么被折叠?



