首页 > 其他分享 >Uboot功能

Uboot功能

时间:2024-03-20 21:44:47浏览次数:28  
标签:功能 RAM Uboot Flash XIP 内核 SD

Uboot功能

Uboot(Universal bootloader)就是一个裸机程序,用于启动内核。不过相较于单片机程序更加复杂

相关知识补充

  1. Uboot:Universal bootloader
  2. XIPCPU可以直接发出地址信号读取Flash/RAM,执行指令(可以看成直接在Flash/RAM中运行);此类Flash/RAM称为XIP设备
    XIP:有时程序从SD卡启动,CPU无法直接读取SD卡,需要通过emmc控制器访问SD卡。则SD卡为非XIP设备

启动过程

  1. 运行Uboot,目的是启动内核:读Flash,将内核代码拷贝到RAM
    带来了一个问题,一般单片机的RAM使用的是SRAM,比较小,无需初始化即可使用。而嵌入式Linux的内存一般比较大,使用DDR。那么就需要初始化内存。
    Uboot的工作

    1. 初始化内存
    2. 初始化其他硬件:初始化时钟,然后是Flash
    3. 将内核拷贝到RAM
    4. 启动内核
  2. 启动内核:目的是为了启动应用程序
    内核的工作:

    1. R/W硬件驱动,比如Flash(U盘,网络,LCD,输入输出设备)驱动程序
    2. R/W文件,文件系统
    3. 找到启动APP
  3. 为了适配所有设备,防止引入许多冗余的配置文件,在Uboot中引入设备树。文件目录中有一个dtb文件夹
    Uboot = Uboot.bin + 某个dtb文件

支持非XIP设备启动(SD卡启动,串口启动)的过程

由于CPU无法直接从SD卡(非XIP设备)读到程序(指令),但是当前又需要CPUSD卡启动程序。出现了矛盾,因此引入了BRom(BootRom)-CPU可以直接访问。
完整启动过程:

  1. CPU读BootRom,运行BootRom代码
  2. BootRom工作:Copy:将SD卡上的Uboot拷贝到RAM运行

总结

Uboot启动流程

XIP设备

CPU直接访问Flash,读取Uboot代码并执行(相当于直接再FLASH上运行):初始化内存,初始化硬件,将Flash上的内核代码拷贝到RAM。启动内核

非XIP设备

  1. 首先CPU执行BootRom代码,将SD卡(非XIP)上的Uboot拷贝到RAM
  2. 执行Uboot代码:初始化硬件(不再初始化内存,程序本身就在RAM中),将Flash上的内核代码拷贝到RAM。启动内核

标签:功能,RAM,Uboot,Flash,XIP,内核,SD
From: https://www.cnblogs.com/PangXiao/p/18086165

相关文章

  • Discourse Hot 主题功能
    在最新更新的Discourse实例中提供了一Hot主题的功能。  算法这个Hot主题的功能是根据当前分类或者整体总类的链接下进行计算的。如果你在某一个特定的分类下这个Hot就会显示在当前分类下的热门主题。根据官方的说法,Hot的算法是根据帖子发布的时间,用户参与程度,回......
  • POSIX标准及其一致性/功能/压力测试
    1POSIX标准POSIX:PortableOperatingSystemInterfaceofUnix.,可移植操作系统接口。X表示其是对UnixAPI的传承。POSIX标准由IEEE(电气和电子工程师协会)发布,定义了操作系统应该为应用程序提供的接口标准,是IEEE为要在各种UNIX操作系统上运行软件而定义的一系列API标准的总称。......
  • Uboot命令的使用
    学习资料:https://www.bilibili.com/video/BV12E411h71h?p=6&vd_source=432ba293ecfc949a4174ab91ccc526d6https://blog.csdn.net/x777777x/article/details/136444785 记录一次uboot启动log打印:U-Boot2016.03(Mar182024-01:07:08+0800)//编译时间2024/03/180......
  • 深入了解鸿鹄工程项目管理系统源码:功能清单与项目模块的深度解析
     工程项目管理软件是现代项目管理中不可或缺的工具,它能够帮助项目团队更高效地组织和协调工作。本文将介绍一款功能强大的工程项目管理软件,该软件采用先进的Vue、Uniapp、Layui等技术框架,涵盖了项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营等全过程。通过......
  • 数据中台应具备哪些功能?
    数据中台对于大部分人来说,都是使用数据中台,如果让你来搭建一个数据中台,你知道应该搭建什么功能,才算是一个相对合格的数据中台吗?数据中台在普通开发者来说,感觉就是有很多功能,那么具体有哪些呢?就算是一名普通开发者,也应该知道数据中台具备哪些功能,里面的具体功能模块也应该熟悉,技......
  • CorelDRAW2024中文版功能全面且强大的平面设计软件
    CorelDRAW2024是一款功能强大的专业平面设计软件,它提供了丰富的绘图工具和特效,使用户能够轻松创建各种类型的设计,如图标、海报、宣传册等。无论是从事平面设计、插画、品牌设计还是其他创意领域,CorelDRAW2024都能满足你的需求,帮助你释放无限的创意潜力,让你的设计脱颖而出。C......
  • FL Studio21.2.2最新破解中文版编曲软件功能及使用讲解
     音乐是人类最美好的语言,它能够跨越国界、文化和语言,将人们紧密地联系在一起。在当今数字化时代,音乐创作已经不再是专业人士的专利,越来越多的音乐爱好者开始尝试自己动手制作音乐。而FLStudio21中文版编曲软件正是这样一个为你打开音乐创作之门的工具。FLStudio21中文版编......
  • MacBook专业录屏软件Camtasia studio 2024 for mac破解版新功能介绍及安装图文教程
    近年来,随着互联网技术的不断发展,视频制作已经成为人们生活和工作中不可或缺的一部分。作为一款旨在帮助用户创建高质量视频的软件,CamtasiaStudio在这个领域中一直处于领先地位。而随着时代的发展,CamtasiaStudio也在不断更新和完善,为用户提供更好的使用体验。2024年的Camtas......
  • 前端-全屏功能
    constisFullScreen=ref(false)//全屏constfullScrenn=()=>{letelement=document.documentElementif(element.requestFullscreen){ element.requestFullscreen()}elseif(element.webkitRequestFullScreen){ element.webkitRequestFullScreen()......
  • 3.0.3版本功能介绍
    3.0.3版本功能介绍1、集群管理工具CMCM详细技术介绍https://docs.opengauss.org/zh/docs/latest/docs/Toolreference/统一数据库管理工具.htmlhttps://mp.weixin.qq.com/s/ZAgW4hptTKuSZtWC6hd6sAbilibili直播介绍https://www.bilibili.com/video/BV1e3411M7j2/?spm_id_from......