Zybo板运行Linux系统原理总结
2017-03-10 08:42
344 查看
对于ZYBO板上装Linux系统,之前只是按照教程进行了一步一步的设计,最终也达到了比较理想的效果,能够成功运行出图形界面,但是对于其中的原理却不是很懂,之前看过了《嵌入式系统软硬件协同设计实战指南》这本书,但是因为没有具体实践,因此对于书本上的内容也理解地不是特别透彻,甚至看过之后的印象只是停留在有这么一个东西,但是具体的实现确实非常茫然。今天通过之前的实践,再次对其原理进行研究。
首先,我对于ZYNQ系统的启动,以及Linux系统的启动进行详细的学习,并绘制了一张还算清晰的图片。可以看到ZYBO启动的步骤是:
在电源,时钟,复位等硬件电路准备号之后,启动BOOT ROM对于ZYBO板中的基本外设进行启动,从这里就可以判断,我们设置的是SD卡启动,然后根据读出的SD卡启动;
在第二阶段,就读取SD卡中的镜像,在我们的SD卡中,首先读取BOOT.bin对整个系统进行配置,其中BOOT.bin是通过fsbl_zynq.elf,zynq_system_wrapper.bit,Du-boot.elf这三个部分组成烧写的,并有一定的顺序,fsbl_zynq.elf即进入FSBL阶段,对PS进行初始化,zynq_system_wrapper.bit对PL部分进行配置,Du-boot.elf加载SSBL到内存空间;
接着进入SSBL阶段,为接下来进入Linux系统做准备,首先进行Linux内核的初始化,并初始化Linux系统所需要的一些外设,接着,拷贝设备树镜像到内存,uImage为Linux镜像,设备树devicetree.dtb主要完成管理系统的硬件资源,对设备进行驱动,uramdisk.image.gz为文件管理系统。
做好Linux系统启动的准备之后,就可以启动Linux系统了。
首先,我对于ZYNQ系统的启动,以及Linux系统的启动进行详细的学习,并绘制了一张还算清晰的图片。可以看到ZYBO启动的步骤是:
在电源,时钟,复位等硬件电路准备号之后,启动BOOT ROM对于ZYBO板中的基本外设进行启动,从这里就可以判断,我们设置的是SD卡启动,然后根据读出的SD卡启动;
在第二阶段,就读取SD卡中的镜像,在我们的SD卡中,首先读取BOOT.bin对整个系统进行配置,其中BOOT.bin是通过fsbl_zynq.elf,zynq_system_wrapper.bit,Du-boot.elf这三个部分组成烧写的,并有一定的顺序,fsbl_zynq.elf即进入FSBL阶段,对PS进行初始化,zynq_system_wrapper.bit对PL部分进行配置,Du-boot.elf加载SSBL到内存空间;
接着进入SSBL阶段,为接下来进入Linux系统做准备,首先进行Linux内核的初始化,并初始化Linux系统所需要的一些外设,接着,拷贝设备树镜像到内存,uImage为Linux镜像,设备树devicetree.dtb主要完成管理系统的硬件资源,对设备进行驱动,uramdisk.image.gz为文件管理系统。
做好Linux系统启动的准备之后,就可以启动Linux系统了。
相关文章推荐
- zybo板运行linux系统过程中的问题整理
- Linux系统基本结构之一 内核的组成以及运行原理
- Linux系统发展和运行原理
- [转+总结]Linux虚拟系统安装VMware Tools总结
- 关于Linux系统下Grub启动流程的讨论总结
- linux 结束 系统内运行的所有java进程(可同时停止websphere)
- [转载]Linux系统下开机自动运行命令的方法
- Linux系统中磁盘存储区管理原理与技巧
- linux系统的运行级别
- Linux系统下双网卡配置实践总结
- 如何使Linux系统上的程序开机后自动运行
- 一个将java程序运行在linux系统后台的脚本
- IBM 将推 OpenPower 服务器 仅运行 Linux 系统
- LINUX系统的shell原理
- 在Linux系统平台上安装Tomcat的总结
- 如何让Linux系统的程序在开机时自动运行
- [文件系统]制作可运行的Linux-0.11
- 对Linux系统进行配置应该养成做备份的习惯--个人总结
- 运行在网络处理器上的嵌入式Linux系统
- Wine:Linux系统上运行Windows程序平台