嵌入式复习提纲
文章目录
- 嵌入式复习提纲
- 考试详情
- 第1章 嵌入式系统概述
-
- 1.1 什么是嵌入式系统
- 1.2 嵌入式处理器
-
- 性能指标*
- 分类*
- 1.3 嵌入式操作系统
-
- 特点*
- 常见的嵌入式实时操作系统*
- 第2章
-
- 2.1 ARM简介
-
- 2.1.1 精简指令集计算机(RISC)*
- 科普拓展(可忽略此段)
- 2.1.2 常用ARM处理器*
- 2.2 ARM7TDMI
-
- 2.2.1 后缀字母意义*(此段考简答)
- 2.2.2 三级流水线*
- 2.3 ARM功能框图
- 2.4 ARM处理器的状态*(必考,重点强调)
- 2.5 ARM处理器模式*(必考,可能简答)
- 2.6 ARM内部寄存器
-
- 2.6.1ARM状态下的五个重要寄存器*
- 2.7 CPSR-当前程序状态寄存器*
-
- 2.7.1CSPR寄存器的格式
- 2.8 异常优先级*
-
- 异常优先级*
- 第三章
- 第四章
-
- 4.1 LPC2000系列ARM简介
-
- 特性*(必考)
- 4.3系统启动代码介绍
-
- 4.3.1Bootloader*
- 4.4 系统控制模块
-
- 4.4.2时钟系统
- 4.4.3 晶体振荡器
- 4.4.4 复位
- 4.4.5 唤醒时钟
- 4.4.6 锁相环PLL
-
- 4.4.6.2.频率计算
- 4.4.6.3确定PLL设定过程
- 4.4.6.4PLL设置举例:*
- 4.4.6.5寄存器描述:
- 4.4.7 VPB分频器
-
- 4.4.7.1VPB设置示例:*
- 4.5 存储器
- 4.7 引脚连接模块
-
- 4.7.1 PINSEL寄存器
- 4.7.2PINSEL应用示例**
- 4.8 GPIO
-
- 4.8.2 GPIO寄存器
- 4.8.3 GPIO使用注意事项
- 4.8.4GPIO相关寄存器描述
- 4.8.5 GPIO应用示例(程序题)***
-
- 4.8.5.3按键控制蜂鸣器,(可能程序题)***
- 4.9 中断向量控制器
-
- 4.9.1 中断分类:
- 4.9.2 VIC寄存器描述
- 4.9.3 中断处理
- 4.11定时器0和定时器1
-
- 4.11.1定时器方框图
- 4.12SPI接口
-
- 4.12.2SPI总线配置
- 4.13 I^2^C接口
-
- 4.13.1 I^2^C总线上的位传输
- 4.14 UART
- 4.15 A/D转换器
- 4.16 看门狗(可能出简答)
-
-
- 看门狗示例程序
-
- 第五章
-
- 5.1最小系统
-
- 5.1.1框图
- 5.1.6完整的最小系统
- 六、最后附上考试可能考的程序题***
考试详情
- 时间:6月6日13:30-15:30
- 地点:1A205
题型 | 数量 | 范围 |
---|---|---|
选择题 | 10X2’ - | |
填空题 | 20X1’ | - |
判断题 | don’t know | - |
简答题 | 4X5’ | - |
程序题 | 12’+8’ | - |
第1章 嵌入式系统概述
-本章主要考小题
1.1 什么是嵌入式系统
- 概念:
嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,嵌入式系统是用来控制或者监视机器、装置、工厂等大规模设备的系统。- 从技术的角度定义:
以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 - 从系统的角度定义:
嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。嵌入的系统中可以共存多个嵌入式系统
- 从技术的角度定义:
-
与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。嵌入式系统通常进行大量生产,所以单个的成本节约,能够随着产量进行成百上千的放大
1.2 嵌入式处理器
性能指标*
-P4页
- 四个指标
- 尺寸
- 能耗
- 价格
- 性能
分为以下几类:
- 注重嵌入式处理器的尺寸、能耗和价格
应用于PDA等不注重计算的设备; - 注重嵌入式处理器的性能
应用于路由器等计算密集型的设备; - 注重嵌入式处理器的性能、尺寸、能耗和价格
应用于蜂窝电话等设备;
分类*
-P5页
-
嵌入式微处理器 EMPU——————(Embedded Microprocessor Unit)
嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点,但是在电路板上必须包括ROM、RAM、总线接口、各种外设等器件,从而降低了系统的可靠性,技术保密性也较差。嵌入式微处理器及其存储器、总线、外设等安装在一块电路板上,称为单板计算机 -
微控制器(单片机) MCU—————(Microcontroller Unit)
嵌入式微控制器又称单片机,它是将整个计算机系统集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成各种必要功能和外设。
和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称微控制器。 -
DSP处理器 DSP—————————(digital Signal Processor)
DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。 -
片上系统 SoC——————————(System on Chip)
在一个硅片上实现一个更为复杂的系统,这就是System On Chip(SOC)。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。
SoC可以分为通用和专用两类。
注:了解各自的适用范围与区别
1.3 嵌入式操作系统
-
发展史概述
计算机系统由硬件和软件组成,在发展初期没有操作系统这个概念,用户使用监控程序来使用计算机。随着计算机技术的发展,计算机系统的硬件、软件资源也愈来愈丰富,监控程序已不能适应计算机应用的要求。于是在六十年代中期监控程序又进一步发展形成了操作系统(Operating System)。发展到现在,广泛使用的有三种操作系统即多道批处理操作系统、分时操作系统以及实时操作系统。 -
嵌入式操作系统采用实时操作系统
-
操作系统分类:
- 多道批处理操作系统:
适用于计算中心等较大的计算机 - 分时操作系统:
适用于多个用户共享系统资源 - 实时操作系统:
实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。
用于嵌入式设备和有实时性要求的系统中,分为两类:- 一般实时操作系统:
应用于实时处理系统的上位机和实时查询系统等实时性较弱的实时系统,并且提供了开发、调试、运用一致的环境。 - 嵌入式实时操作系统
应用于实时性要求高的实时控制系统,而且应用程序的开发过程是通过交叉开发来完成的,即开发环境与运行环境是不一致。嵌入式实时操作系统具有规模小(一般在几K~几十K 内)、可固化使用实时性强(在毫秒或微秒数量级上)的特点 。
- 一般实时操作系统:
- 多道批处理操作系统:
备注:
实时操作系统强调实时性、可靠性、灵活性
特点*
-P7页 ppt P20页
- 异步的事件响应
- 切换时间和中断延迟时间确定
- 优先级中断和调度
- 抢占式调度
- 内存锁定
- 连续文件
- 同步
常见的嵌入式实时操作系统*
-P11 ppt P35(目测选择题)
- μClinux
uClinux从Linux 2.0/2.4内核派生而来,沿袭了主流Linux的绝大部分特性。它是专门针对没有MMU的CPU,并且为嵌入式系统做了许多小型化的工作。适用于没有虚拟内存或内存管理单元(MMU)的处理器,例如ARM7TDMI。它通常用于具有很少内存或Flash的嵌入式系统。它保留了Linux的大部分优点:稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持、以及标准丰富的API等。 - Windows CE
Windows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作,它是精简的Windows 95。Windows CE的图形用户界面相当出色。Win CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。 - VxWorks
VxWorks操作系统是美国WIND RIVER(风河)公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。 - μC/OS - Ⅱ
μC/OS-II是一个源码公开、可移植、可固化、可裁剪、占先式的实时多任务操作系统。其绝大部分源码是用ANSI C(由美国国家标准协会(ANSI)及国际标准化组织(ISO)推出的关于C语言的标准)写的,使其可以方便的移植并支持大多数类型的处理器。
注: 注意了解各自的优缺点,通读留个印象
第2章
-简答题X3,小题
2.1 ARM简介
- ARM:Advanced RISC Machines
- 它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。
- 公司的特点是只设计芯片,而不生产和向终端用户出售芯片。它将技术授权给世界上许多著名的半导体、软件和OEM厂商,通过转让设计方案让合作商生成各具特色的芯片,提供服务。
2.1.1 精简指令集计算机(RISC)*
-P16页,了解特性
- RISC结构特性
- 具有大量的通用存储器
- 独特的装载/保存(load-store)结构
- 简单的寻址模式
- 统一和固定长度的指令格式
- ARM体系其他特性(阅读、了解)
科普拓展(可忽略此段)
个人科普用,老师只要求了解这两个名词,并且大头考RISC,此段可以忽略
- 名词解释
CISC(复杂指令集计算机)和RISC(精简指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。 - 区别
- 指令系统:
- RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。因此,在RISC机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。
- 而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。因此,处理特殊任务效率较高。
- 存储器操作:
- RISC对存储器操作有限制,使控制简单化;
- 而CISC机器的存储器操作指令多,操作直接。
- 程序:
- RISC汇编语言程序一般需要较大的内存空间,实现特殊功能时程序复杂,不易设计;
- 而CISC汇编语言程序编程相对简单,科学计算及复杂操作的程序设计相对容易,效率较高。
- 中断:
- RISC机器在一条指令执行的适当地方可以响应中断;
- 而CISC机器是在一条指令执行结束后响应中断。
- CPU:
- RISC CPU包含有较少的单元电路,因而面积小、功耗低;
- 而CISC CPU包含有丰富的电路单元,因而功能强、面积大、功耗大。
- 设计周期:
- RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;
- CISC微处理器结构复杂,设计周期长。
- 用户使用:
- RISC微处理器结构简单,指令规整,性能容易把握,易学易用;
- CISC微处理器结构复杂,功能强大,实现特殊功能容易。
- 应用范围:
- 由于RISC指令系统的确定与特定的应用领域有关,故RISC机器更适合于专用机;
- 而CISC机器则更适合于通用机。
- 指令系统:
2.1.2 常用ARM处理器*
-P17,老师重点提到下面两个
-
Cortex-M3处理器
该处理器是首款基于ARMv7-M架构的处理器,采用了纯Thumb2指令的执行方式,具有极高的运算能力和中断响应能力。
Cortex-M3主要应用于汽车车身系统,工业控制系统和无线网络等对功耗和成本敏感的嵌入式应用领域- STM32采用该处理器
- 3级流水线
- 纯Thumb2指令执行方式
- 具有极高的运算能力和中断相应能力
- 主要应用于汽车车身系统,工业控制系统和无线网络
- 对功耗和成本敏感的嵌入式应用领域
-
ARM7(系列)
该系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S。该系列处理器提供Thumb 16位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设计中。
ARM7系列广泛应用于多媒体和嵌入式设备,包括Internet设备、网络和调制解调器设备,以及移动电话、PDA等无线设备。- 3级流水线
- 冯·诺伊曼结构
- 包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S
2.2 ARM7TDMI
- 简介:
ARM7TDMI是基于ARM体系结构V4版本的低端ARM核。 其弥补了ARM6很难在低于5V电压下稳定工作的不足,还增加了后缀所对应的功能:
2.2.1 后缀字母意义*(此段考简答)
ppt P17页
字母 | 全写 | 意义 |
---|---|---|
T | Thumb | 支持高密度16位的Thumb指令集 |
D | Debug | 支持片上调试 |
M | Multiplier | 支持64位乘法,内嵌硬件乘法器 |
I | 嵌入式ICE | 支持EmbededICE观察硬件;仿真功能模块,支持片上断点和调试点。 |
S | synthesizable | ARM7TDMI 的可综合(synthesizable)版本(软核),对应用工程师来说其编程模型与ARM7TDMI 一致 |
2.2.2 三级流水线*
书P20 ppt P20页,了解三个动作及作用、有点,可能考简答或填空
- 概念:
ARM处理器使用流水线来增加处理器指令流的速度,这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速度。ARM7TDMI的流水线分3级,分别为:- 取指:从存储器取出一条指令
- 译码:对指令使用的寄存器经行译码
- 执行:
从寄存器组中读出寄存器
执行移位和ALU操作
寄存器写回到寄存器组
正常操作过程中,在执行一条指令的同时对下一条(第二条)指令进行译码,并将第三条指令从存储器中取出。
无论处理器处于何种状态,程序计数器R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或者正在“译码”的指令。
- 在ARM状态下,流水线上各指令的地址为:
- 在Thumb状态下,流水线上各指令的地址为:
- 例题pptP20页
0x4000 ADDPC,PC,#4 ;正在被执行的指令,将地址值PC+4写入PC
0x4004 …;正在被译码的指令
0x4008 …;正在被取指的指令,PC=0x4008
0x400C …;PC+4=0x400C
解:
- 程序计数器R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或“正在译码”的指令。
- 一般来说,人们习惯性约定将“正在执行”的指令作为参考点,则:
PC值=当前程序执行位置+8
注:ARM状态时,每条指令为4字节长。 - PC指向0x4000地址,取指ADD指令。
- PC指向0x4004地址,译码ADD指令。
- PC指向0x4008地址,执行ADD指令,所以指令执行的结果为: PC=PC+4=0x4008+4=0x400C。
其他参照ppt与书
2.3 ARM功能框图
-P23页 ppt P24页,可以忽略具体管脚名,主要记住周围的功能与接口,最可能的考法是对着图片填空
2.4 ARM处理器的状态*(必考,重点强调)
-P24页 ppt P28页
- 两套指令系统————为了让用户更好的控制代码量
- ARM状态(T=0)
- 32位(两套系统位长区别)
- ARM指令集
- 能执行完整功能
- 处理器执行字方式的ARM指令
- 处理器在系统上电时默认ARM状态
- Thumb状态(T=1)
- 16位
- Thumb指令集
- 能执行大部分功能
- 处理器执行半字方式的ARM指令
- ARM状态(T=0)
两个状态之间的切换并不影响处理器模式或寄存器内容。
注:不考状态切换相关知识,T是CPSR的一个控制位,注意结合下文看,CPSR也是必考点
2.5 ARM处理器模式*(必考,可能简答)
- 简介:
ARM体系结构支持7种处理器模式,分别为:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。这样的好处是可以更好的支持操作系统并提高工作效率。ARM7TDMI完全支持这七种模式。
此处可结合异常优先级以及下面的ARM内部寄存图表理解记忆。
2.6 ARM内部寄存器
- 共有37个用户可访问的32位寄存器
-
31个通用32位寄存器
- 寄存器R0~R7为未分组的通用寄存器,它们在任何处理器模式都对应于相同的32位物理寄存器。
- 寄存器R8~R12有两个分组的物理寄存器。一个用于除FIQ模式之外的所有寄存器模式,另一个用于FIQ模式。
在发生FIQ中断后,处理器不必为保护寄存器而浪费时间,从而加速了FIQ的处理速度。
-
6个32位状态寄存器(目前均只使用了其中的12位)
寄存器R13、R14分别有6个分组的物理寄存器。1个用于用户和系统模式,其余5个分别用于5种异常模式。-
寄存器R13通常作为堆栈指针(SP),用于保存待使用的寄存器的内容。
-
寄存器R14称为链接寄存器(LR),在结构上有两个特殊功能:
- 当使用BL指令调用子程序时,返回地址将自动存入R14中;
- 当发生异常时,将R14对应的异常模式版本设置为异常返回地址(有些异常有一个小的固定偏移量)。
-
寄存器R15称为程序计数器(PC),它指向正在“取指”的指令。
-
-
-
2.6.1ARM状态下的五个重要寄存器*
- R13(堆栈指针SP)
- R14(链接寄存器LR)
- R15(程序计数器PC)
- CPSR(当前程序状态寄存器)
- SPSR(备份程序状态寄存器)
上下文有介绍
-P28页 ppt P34页
- R13拓展
由于处理器的每种运行模式均有自己独立的物理寄存器R13,在用户应用程序的初始化部分,一般都要初始化每种模式下的R13,使其指向该运行模式的栈空间。这样,当程序的运行进入异常模式时,可以将需要保护的寄存器放入R13所指向的堆栈,而当程序从异常模式返回时,则从对应的堆栈中恢复,采用这种方式可以保证异常发生后程序的正常执行。 - R14拓展:
异常的发生会导致程序正常运行的被打断,并将控制流转移到相应的异常处理(异常响应),有些异常(fiq、irq)事件处理后,系统还希望能回到当初异常发生时被打断的源程序断点处继续完成源程序的执行(异常返回),这就需要一种解决方案,用于记录源程序的断点位置,以便正确的异常返回。类似的还有子程序的调用和返回。在主程序中(通过子程序调用指令)调用子程序时,也需要记录下主程序中的调用点位置,以便将来的子程序的返回。
在ARM处理器中使用 R14实现对断点和调用点的记录,即使用R14用作返回连接寄存器(LR )。在硬件上和指令执行上,CPU 自动完成相应返回点的记录。在ARM 汇编语言程序设计时,R14和LR通用。
ARM处理器响应异常时,会自动完成将当前的PC保存到LR寄存器。
ARM处理器执行子程序调用指令(BL )时,会自动完成将当前的PC的值减去4的结果数据保存到LR寄存器。即将调用指令的下紧邻指令的地址保存到LR。
-R15
它指向正在“取指”的指令,由于ARM体系结构采用了多级流水线技术,对于ARM指令集而言,PC总是指向当前正在执行指令的下两条指令的地址,即PC的值为当前指令的地址值加8个字节程序状态寄存器。
注:记住每个寄存器是做什么的以及各个位的含义(CPSR)
2.7 CPSR-当前程序状态寄存器*
书 p36 ppt P43
-
简介
CPSR(当前程序状态寄存器)在任何处理器模式下被访问。它包含了条件标志位、中断禁止位、当前处理器模式标志以及其他的一些控制和状态位。每一种处理器模式下都有一个专用的物理状态寄存器,称为SPSR(备份程序状态寄存器)。当特定的异常中断发生时,这个寄存器用于存放当前程序状态寄存器的内容。
在异常中断退出时,可以用SPSR来恢复CPSR。由于用户模式和系统模式不是异常中断模式,所以他没有SPSR。当用户在用户模式或系统模式访问SPSR,将产生不可预知的后果。
ARM内核包含1个CPSR和5个仅供异常处理程序使用的SPSR。ARM的所有模式共享一个CPSR。CPSR反映当前处理器的状态,其包含:- 4位条件代码标志
- 4个条件代码标志(负标志N、零标志Z、进位标志C和溢出标志V );
- 8位控制位
- 2个中断禁止位(IRQ禁止与FIQ禁止);
- 5个对当前处理器模式进行编码的位(M[4:0]);
- 1个用于指示当前执行指令的位(ARM指令还是Thumb指令)。
- 保留位
- CPSR中的保留位被保留将来使用。当改变CPSR标志和控制位时,请确认没有改变这些保留位。
- 另外,请确保您的程序不依赖于包含特定值的保留位,因为将来的处理器可能会将这些位设置为1或者0。
- 4位条件代码标志
-
2.7.1CSPR寄存器的格式
助记:
字符 | 释义 | value |
---|---|---|
N | nagetive | 负或小于 |
Z | Zero | 零 |
C | Carry | 进位或借位拓展 |
V | oVerflow | 溢出标志 |
记住CPSR每个位的作用,老师强调过,可能简答或填空,可参照ppt P44页往后详细了解
2.8 异常优先级*
-P41页 ppt P49页 记住异常优先级
- 简介
只要正常的程序流被暂时中止,处理器就进入异常模式。例如在用户模式下执行程序时,当外设向处理器内核发出中断请求导致内核从用户模式切换到异常中断模式。
如果同时发生两个或更多异常,那么将按照固定的顺序来处理异常。 -
异常优先级*
当多个异常同时发生时,一个固定的优先级决定系统处理它们的顺序。
- 用户希望发生的中断:
FIQ、IRQ、软中断 - 用户不希望发生的中断:
复位、
数据中止、预取指中止、未定义指令中止
第三章
不考
第四章
-4.3-4.6 了解即可
-4.7-4.16 重点
4.1 LPC2000系列ARM简介
- 简介
conversion toolLPC2000系列微控制器基于ARM7TDMI-S CPU内核。支持ARM和Thumb指令集,芯片内集成丰富外设,而且具有非常低的功率消耗。使该系列微控制器特别适用于工业控制、医疗系统、访问控制和POS机等场合。
特性*(必考)
P88页看一看
P89页的特性:
- 片内Boot装载程序实现在系统编程(ISP)和在应用中编程(IAP)
- 4/8(64/144脚封装)10位A/D转换器,转换时间低至2.44ms
- 多个串行接口,包括2个UART、高速I2Cj接口(400kb/s)和2个SPI接口
- 通过片内PLL可实现最大为60MHz的CPU操作频率*
- 晶振频率范围为1-30Hz,若使用PLL或ISP功能,则为10-25MHz*
- 46个(64脚封装)或112个(144脚封装)通用I/O口(可承受5V电压)
- 2个低功耗模式:空闲和掉电
- 双电源:
- CPU操作电压范围1.65~1.95V(1.8V,±8.3%)
- I/O操作电压范围为3.0~3.6v(3.3V,±10%)
4.3系统启动代码介绍
-P112页,老师由此引入一个Bootloader的概念、记住你认为有用的
4.3.1Bootloader*
- 定义:
在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序)&