- 1、本文档共60页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM11bootloader启动流程分析
ARM11 bootloader 启动流程分析
班级: 通 信 1106
学号:311109020623
姓名: 王 贵 林
目 录
1 前 言 1
2 ARM 技术概述 2
2.1 ARM以及处理器概述 2
2.1.1 ARM 简介 2
2.1.2 ARM11处理器简介 2
2.2 ARM微处理器体系结构 3
2.2.1 ARM处理器寄存器组 3
2.2.2 ARM处理器指令集 4
2.2.3 ARM处理器寻址方式 5
2.2.4 ARM11处理器工作模式 6
3 开发工具 7
3.1 软件工具 7
3.1.1虚拟机 7
3.1.2 redhat linux6 7
3.1.3交叉工具链 7
3.1.4 eclipse调试工具 7
3.1.5链接器脚本 7
3.1.6 Makefile工程管理器 7
3.2硬件工具 7
3.2.1 S3C6410开发板 7
3.2.2 Jlink模拟下载器 8
4 Bootloader 在s3c6410平台实现 9
4.1初始化流程 9
4.2初始化过程概述 9
4.2.1 6410启动方式 9
4.2.2 6410启动过程概述 10
4.2.3 iROM启动过程简介 11
4.3 BL1初始化阶段分析 12
4.3.1创建异常向量表及代码实现 12
4.3.2设置svc及代码实现 14
4.3.3关闭看门狗及代码实现 14
4.3.4关闭中断及代码实现 16
4.3.5关闭Cache和mmu及代码实现 17
4.3.6时钟终初始化及代码实现 19
4.3.7内存初始化及代码实现 27
4.3.8代码搬移及代码实现 42
4.3.9 C语言环境初始化及代码实现 43
结 论 45
致谢 46
参考文献 47
附录 48
1 前 言
随着中国市场经济的持续发展和人民生活水平的不断提高。智能家居,智能穿戴,物联网等一系列嵌入式产品逐渐进入家家户户。人们的日常生活离不开嵌入式产品,对嵌入式产品的需求持续增加。其中消费类电子产品,智能玩具,医疗器械等嵌入式产品,安全监控,自动控制等工业智能监控设备都强烈地刺激着市场。为落实软件增值税优惠政策,促进软件产业发展,财政部、国家税务总局联合下发了《关于嵌入式软件增值税政策的通知》的文件,也放宽了嵌入式软件政策。
嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪来适应系统对功能,可靠性,成本,体积,功耗严格要求的专用计算机系统,是将先进的计算机技术,半导体技术,电子技术和各行业的具体应用相结合的产物。
在嵌入式系统开发中,嵌入式软件是实现各种系统功能的关键。随着嵌入式系统实现的功能越来越强大,嵌入式软件的结构也越来越复杂,最终实现了嵌入式微处理器对操作系统的支持,使得整个嵌入式系统拥有了完整的架构。现在,
专门为嵌入式产品开发的各种操作系统层出不穷。譬如:VXWORD,WINDOWSCE,POCKETPC,μOSLinux等。
然而,对于嵌入式系统的硬件产品提供商而言,所面对的市场客户需求是千差万别的,千差万别的客户会根据自身的实际情况要求不同的操作系统,不同的引导加载(Bootloader)方式及不同的内核参数等等,若要求硬件开发商满足每个客户要求是不现实的。尤其对于开发板的引导加载程序(Bootloader),是嵌入式系统研发当在中最关键的部分,涉及到技术研发成本,技术机密等因素,并且基于国内ARM嵌入式市场的混乱现状和国家在这方面知识产权的模糊性,几乎所有的厂商、出于对自己商业利益的考虑,拒绝向用户提供整个Bootloader源码程序,仅提供编译好的二进制文件,并且在出厂前已经烧录进产品。因此,编写自己Boolloader意义重大,尤其是在未来的市场竞争中。更加体现个人能力与价值。Bootloader涉及核心芯片的初始化,以及芯片外围的初始化。本课程设计研究了异常向量表,设置svc,关闭看门狗,关闭中断,关闭mmu,始终初始化,内存初始化,代码搬移,栈初始化,Bss段初始化这些与核心芯片的初始化分析与代码实现。本设计具有较高的扩展性和灵活性,使ARM11 Bootloader开发人员不必每一次都重复写这些基础代码,可在这些接口上实现其它功能。提高了代码的复用性和扩展性。同时提高了自己编程能力和阅读文档的能力。
2 ARM 技术概述
2.1 ARM以及处理器概述
2.1.1 ARM 简介
ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以对一类微处理器的通称,还可以认为是一种技术的名字。
1991年11月ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM
文档评论(0)