生成MPSOC以及ZYNQ的启动文件BOOT.BIN的小软件

我们知道MPSOC或者ZYNQ的启动文件BOOT.BIN 通常由三最少三部分组成

1,FSBL 第一阶段引导加载器

2,BIT流文件

3,用户APP文件

用户使用这个三个文件生成BOOT.BIN时候往往用SDK的用户界面,分别选择这三个文件之后生成。其实这种方法实际上是先生成了一个.BIF文件,这个BIF记录了上述三个文件的路径,以及处理器的型号等。如下:

复制代码
//arch = zynq; split = false; format = BIN
the_ROM_image:
{
	[bootloader]temp\no_app_fsbl.elf
	temp\top.bit
	temp\u-boot.elf
}

有了这个文件,之后SDK界面调用了bootgen.exe这个小工具,用命令行将这个.bif文件输入给boot.gen如下:

复制代码
bootgen -image output_zynq.bif -o temp/BOOT.bin -w on  

这里-o是生成的boot.bin的输出路径。-w on是允许warning提示。

另外bootgen.exe的运行需要用到一些动态库,我也挨个挑选出来放在bootgen.exe所在目录。就有了下面截图的目录结构

这里我们可以用文本打开.BAT文件和BIF文件,修改文件路径,设置输入文件和输出文件boot.bin的路径。另外在批处理文件里看到的ping指令,实际就是延迟几秒,让用户看到运行结果。

以上文件都是我从vivado里面拷贝出来的。

复制代码
通过百度网盘分享的文件:boot_gen.zip
链接:https://pan.baidu.com/s/1xbZR00CBCGgGdbRW1_no0A 
提取码:bacp  
相关推荐
Better Bench4 小时前
WSL2 Ubuntu 中 Claude CLI “command not found” 故障排查与修复
linux·ubuntu·claude·wsl·claudecode
IKUN家族4 小时前
Spring MVC(一)
java·spring·mvc
实心儿儿5 小时前
Linux —— 进程间关系和守护进程
linux·运维·服务器
老马识途2.06 小时前
关于跨域问题的总结
java·前端
魔力女仆6 小时前
分享一个 JS 鼠标跟随贪吃蛇背景库
开发语言·javascript·计算机外设
Dawn-bit6 小时前
Linux磁盘管理详解
linux·运维·服务器·计算机网络·云计算
都叫我大帅哥6 小时前
Java日期时间三十年战争:从Date考古到LocalDateTime革命,以及数据库与前端的那点事儿
java
Muscleheng6 小时前
SpringBoot 集成 DeepSeek 实现 RAG 文档问答
java·spring boot·ai·springai
RisunJan7 小时前
Linux命令-sftp(SSH 文件传输协议客户端)
linux·运维
2401_894915537 小时前
GEO 搜索优化完整源码从零部署:环境配置、集群搭建全流程
开发语言·python·tcp/ip·算法·unity