- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UBOOT在LCP2210上的移植
U-Boot在LPC2210上的移植分析
摘要:在嵌入式系统中运行Linux变得越来越广泛,而启动引导程序Bootloader的开发是嵌入式操作系统移植的一个重要环节,在内核映像执 行前完成相关的底层硬件的初始化工作,建立内存空间的映射图等重要工作,然后为内核提供引导参数,启动内核。U-Boot软件是一种功能强大的开源 Bootloader,本文详细的分析了U-Boot软件针对LPC2210处理器的移植方法、移植过程及相关要点。
关键词:Bootloader;U-Boot;LPC2210
1.引言
Bootloader是嵌入式软件开发的第一个环节,它为最终加载操作系统内核映像建立了正确的环境。U-Boot是一个开放源代码的启动引导加载 程序。笔者以PHILIP公司生产的LPC2210 处理器为硬件基础,详细分析了U-Boot软件启动流程,以及针对U-Boot源码本身并不支持的LPC2210处理器应用U-Boot作为 Bootloader的移植方法,最后给出了U-Boot在LPC2210上的移植实例。
2.Bootloader简介
Bootloader(引导加载程序)是系统加电后运行的第一段软件代码。通过运行Bootloader程序,可以初始化硬件设备,建立系统的内存 空间映射图,从而将系统的软硬件环境带到一个适合的状态,以便为最终调用操作系统内核准备好正确的环境。最终,Bootloader把操作系统内核映像加 载到RAM中,并将系统控制权传递给它。通常Bootloader对硬件的依赖性非常强,特别是在嵌入式系统世界,因此,在嵌入式系统世界里建立一个通用 的Bootloader几乎是不可能的。这就要求开发人员根据不同的硬件环境来开发适合自己开发板的Bootloader程序。
3.U-Boot软件结构
U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目。U-Boot不仅仅支持嵌入式Linux系统的引导,它还支持多种主流嵌入式操作系统。这是U-Boot 中universal的一层含义。另外一层含义则是U-Boot能够支持MIPS、ARM、XScale等诸多常用系列的处理器。这两个特点正是U- Boot项目的开发目标,即支持尽可能多的嵌入式处理器和嵌入式操作系统。U-Boot软件在顶层目录下有18个子目录,分别存放和管理不同的源程序。这 些目录按照其不同的规则可以分为三类:
(1)与处理器体系或开发板硬件直接相关,例如:/board,/cpu,/include等;
(2)一些通用的函数或者驱动程序,例如:/lib_arm,/driver,/Dtt,/common等;
(3)U-Boot的应用程序,工具或者文档,/tools,/Doc,/Fs,/Post,/net等。
4.启动流程分析
U-Boot软件的启动程序分为Stage1和Stage2两个阶段。依赖于CPU体系结构的代码,通常都放在Stage1中,Stage1主要完 成:硬件设备初始化;为加载Stage2准备RAM空间,复制Stage2到RAM空间中;设置堆栈;跳转到Stage2的C入口点。Stage2通常用 C语言来实现,这样可以实现更复杂的功能,而且代码会具有更好的可读性和移植性,在Stage2主要完成:初始化本阶段要使用的硬件设备;检测系统内存映 射;将kernel映像和根文件系统映像从Flash上读到RAM空间;设置内核启动参数,调用内核。
5.LPC2210下移植实例
5.1移植前准备工作
移植过程中要从软件和硬件两个方面准备。首先在Linux操作系统平台下移植适合LPC2210处理器的交叉编译环境,直接下载arm-elf- toolssh,将它拷贝到根目录并增加其可执行权限,通过/arm-elf-toolssh命令运行脚本,查 看/usr/local/bin目录下有arm-elf开头的编译环境文件则证明交叉编译环境安装成功。
开发板硬件平台是基于ARM7TDMI RISC内核的LPC2210处理器,由于Bootloader软件是和底层的硬件是紧密相关的,所以在移植前要充分了解与移植有关的开发板硬件信息包 括:系统硬件器件地址空间分配,初始化CPU流程、NOR FLASH,RAM驱动及擦写芯片时序、网络芯片驱动等。移植相关的硬件框图如图1所示:
硬件框图 图1
U-Boot移植相关硬件地址空间分配为:FLASH 2MB 00x801FFFFF;PSRAM 8MB 00x817FFFFF;以太网控制器RTL8019 00x8340001F。由于U-Boot源码包中已经包含强大的网络技术的支持和丰富的硬件驱动代码,因此移植U-Boot
您可能关注的文档
- 新概念强化测试题.doc
- 消费者行为学大学生消费信息源调查报告.ppt
- 假期作业练习13.doc
- 实用外贸口语询价.doc
- 设备检修台帐(新).doc
- (简)2012年教师党性分析材料.doc
- 希望杯(19.doc
- 北航电工电子技术课件27.ppt
- 社团联合会社团展演策划.doc
- 牛津小学英语五年级检测题.doc
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
最近下载
- 2025年高考数学模拟卷(四)含答案及解析.pdf VIP
- 急性呼吸循环衰竭的早期识别与救治(共88张PPT)【88页】.pptx VIP
- 2023年河南省普通高校对口招生考试电子类专业课试卷.pdf VIP
- 院感及院感管理的基本概念.ppt VIP
- 维生素d3与骨骼健康课件.ppt
- 重点项目信息管理平台建设方案.docx
- 2025年高考数学模拟卷(三)含答案及解析.pdf VIP
- 河师大焦争鸣张万琴版线性代数答案解析.pdf VIP
- Unit4NaturalDisastersListeningandSpeaking课件高中英语人教版22.pptx
- 接受人生的荒谬是强大还是懦弱的表现?辩论赛 正方辩词一辩、二辩、三辩、四辩发言稿.docx
文档评论(0)