首页WIN10问题如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

时间2022-10-29 04:15:10发布分享专员分类WIN10问题浏览81

本文作者:赛灵思工程师 Zhao Gaofeng

本文依据 Vivado 2022.1 版本工具链的特性,对 UG1209( 最新版本为 2020.1 )中介绍的 USB BOOT 启动步骤做了修改,此外,介绍了 WINDOWS 10 中 DFU 工具的使用如何分区硬盘

Step1 VIVADO 操作:

新建 VIVADO 工程 如何分区硬盘

( 图片截自 UG1209如何分区硬盘 ,路径和工程名可自定,下同 )

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

新建 Block Design如何分区硬盘

添加 Zynq UltraScale+ MPSoC IP,并使用 run block automation 应用 board preset如何分区硬盘

需要注意的是,要在 board preset 的基础上减少外设的使用以防启动镜像过大,原因会在镜像制作阶段说明如何分区硬盘 。这里去掉了 PCIE、SATA、DP、CAN 外设以及两个 AXI HPM FPD 接口。

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

完成配置后,依次进行 Validate Design, Create HDL wrapper, Generate Output Product (OOC) , Export Hardware如何分区硬盘 。因为这里没有用到PL端,所以不用生成比特流。

Step 2 制作第一个启动镜像:

创建 FSBL 工程如何分区硬盘

配置 FSBL如何分区硬盘 ,在 src 目录下找到 xfsbl_config.h,修改其中的宏定义如下:

修改完成后保存、编译如何分区硬盘

打包 fsbl.elf 和 pmufw.elf,USB boot 的第一个启动镜像会被加载到 256KB OCM 中,为了满足 size 要求,第一个启动镜像只包含 fsbl.elf 和 pmufw.elf,如果使能过多外设会导致最终的 pmufw 过大如何分区硬盘 。当 OCM 被写满时,USB 启动就会失败。打包方式如下图所示,注意 pwufw 的 partition type 要指定为 pmu(loaded by bootrom)。

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

Step 3 制作第二个启动镜像:

使用 Vivado 2022.1 版本的 ZCU102 BSP 创建 PETALINUX 2022.1 工程如何分区硬盘

配置 PETALINUX 工程:

1.选中 Subsystem AUTO Hardware Settings, 选中 Memory Settings ,设置 System Memory Size 为 0x6FFFFFFF如何分区硬盘

2.返回主菜单. 选择 Image Packaging Configuration, 设置 root file system type 为 INITRAMFS如何分区硬盘

3.将 INITRAMFS/INITRD Image name 由默认的 petalinux-intramfs-image 为 petalinux-image-minimal,默认配置下ROOTFS 会放在 SD 卡的 EXT4 分区,这是 PETALINUX 2021.1之后版本的新特性,修改后 ROOTFS 在 DDR 中,就无需插 SD卡了如何分区硬盘

4.返回主菜单如何分区硬盘 ,选择 ARM Trusted Firmware Configuration,配置如下:

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

默认情况下,ATF 运行在 COM 中,但是在本设计中 OCM 的空间非常紧张,ATF 在 OCM 运行可能会因为内存不足卡死,所以改为在 DDR 中运行,同时使能 atf debug 方便调试如何分区硬盘

5.修改设备树:

编辑 ./project-spec/meta-user/recipes-bsp/device-tr ee/ files/system-user.dtsi 如下:

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

6.编译: petalinux-build

如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(上)

详细的测试过程如何分区硬盘 ,请参考“如何使用 Vivado 2022.1 版本工具链实现 ZCU102 USB 启动(下)”

爱资源吧版权声明:以上文中内容来自网络,如有侵权请联系删除,谢谢。

2022.1VivadoZCU102何使用USB2022.1USB如何分区硬盘
大学生游戏主机推荐哪个好?13代酷睿的未来战舰Ⅲ代 2022科大讯飞全球1024开发者节科技共创,AI创新正当时