基于Mpc823e的bootloader分析和实现
赵红洲 潘西明
(江西财经职业学院计算机系, 九江 332000)
摘要:在嵌入式系统上编写引导程序的例子。其平台基于Motorola公司的Powerpc823e处理芯片,采用Linux内核做为它的微型操作系统。分析嵌入式系统在Linux下的引导程序工作流程,并以开发的系统为例,介绍如何根据特定的主板与CPU来开发适合自己的引导程序。 关键词:嵌入式系统;引导程序;处理芯片
中图分类号: TP316.8 文献标识码: A
How To Write the Ppcboot on Embedded Linux OS
ZhaoHongZhou PanXiMing
(Computer Department,JiangXi Vocational College of Economic and Finance, Jiujiang 332000) Abstract: This paper discusses about how to write the ppcboot on embedded equipment,which is on the base of a Motorola’s Powerpc823e CPU.The article introduces the working process of ppcboot,and presents the way to modify ppcboot apt to the system .
Key Words: Embedded Linux ;ppcboot;Mpc823e
0 引言
在嵌入式系统中,当cpu启动起来后,首先会在预先设置的地址上执行引导程序,用来
加载和启动系统。通过引导程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。引导程序与硬件紧密结合,不同处理芯片体系,不同主板设计,对应不同的引导程序。本系统采用ppcboot作为引导程序。ppcboot的功能强大,而且代码公开。一般来说,它可以分为两部分:与硬件相关的代码,与硬件无关的代码。在设计时,可以先从其官方网站下载完整的代码,然后根据自己系统的特点,对与硬件相关代码部分进行修改,最后进行编译,烧入Flash。接下来,将对ppcboot的工作流程和具体的修改过程进行讨论
1 ppcboot工作流程
作为ppc体系的引导程序ppcboot上电后,将完成初始化硬件设备,建立内存映射, 启
动系统内核三个任务。
初始化硬件设备:
系统上电复位后,CPU首先从Flash 的0x100处执行第一条指令。该指令跳转到具体
地址后,开始执行部分初始化和真正初始化前的准备工作:屏蔽所有的中断,设置CPU的速度和时钟频率,禁止cache、禁止地址转换等等。
在这个阶段中,执行空间始终在Flash,功能通常都用汇编语言来实现。之后,系统开
始建立内存映射。
建立内存映射:
(1)设置系统的内存控制器的功能寄存器以及各内存库控制寄存器等,使CPU能够正常运行起来并执行C语言程序,并且为下一步加载引导程序,准备RAM空间。
(2)引导程序重新定位执行空间,ppcboot代码从flash拷贝到内存,开始在内存中执行。
(3)再次初始化部分硬件设备,并检测系统内存映射,知道 CPU 预留的全部 RAM 地址
4510bootloader代码分析 暂无评价 5页 1下载券 基于Mpc823e的bootloade... ...在这篇文档 里,我将结合源代码介绍一下 4510 Bootloader 的实现和分析。源代码...
图 4 所示: 《微计算机信息》 (嵌入式与 S OC )2009 年第 25 卷第 12-2 期 参考文献 [1]赵红洲,潘西明.基于 Mpc823e 的 bootloader 的分析和实现[J]...
内核分析 介绍基于MC9328MX1ADS开发系统的BootLoader的...MPC823e是一款高度综合的片上系统(SOC) 典型的嵌入...指针线性 寻址较多的智能算法实现 主要应用于带有智能...
Motorola_Power PC MPC823e 是高度综合的片上 (SOC...BootLoader引导程序 引导程序是完成嵌入式系统启动后的... 与计算机处理器不同的是 相关的功能硬件以实现嵌入...
? ? ? ? 一个硅片上实现一个复杂的系统; SOC可...Motorola MPC823e(SOC)等等 ? ? 3. x86 ? x86...3. I/O设备:– LED、CRT、LCD等 BootLoader ? ...
图 4 所示: 《微计算机信息》 (嵌入式与 S OC )2009 年第 25 卷第 12-2 期 参考文献 [1]赵红洲,潘西明.基于 Mpc823e 的 bootloader 的分析和实现[J]...

我要评论