- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 
                        查看更多
                        
                    
                嵌入式系统BootLoader的设计与实现 S3C44B0X的BootLoader 1.绪论     1.1 BootLoader简介 (1) BIOS 定义:BIOS (Basic Input/Output System)是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序;  主要功能:是为计算机提供最底层的、最直接的硬件设置和控制。  1.1 BootLoader简介 (2) 嵌入式系统引导加载程序 对于PC机来说,其开机后操作系统启动前的硬件初始化操作是由BIOS完成的; 对于嵌入式系统来说,出于通用性、价格等方面的考虑,通常并没有像BIOS那样的固件程序; 启动时用于完成初始化操作的引导加载程序必须自行编写,这段程序一般被称为Bootloader程序。  BootLoader BootLoader程序是系统加电(或复位)后运行的第一段软件代码。 主要作用:通过这段代码,可以初始化系统硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便最终调用操作系统内核。 1.1 BootLoader简介 (3) BootLoader特点 BootLoader除了依赖CPU的体系结构外,还依赖于具体的嵌入式板级设备的配置; 对于两块不同的嵌入式开发板,即使它们是基于同一种CPU而构建的,如果他们的硬件资源和配置不一致,要想让运行在一块板子上的BootLoader程序也能运行在另一块板子上,也还是需要作一些必要的修改。  通用BootLoader 综上所述,为嵌入式系统建立一个通用的BootLoader是很困难的; 尽管如此,我们仍然可以对BootLoader(尤其是基于同种Core的微处理器)归纳出一些通用的概念和设计思路,用来指导用户特定BootLoader的设计与实现。 1.1 BootLoader简介 (4) BootLoader安装媒介 系统加电或复位后,所有的CPU通常都从CPU制造商预先安排的地址上取指令。  举例说明 基于ARM7TDMI Core的嵌入式系统中,系统在上电或复位时是从0址开始取第一条指令执行,而在这个地址安排的通常就是系统的BootLoader程序。 嵌入式系统通常都有某种类型的固态存储设备(比如ROM、EPROM或FLASH等)被安排这个起始地址上用来存放BootLoader程序。  1.1 BootLoader简介 (5) BootLoader下载方式 1.1 BootLoader简介 (6) BootLoader启动过程 为了增加BootLoader的通用性和可移植性,本文把启动过程分为stagel和stage2两个阶段。 stage1阶段:执行的是用汇编语言来实现的依赖CPU体系结构的代码,这样可以提高系统的启动速度。 stage2阶段:完成的是OS内核启动前的准备工作,多采用处理能力强、可移植性好的C语言来实现。   最小启动代码 stage1阶段执行的代码,我们称之为最小启动代码。所谓最小启动代码是指为了完成系统(OS或用户应用程序)启动所必须的最少硬件的初始化程序。 1.3 μC/OS-II移植流程 2.2 编译器的选择 (2) 常用的ARM编译器 目前,比较流行的编译器有SDT、ADS、IAR、KEIL和GCC等,其中SDT和ADS均为ARM公司开发,ADS为SDT的升级版。     本移植采用的编译器 ADS1.2(ARM Developer Suite )集成开发环境。  2.3 工作状态的选择 ARM处理器工作状态 自从ARM7TDMI Core以后,体系结构中具有T变种的ARM处 理器核可以工作在以下两种状态。 ARM状态 ARM状态下执行字对准的32位ARM指令; Thumb状态 Thumb状态下执行半字对准的16位Thumb指令。 两种工作状态可以进行相互切换。  本移植采用的工作状态 本移植只实现?COS-II在ARM状态下工作。 2.4 工作模式的选择 (1) ARM处理器工作模式 2.4 工作模式的选择 (2) 特权模式 2.4 工作模式的选择 (3) 异常模式 3.操作系统移植 3.1 BootLoader总体流程图     3.2 BootLoader初始化步骤 (1) 3.2 BootLoader初始化步骤 (2) 3.2 BootLoader初始化步骤 (3) 3.2 BootLoader初始化步骤 (4) 3.2 BootLoader初始化步骤 (5) 3.2 BootLoader初始化步骤 (6) 3.2 BootLoader初始化步骤 (7) 3.3 编写最小启动代码 3.3 编写最小启动代码 知识点讲解 禁用看门狗定时器和屏
                您可能关注的文档
最近下载
- 2023年资料员资格考试题库答案下载.docx
 - 人教版小学语文四年级上册第二单元试卷及答案.pdf VIP
 - 安全与急救(四川警察学院)超星尔雅学习通网课章节测试答案.doc VIP
 - 铁总工电〔2018〕125号普速铁路桥隧建筑物修理规则.docx VIP
 - 煤岩复合体能量传递特性与动力灾害关联性.docx VIP
 - 高血压的危害及有效的降压方法.pptx VIP
 - 生涯发展报告.pdf VIP
 - 数学活动 月历中的奥秘及和为定值的两数积的规律 2025-2026学年人教版数学八年级上册.docx
 - 2026教育部教育技术与资源发展中心(中央电化教育馆)招聘3人(非事业编)笔试备考试题及答案解析.docx VIP
 - 弱电施工方案.doc VIP
 
原创力文档
                        

文档评论(0)