嵌入式系统的U-Boot移植分析.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《嵌入式系统的U-Boot移植分析.pdf》由会员分享,可在线阅读,更多相关《嵌入式系统的U-Boot移植分析.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 3 4卷第 2期 中国测试技术 2 0 0 8 年 3 月 C H I N A M E A S u R E ME N TT E S T I N G T E C HN O L O G Y V o L 3 4 No 2 Ma t 2 0 o 8 嵌入式系统的 U B o o t 移植分析 朱博 孙运 强(中北大学信息与通信工程学院,山西 太原 0 3 0 0 5 1)摘 要:U B o o t 软件是一款功能强大的嵌入式系统 B o o d o a d e r 开发工具,B oot l o a d e r 用来在启动时引导嵌入式系统,是进行嵌入式系统开发的基础。以 U P N E T A R
2、M3 0 0 0开发板为基础,结合移植的实践过程,分析了U B oot 移植到三 星$3 C 4 4 B 0 微处理器的详细操作。实验结果表明,移植的U B o o t 可以在目标板上成功运行。通过它可以与主机通过 串口通信,查看 目标板内存,进行操作系统内核及文件系统的烧写等。关键词:B o o fl o a d e r;U B o o t;嵌入式系统;移植;$3 C 4 4 B 0 中图分类号:T P 3 1 1 5 4;T P 3 1 1 5 2 文献标识码:A 文章编号:1 6 7 2-4 9 8 4(2 0 0 8)0 2 0 0 5 7 0 4 U-Bo o t t r an s
3、pl a nt a t i o n an a l ys e s f o r e mbe d de d s y s t e m Z HU Bo,S UN Yu n-q i a n g (S c h ool o f I n f o r ma ti o n a n d C o mm u n i c a ti o n E n g i n e e ri n g,N o a h U n i v e r s i t y o f C h i n a,T a i y u a n 0 3 0 0 5 1,C h i n a)Ab s t r a c t:U Bo o t s o f t w a r e wa s
4、i n t r o d u c e d fi r s tl y I t i s a p o we r f u l d e v e l o p i n g i n s t r u me n t o f B oo fl o a d e r i n e mb e d d e d s y s t e m An d B oo t l o a d e r i s u s e d f o r l o a d i n g t h e e mb e d d e d s y s t e m w h e n t h e s y s t e m i s s t a r t e d u p a n d i t i s
5、the fou n d a ti o n for d e v e l o p i n g e mb e d d e d s y s t e mT h e n,t a k i n g the up_NE T ARM3 0 0 0 d e v e l o p i n g b o a r d a s b a s i s,d e t a i l p r o c e d u r e s for tr a n s p l a n t i n g U Boot t o S a ms u n g S 3 C A t 4 B 0 mi c r o p r o c e s s o r we l-e a n a l
6、 y z e d wi th c o mb i n i n g t l l e p r a c ti c a l t r a n s p l a n t p r o c e s s T h e e x p e rime n t a l r e s u l ts i n d i c a t e t h a t t h e t r a n s p l a n t e d U-Bo o t c a n ru n o n the t a r g e t bo a r d s u c c e s s f u l l y I t c a n c o mmu n i c a t e wi th h o s
7、t b y s e r i a l p o rt,wa t c h t h e me mo r y o n tar g e t bo a r d,a n d wr i t e t h e k e r n e l o f o p e r a t i o n s y s t e m a n d fi l e s y s t e m Ke y wo r d s:B oo fl o a d e r;U Boo t;E mb e d d e d s y s t e m;T r a n s p l a n t a t i o n;$3 C 4 4 B 0 1 引 言 嵌入式系统是指用于执行独立功能的专用计
8、算 机系统。它以应用为中心,以微电子技术、控制技术、计算机技术和通信技术为基础,强调硬件软件的协 同性与整合性,软件与硬件可剪裁,以满足系统对功 能、成本、体积和功耗等要求。嵌入式技术是现今研 究应用的热点,广泛用于军事 国防、消费电子和工业 生产之 中。B o o t l o a d e r 是一 种引导加 载程序,是 系统加 电 后运行 的第一段软件代码。通过这段代码,我们可 以初始化 硬件设 备、建立 内存 空间的映射 图,从 而 将系统的软硬件环境带到一个合适的状态,以便 为最终调用操作系统内核准备好正确的环境。通 常,B o o t l o a d e r 是依赖于硬件而实现的,不同
9、的硬件 平台对应着不同的 B o o t l o a d e r,特别是在嵌入式系统 中更是如此。收稿 日期:2 0 0 7 0 8 2 3:收 到修 改稿 日期:2 0 0 7 1 1-0 9 作者简介:朱博(1 9 8 3 一),男,山东德州人,硕士研究生,专 业方向为嵌入式软件、嵌入式 L i n u x系统。2 U B o o t 简介 U B o o t 是由德国工程师 Wo lf g a n g D e n k 开发,遵循 G P L条款的开放源代码项 目,支持的处理器 构架有 P o w e r P C、A R M、M I P S、x 8 6等,支持 的操 作 系统有 L in
10、u x,V x Wo r k s 等,它专门用来开发嵌入式 系统的 B o o d o a d e r。U b o o t 功 能强大,可 以用来 实 现系统加载、内存操作、设备驱动、上电自检和交 互命令等。2 1 U B o o t目录结 构 U B o o t的源 代 码 可 以在 下 面 地 址 f t D:ti p d e n x d e p u b u b o o t 下载到,最新 版本 为 1 1 6。与 L i n u x内核源代码相似,它的源代码也是 b z i p 2 的压 缩格式,解压后其 目录结构如表 1 所示。2 2 U B o o t 启动流程 U B o o t 的
11、启动过程主要分 为两个 阶段,即 s t a g e 1和 s t a g e 2。s ta g e l 用汇编语言编写,通常是与 C P U的体系 结构有关,其代码在 c p u s 3 c 4 4 b 0 s t a r t S中实现,它 完成的主要操作有:维普资讯 http:/ 5 8 中国测试技术 2 0 0 8 年 3 月 表 l U B o o t 目录结构 目录文件内容 C pu Dr i v e I n c l u d e 与 目标板相 关文件,如 S D R AM,F L A S H等板上设备 独 立 于 处理 器 体 系 结构 的 代 码 与处理 器相关联的文件。包含 中断
12、。啐 口。以及 一些与处 理 器工作状 态有关的初始化操作 通 用驱动程序。如 网络、na s h等 头文件 c o n f i g目录下为和具体 目标板相关联 的一 些宏 定义,如 S DR A M,F L A S H 的起始地址、大小等。该 目录是 移植过程 中需要 经常改动的地 方 Li b_x x x 处理器体 系相关的文件 如 l i k _ p p e。l i b a r m 等 N e t 轰 晕 络 功 能 相 关 的 文 件,如 b o o tp 协 议 n f s ,fi tp 协 R t c R T C驱动程序 D i s k d i s k驱 动 的 分 区 处理 代
13、码 F s 支持文件 系统的相关文件 T o o l s 用于创建 U B o o t 的 S-r e c o r d和 b i n文件的工具 Do e 说 明 文 档(1)定义入 口;(2)设置异常向量;(3)设置 C P U的速度、时钟频率及 中断控制寄 存器;(4)初始化内存控制器;(5)将 R 0 M中的程序复制到 R A M中;(6)初始化堆栈;(7)转到 R A M 中执行,准备执行 s ta g e 2的 C 代码。s t a g e 2为 C语言编写,用来加载操作系统内核,具有可读性和可移植性,是 由 l i b _ a r m b o a r d c中的 s t a a r
14、mb o o t 函数来实现,该函数主要完成以下操作:(1)调用系列的初始化函数;(2)初始化 F l a s h 设备;(3)初始化系统内存分配函数;(4)目标系统有 NA N D fl a s h,则进行初始化:(5)初始化显示设备:(6)初始化相关网络设备;(7)进入命令模式,可以完成系统内核的烧写或 加载。3 目标板硬件配置 本文介绍的是移植 U B o o t 到 U P-N E T AR M3 0 0 0 开发板 上的方法,目标板采用 p,c L i n u x 操作 系统。U P N E T A R M 3 0 0 0 是由博创公司生产的嵌入式教学 科研实验系统,它基于 A R
15、M 7 T D M I 架构的三星$3 C 4 4 B 0微处理器。U P N E T A R M3 0 0 0开发板由核心模块和扩展模 块组成:核心模块:(1)基于 A R M 7 T D M I 架构的$3 C 4 4 B 0,工作频 率 6 0 MH z (2)2 MB N O R F l a s h A M2 9 L V1 6 0 D做 为引导 R0M(3)8 MB S D R A M H Y 5 7 V 6 4 1 6 2 O HG T 扩展模块:(1)1 6 MB N AN D F l a s h K 9 F 2 8 O 8 U O C (2)两个 R S 一 2 3 2接 口,一
16、个 U S B接 口 (3)1 4针和 2 O针 J T AG调试接 口 (4)基于 R T L 8 0 1 9 芯片的 1 0 M以太网接 口(5)3 2 O$2 4 O s T N彩色 L C D和触摸屏(6)1 7键键盘(7)8 个共 阴极 L E D (8)A D、D A等模块 目 标板上的存储分配地址为:N O R F l a s h地址:N A N D F l a s h地址:0 x O 2 0 o )O o o 一 0 x 0 3 S D R A M地 址:0 x 0 e 0 0 0 0 0 0-0 x 0 c 8 0 0 0 0 0 4 U B o o t 移植方法 在U B
17、o o t 移植操作开始前,需要进行移植条件 分析。首先对要移植的 目标板进行硬件分析,判定是 否满足移植条件。根据 目标板上 C P U、F l a s h、S D R A M 及其他外设的情况,在 b o a r d目录中,找出与目 标板 为相同或相同系列微处理器的开发板,以便在移植过 程中进行参考。根据对 U P N E T A R M 3 0 0 0 的硬件配 置进行分析,选定同样基于$3 C 4 4 B 0微处理器的 B 2 板做为参考对象,其相关文件在 b o a r d d a v e B 2目录 下。完成了上述准备工作,就可以开始进行 U B o o t 的移植,下文介绍移植过
18、程中的具体操作。4 1 建立 交叉编 译环境 在网上下载到U B o o t 1 1 6 的源代码后,要生 成可下载到目标板上的二进制可执行文件,需要在 主机上建立交叉编译环境。移植过程中,主机使用 L i n u x 操作系统,版本为 F C 5。交叉编译工具使用 U P N E T A R M 3 0 0 0开发板光盘中提供的 a r m e lf t o o l s 一 2 9 5 3 ta r b z 2,解压缩后可直接使用。为了验证交叉编译环境是否能有效编译 U B o o t,可以先对参考对象 B 2 板进行编译。编译前先修改 u b o o t 一 1 1 6目录下的 M a k
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 Boot 移植 分析
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内