|
i.MX6UL 芯片上电过程分析
前一篇文章讲述了如何使用Yocto Project基于i.MX6UL平台构建嵌入式Linux系统的三大件(u-boot,kernel,rootfs),文章的具体内容,可以参考这里。
嵌入式Linux系统移植开发-(1)基于Yocto构建嵌入式u-boot,内核,文件系统
在分析i.MX6UL 的u-boot启动过程之前,先来分析一下i.MX6UL芯片一上电的时候,执行了哪些操作,进行了哪些处理。
这个上电过程,通常是指处理器芯片从上电开始,到执行到BootLoader的汇编入口函数(如u-boot的入口函数是_start函数)之前的过程。
很多初学者或者一部分单片机工程师都会认为,芯片一上电的时候,首先执行的程序是类似u-boot之类的BootLoader,或者是单片机程序里面类似于xxxx_start_up.S的启动文件,更有很多单片机工程师认为,芯片一上电就去执行main()函数。
其实,大部分嵌入式处理器芯片一上电的时候,首先执行的既不是BootLoader,也不是执行类似于xxxx_start_up.S的启动文件。而是执行一段开发者看不见摸不着的程序,通常把这段程序称为BootROM。
这段程序在嵌入式处理器芯片生产设计的时候就被芯片设计厂家固化在芯片里面,开发者作为使用芯片的角色,不需要获得BootROM的源码,也不需要对BootROM源码进行改写。
但作为开发工程师,了解一下BootROM的工作原理,可以对芯片上电的启动过程,有更深刻的认识。
具体的分析过程,请点击这里
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|