




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、嵌入式专业系统设计实验告BootLoader移植实验合肥学院嵌入式系统设计实验报告(20 13 - 20 14第 2学期)专业: 实验项目: BootLoader 移植实验 实验时间: 2014 年 5 月 19 日实验成员: _ _指导老师: 电子信息与电气工程系2014年4月制实验三 BootLoader移植实验一、实验目的1、熟悉Bootloader工作原理。2、了解U-Boot的代码结构。3、掌握U-Boot移植过程。二、实验内容本实验熟悉Bootloader工作原理,了解U-Boot源码结构,基于S3C2440处理器,完成U-Boot移植,并在目标开发板上测试通过。三、实验设备硬件:
2、1、pc机 2、FriendlyARM开发套件即MIRCO2440核心板软件:1、虚拟机(VMware) 2、U-Boot源码()四、实验过程1、 Micro2440 配置在 mini2440/micro2440 上的移植准备工作,我们仍然将开发板文件建立在 board/samsung 下,2、 配置时出现错误,字体要修改,复制粘贴的时候出现的错误,有的地方有中文,去掉就行了。3、 编译完成失败,只有上网查找错误,最后解决了错误。11124、编译完成后将 下载到 SDRAM 的 0x33f80000 地址处,u-boot 已经能在 RAM 中运行。二、支持 DM90001、编译完成后将 下载到
3、 SDRAM 的 0x33f80000 地址处。 三、支持内核启动1、编译完成后将 下载到 SDRAM 的 0x33f80000 地址处。四、支持 Nand Flash1、编译完成后将 下载到 SDRAM 的 0x33f80000 地址处。五、实验小结本实验需要熟悉Bootloader工作原理,了解U-Boot源码结构,基于S3C2440处理器,完成U-Boot移植,并在目标开发板上测试通过,首先可以看到实验指导书上的介绍,了解U-Boot的移植。开始主要是利用U-Boot源码()进行配置,建立 Micro2440 配置、在 RAM 中运行、支持 DM9000、支持内核启动、支持 Nand F
4、lash、支持 yaffs 下载、支持 Nand Flash 启动等配置。 本次实验中虽然不要我们自己编写程序。但是对于初学者的我们还是有点难度的,主要是时间限制,所以实验都是在课下完成的。但是这样我们学习的更加深刻。有充足的时间去消化这些知识。当然我们也基本完成了主要的移植,学会了最基本的思想,希望接下来的实验我们仍然可以很好的完成。六、思考题1、Bootloader的结构分两部分,简述各部分的功能。(1)OEM startup code 这部分代码是在BootLoader中最先被执行的。它的主要功能是初始化最小范围的硬件设备,比如设置CPU工作频率、关闭看门狗、设置cache、设置RAM的
5、刷新率、填写内存控制寄存器(通知CPU有效的数据总线引脚数)等。由于系统刚刚启动,不适合使用复杂的高级语言,因此这部分代码主要由汇编程序完成。在汇编程序段设置完堆栈后,就跳转到C语言的Main函数入口(位于<PLATNAME>/eboot/); (2)Main code 这部分代码由C语言实现,是BLCOMMON代码的一部分,它可以用来执行比较复杂的操作。比如检测内存和Flash的有效性、检测外部设备接口、检测串口并且向已经连接的主机发送调试信息、通过串口等待命令、启动网络接口、建立内存映射等汇编无法完成的工作。2、ARM常用的Bootloader程序有哪些?简要说明。嵌入式Lin
6、ux系统中常用的Bootloader引导程序有U-Boot,redboot,blob和vivi等,其中U-Boot遵循GPL条款的开放源码项目,功能最为强大;U-Boot对PowerPC系列处理器支持最丰富,同时还支持MIPS,x86,ARM,Nios,XScale等诸多常用系列的处理器。1)U-Boot:全称Universal Boot Loader,是遵循GPL条款的开放源码项目。从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot源码就是相应的Linux内核源程序的简化,尤其是一些设备的驱动程序,这从U-Bo
7、ot源码的注释中能体现这一点。2)Redboot是在ECOS的基础上剥离出来的,继承了ECOS的简洁、轻巧、可灵活配置、稳定可靠等品质优点。它可以使用X-modem或Y-modem协议经由串口下载,也可以经由以太网口通过BOOTP/DHCP服务获得IP参数,使用TFTP方式下载程序映像文件,常用于调试支持和系统初始化(Flash下载更新和网络启动)。3)Blob功能比较齐全,代码较少,比较适合做修改移植,用来引导Liunx,目前大部分S3C44B0板都用Blob修改移植后来加载uClinux。4)vivi是韩国mizi 公司开发的bootloader, 适用于ARM9处理器。Vivi有两种工作
8、模式:启动加载模式和下载模式。启动加载模式可以在一段时间后(这个时间可更改)自行启动linux内核,这是vivi的默认模式。在下载模式下,vivi为用户提供一个命令行接口,通过接口可以使用vivi提供的一些命令3、简述u-boot的启动的两部分流程。从固态存储设备上启动的Boot Loader 大多都是2 阶段的启动过程,也即启动过程可以分为 stage1 和 stage2 两部分。在stage1 阶段,通常将完成以下工作(以执行的先后为顺序): 1. 硬件设备初始化,通常只初始化的最基本的设备,如内存控制器、串口等设备 2. 为加载 Boot Loader的 stage2 准备内存空间3. 复制Boot Loader 的stage2 到内存空间中 4. 设置堆栈 5. 跳转至 stage2 的入口点Boot Loader 的stage 2 通常包括以下步骤: 1. 初始化本阶段要使用到的硬件设备,如以太网、USB等 2. 检测系统内存的映射
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 1966年出版的哲学著作
- 120服务回访制度
- 50而知天命的话语
- mg的铁和ng的氧气充分反应生成四氧化三铁的质量
- 课程模式创新与实验计划
- 学习方法社团的经验交流计划
- 设立公司财务内部控制机制的计划
- 上游供应商对仓库管理的影响计划
- 小小艺术家培养幼儿艺术欣赏能力的计划
- 八年级物理上册 1.4学生实验:测量速度教学实录 北京课改版
- BOSCH共轨喷油器维修基本知识摘要
- 2024年上海高考数学真题试题(原卷版+含解析)
- 蜀道难全文注音版
- 《电位的计算》教案
- 月子中心护理部护理档案模板
- 房地产 -旭辉第五代住宅产品手册 H系全产品结构及标准化体系-(上)
- 2024年湖南省中考英语试题卷(含答案)
- 文档-火灾报警器中英文文献翻译-基于单片机的火灾探测和监控系统-单片机
- 胃镜室应急预案和流程
- 2019年10月自考03706思想道德修养与法律基础试题及答案含解析
- 贷款审批通知书
评论
0/150
提交评论