嵌入式期末复习提纲Word文档下载推荐.docx
《嵌入式期末复习提纲Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《嵌入式期末复习提纲Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
即使你不在家里,也可以通过电话线、网络进行远程控制。
在这些设备中,嵌入式系统将大有用武之地。
4.家庭智能管理系统:
水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。
目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
第二章:
1.嵌入式处理器有哪几类?
简述各类嵌入式处理器的主要特点和应用领域。
(P6)
嵌入式微控制器、嵌入式微处理器、嵌入式DSP、嵌入式片上系统。
(1)嵌入式微处理器集成处理器内核,存储管理器高速缓存芯片,存在体积小、重量轻、成本低和可靠性高等特点,其又称为单板机。
(2)嵌入式微控制器是集成了微处理器、存储器和片内外设芯片称为微控制器,片上外设资源丰富适合于控制单片化、体积小、功耗低、成本低等特点。
(3)嵌入式DSP专门用于信号处理的嵌入式芯片,适合执行DSP算法,能够对离散信号进行集化处理,提高速度。
(4)嵌入式片上系统SOC软硬件的无缝结合,直接在处理器片内嵌入操作系统的代码模块,在单个芯片上实整个系统的功能
2.简单说明ARM7TDMI的含义。
(P7)
ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器核。
TDMI的基本含义为:
T:
支持16为压缩指令集Thumb;
D:
支持片上Debug;
M:
内嵌硬件乘法器(Multiplier)
I:
嵌入式ICE,支持片上断点和调试点;
3.选择ARM处理器时需要考虑哪些问题?
(P34-P35)
4.ARM处理器总共有多少个通用寄存器?
这些通用寄存器的组成结构是什么样的?
这些寄存器按其在用户编程中的功能是如何划分的?
特殊寄存器有哪些?
他们的作用分别是什么?
(P39-P40)
ARM微处理器共有37个32位的寄存器,其中31个为通用寄存器,6个为状态寄存器。
31个通用寄存器根据其编程特点可分为如下几种类型:
a.不分组寄存器R0-R7,为所有模式共享;
b.分组寄存器R8-R12,R8_fiq-R12_fiq,FIQ模式下的寄存器,R8-R12,其它模式共享
c.分组寄存器R13-R14分为6组,用户、系统一组,其他每种模式一组:
R13_<
mode>
通常用作堆栈指针SP,R14_<
通常用作子程序链接寄存器,当进入子程序时,常用来保存PC的返回值其中,mode为以下几种模式之一:
usr、fiq、irq、svc、abt、und。
d.程序寄存器R15(PC),为所有模式共享
6个状态寄存器:
一个CPSR当前程序状态寄存器,保存当前程序状态。
五个程序状态备份寄存器SPSR(svc,abt,und,irq,frq),只有在异常模式下,才能被访问,各异常模式都拥有属于自己的SPSR,当发生异常时,SPSR用来保存CPSR的值,从异常退出时则可由SPSR来恢复CPSR。
5.CPSR各状态位的作用是什么?
如何进行操作,以改变各状态位?
(P40-P41)
CPSR可在任何运行模式下被访问,它包含条件码标志位、中断禁止位、当前处理器模式标志位,以及其他一些相关的控制和状态位。
条件码标志位:
N:
当用两个补码表示的带符号数进行运算时,N=1表示运算的结果为负数;
N=0
表示运算的结果为正数或零;
Z:
Z=1
表示运算的结果为零;
Z=0表示运算的结果为非零;
C:
①加法(包括比较指令CMN)运算结果产生进位时(无符号数溢出),C=1,否则C=0。
②
减法(包括比较指令CMP)运算产生借位(无符号数溢出),C=0,否则C=1。
③
对于包含移位操作的非加/减运算指令,C为移出值的最后一位。
V:
①对于加/减法运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出。
CPSR的低8位(包括I、F、T和M[4:
0])称为控制位,当发生异常时这些位可以被改变。
状态寄存器(PSR)中的其余位为保留位,当改变PSR中的条件码标志位或者控制位时,保留位不要被改变,在程序中也不要使用保留位
来存储数据。
6.试述ARM处理器对异常中断的响应过程。
ARM处理器对异常中断的响应过程如下所述:
①保存处理器当前状态、中断屏蔽位以及各条件标志位;
②设置当前程序状态寄存器CPSR中的相应位;
③将寄存器lr_mode设置成返回地址;
④将程序计数器值PC,设置成该异常中断的中断向量地址,跳转到相应异常中断处执行。
7.ARM指令的寻址方式有哪几种?
试分别叙述其各自的特点并举例说明。
(P36-P38)
8.ARM指令系统中对字节、半字、字的存取是如何实现的?
(P37)
Byte:
字节,8位
Halfword:
半字,16位
Word:
字,32位
9.课后习题2-13,2-14要掌握,包括上课讲过的常用指令。
10.采用RISC架构的ARM微处理器一般具有什么特点?
1、体积小、低功耗、低成本、高性能。
2、支持Thumb(16位)/ARNI(32位)双指令集,能很好的兼容8位/16位器件。
3、大量使用寄存器,指令执行速度更快。
4、大多数数据操作都在寄存器中完成。
5、寻址方式灵活简单,执行效率高。
6、指令长度固定。
11.ARM7和ARM9分别是几级流水线?
流水线的概念以及简述三级流水线分为哪三级?
(P35-P36)
12.简述ARM体系结构的T变种,M变种和E变种。
(P32)
13.ARM处理器支持哪些数据类型,分别是多少位?
12.ARM处理器有几种处理器模式?
ARM处理器有哪两种特殊的工作状态?
(P38-P39)
ARM有7种处理器模式。
用户模式:
正常程序运行的工作模式,不能直接从用户模式切换到其它模式
系统模式:
用于支持操作系统的特权任务等,可以直接切换到其它模式
快中断模式:
用于快速中断处理,支持高速数据传输及通道处理,只有在FIQ异常响应时,
才进入此模式。
中断模式:
用于通用中断处理,只有在IRQ异常响应时,才进入此模式。
管理模式:
供操作系统使用的一种保护模式,只有在系统复位和软件中断响应时,才进入
此模式。
中止模式:
用于虚拟内存和/或存储器保护。
未定义模式:
支持软件仿真的硬件协处理器,只有在未定义指令异常响应时,才进入此模式。
15.ARM存储器系统的存储格式分为哪两种?
课本图2-13,2-14要求熟练掌握。
(P43-P44)
ARM存储器有大端格式和小端。
大端格式中,字数据的高字节存储在低地址中,而字
数据的低字节则存放在高地址中;
小端格式则相反。
16.ARM寻址方式中涉及的指令都要求掌握。
17.ARM指令格式、ARM存储器访问指令、ARM数据处理指令、ARM分支指令,课堂上讲过的都要掌握。
18.试写出ARM汇编语言的语句格式及其注意事项。
(P74)
19.在ARM汇编语言编程中如何进行子程序调用及其返回?
在ARM汇编语言程序中,子程序的调用一般是通过BL指令来实现的。
在程序中,使用指令:
BL子程序名如(BLPRINT_TEXT)即可完成子程序的调用。
该指令在执行时完成如下操作:
将子程序的返回地址存放在连接寄存器LR中,同时将程序计器PC指向子程序的入口点,当子程序执行完毕需要返回调用处时,只需要将存放在LR中的返回地址重新拷贝给程序计数器PC即可。
在调用子程序的同时,也可以完成参数的传递和从子程序回运算的结果,通常可以使用寄存器R0~R3完成。
以下是使用BL指令调用子程序的汇编语言源程序的基本结构:
AREAInit,CODE,READONLY
ENTRY
Start
LDRR0,=0x3FF5000
LDRR1,0xFF
STRR1,[R0]
LDRR0,=0x3FF5008
LDRR1,0x01
BLPRINT_TEXT
┉┉
PRINT_TEXT
20.什么是内嵌汇编?
它的特点是什么?
第三章:
1.嵌入式系统的硬件有哪几个组成部分?
(P87)
以嵌入式系统处理器为核心,加上存储器,I/O接口电路,必要的附属电路(电源,时钟,复位,中断)以及相应的总线,以及辅助接口组成。
2.试简单描述总线的四周期握手过程。
(P89)
(1)设备一升高它的输出电平来发出查询信号,他告诉设备二应准备好接受数据。
(2)设备二准备好接收数据,升高它的它的输出电平来发出应答信号,这时设备一准备好
发送数据,设备二已准备好接收数据。
(3)一旦看到数据传输完毕,设备二降低它的输出电平表示它已经接受完数据。
(4)看到设备二的应答信号变低,设备降低它的输出电平。
3.什么是DMA?
DMA主要用来完成哪种总线操作?
(P91)
直接存储器访问(Direct
Memery-Access,DMA)是允许读/写不由CPU控制的总线操作。
专用硬件来完成外设与存储器之间的高速数据传输。
除CPU以外的操作外设和存储器的读写操作。
4.请画图说明分级存储器系统的结构。
(P94)
5.RAM存储器有哪几种?
它们的特点是什么?
(P95-P96)
静态RAM,特点:
价高,容量小,功耗低,稳定性要求高的场合。
动态RAM,特点:
电路简单,价低,容量大,稳定性低,
6.ROM存储器有哪几种?
它们的特点分别是什么?
(1)可编程ROM,只可编程一次。
(2)紫外线可擦可编程ROM,该类ROM可以通过紫外线擦出后重复编程。
(3)电可擦除可编程ROM,用户以字节为单位多次用电擦除和改写存储内容。
7.总线的概念是什么?
(P88)基本的总线操作包括?
结合图3-3说明总线的读写操作过程。
8.触摸屏的电阻式和电容式应用。
(P103)
第四章:
1.驱动层软件可以分为哪三种类型?
(P119)
板级初始化程序、与系统软件相关驱动程序、与应用相关的驱动程序
2.什么是BootLoader?
为什么说BootLoader是依赖于目标硬件实现的?
(P120)
Bootloader是系统加电后首先运行的一段程序代码,其目的是将系统的软硬件环境带到一个合适的状态,为调用操作系统内核准备好正确的坏境。
每种嵌入式微处理器体系结构都有不同的Bootloader,Bootloader还依赖于具体的嵌入式板级硬件设备的配置,所以依赖于目标硬件实现。
3.硬件抽象层一般实现哪些功能?
(P136)
硬件抽象层的目的是为了将硬件抽象化,通过程序来控制CPU、I/O存储器等硬件的操作,从而使得系统的十倍驱动程序与硬件无关,在功能上,抽象层一般应实现相关硬件的初始化、数据的I/O操作、硬件十倍的配置操作等
4.设计板级支持包的主要目的是什么?
它实现的主要功能有哪些?
为驱动程序提供访问硬件设备寄存器的函数包
5.嵌入式软件的体系结构分为哪几层?
6.BootLoader包含哪两种操作模式?
试简述其特点。
第五章:
1.什么是嵌入式操作系统?
请列举几个典型的嵌入式操作系统,并简述其主要特点。
1)
VxWorks:
性能优越,开发调试便利,强大的技术支持,但是昂贵的价格让开发者望而却步。
2)
Windows
CE:
精简的模块化操作系统
多硬件平台支持
支持有线和无线的网络连接
稳健的实时性支持
丰富的多媒体和多语言支持
强大的开发工具
3)
Palm
OS:
3Com公司产品,专门为掌上电脑开发的32位的嵌入式操作系统
占有非常小的内存,基于Palm
OS编写的应用程序占用的空间也非常小(通常只有几十KB)
Palm提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据
拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的应用程序
具有强开放性,现在有大约数千种专门为Palm
OS编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案,Palm
OS无所不包。
在丰富的软件支持下,基于Palm
OS的掌上电脑功能得以不断扩展。
操作系统的节能功能。
在Palm
OS的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;
如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。
合理的内存管理。
Palm的存储器全部是可读写的快速RAM,动态RAM(Dynamic
RAM)类似于PC机上的RAM,它为全局变量和其它不需永久保存的数据提供临时的存储空间;
存储RAM(Storage
RAM)类似于PC机上的硬盘,可以永久保存应用程序和数据。
OS的数据是以数据库(database)的格式来存储的。
4)
嵌入式Linux:
嵌入式Linux
OS逐渐形成了可与Windows
CE等EOS相抗衡的局面。
目前正在开发的嵌入式系统中,49%的项目选择Linux作为嵌入式操作系统。
Linux现已成为嵌入式操作系统的理想选择。
开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。
精简的内核,性能高、稳定,多任务。
适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等。
能够提供完善的嵌入式GUI以及嵌入式X-Windows。
提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等应用程序。
提供完整的开发工具和SDK,同时提供PC上的开发版本。
用户可定制,可提供图形化的定制和配置工具。
常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。
针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。
2.非占先式内核与占先式内核的主要区别是什么?
非占先式内核的优点:
(1)响应中断快
(2)可以使用不可重入函数(3)共享数据方便。
占先式内核是任务级响应时间最优化而且是确定的,不应直接使用不可重入函数
3.进程和线程的概念是什么?
区别和联系是什么?
4.每个任务都可以处于哪几种状态之一?
名词解释:
RTOSARMRISCDMABSPHAL
以下可以删除
2011学年度《嵌入式系统》期末复习资料
计科、网工、通信专业
1、嵌入式系统的特点。
系统内核小;
系统精简;
专用性强;
实时性要求高等等
2、嵌入式系统一般由哪几部分的组成?
嵌入式微处理器,系统外部电路,嵌入式操作系统,特定的应用程序
3、ARM的7种运行模式分别是什么?
哪些是属于特权模式?
在不同模式下使用的寄存器会不同。
4、ARM汇编中有哪几种寻址方式?
其中什么是多寄存器寻址?
什么是对存储器寻址
5、哈佛体系结构的主要特点是什么?
程序存储空间与数据存储空间分离
6、ARM指令集与Thumb指令集的主要区别?
6、ARM寄存器的组织结构特点?
在不同模式下寄存器的分配。
哪个寄存器常用作规模指针用?
CPSR的作用及各位的含义?
7、ARM的异常响应过程是怎样的?
8、常用的ARM指令的功能及用法:
ADD、ADC、AND、MOV、CMP、CMN、B、BL及移位操作
BL指令的含义;
移位操作能否单独成命令方式;
是否所有指令都改变CPSR的值;
ARM指令与8086汇编指令哪一个是可以带条件域的;
9、Load/Store指令的含义,ARM指令集中常用的数据存取指令有哪些?
其特点是:
只有数据存取指令才能访问存储器。
10、什么是交叉编译?
嵌入式系统的软件开发采用的交叉编译调试环境如何建立?
通常的嵌入式系统的软件开发采用一种交叉编译调试方式。
交叉编译调试环境建立在主机上,对应的开发板叫做目标板。
开发时使用宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码,这种可执行代码并不能在宿主机上运行,而只能在目标板上运行。
然后把可执行文件下载到目标板上运行。
在进行嵌入式开发时,开发环境一般是由目标系统硬件开发板和宿主PC机构成的。
硬件开发板用于操作系统和应用软件的运行,而操作系统内核的编译、应用软件的开发和调试则需要借助宿主PC机来完成,双方之间一般通过串口建立连接关系。
首先在宿主机上安装标准的Linux操作系统,然后安装合适的编译工具,再利用已安装好的交叉编译器编译生成运行于目标机上的内核以及应用程序和工具,最后添加必要的设备驱动和内核模块,即可完成交叉编译环境的建立。
11、嵌入式系统中什么是BootLoader,它的有何功能?
Bootloader为嵌入式系统的引导程序。
它是嵌入式系统上电后执行的第一个程序,并由它最终将操作系统启动起来并将控制权交给操作系统。
其最基本的功能是对硬件系统的初始化和内核启动参数设置并启动内核。
向无任何程序的目标机中写入BootLoader程序,一般用JTAG接口
12、什么是嵌入式处理器?
有什么特点?
低档处理器多采用哈佛结构,高档处理器多采用冯·
诺伊曼结构;
品种规格系列化;
对实时多任务有很强的支持能力;
可靠性高、功耗低、集成度高、性价比高。
13、当复位(Reset)异常发生后取指令的地址的变为多少?
14、Linux作为嵌入式操作系统,有何特点?
Linux存储管理使用页式的虚拟内存管理。
内核具有虚拟文件系统,可以支持多种文件系统。
作为一个典型的现代网络型操作系统,是一个开源的多用户多任务操作系统。
Linux系统命令包含在根目录下的sbin目录中;
Linux默认的分区类型是ext2/ext3;
Linux的文件系统中最基础的那些部件在开机引导启动的时候会通过/etc/fstab文件自动挂载。
15、Linux内核裁剪的特点?
可以使用makemenuconfig命令进行内核的配置;
使用makezImage命令会编译生成内核镜像文件zImage;
嵌入式Linux内核编译时应该采用交叉编译器。
16、超级终端的设置步骤,包括启动超级终端的基本步骤和如何设置波特率、端口、校验位、数据位、控制位及传输协议。
17、Linux环境下,如何配置TFTP?
18、什么是NFS?
其作用是什么?
在已经具有支持NFS的内核的嵌入式Linux开发平台上怎么配置NFS服务?
NFS指网络文件系统,在NFS服务中,主机是被挂载端,为了远端客户机可以访问主机的文件,需要主机配置两方面的内容:
打开NFS服务,允许“指定用户”使用。
(1)可以使用Setup命令,选择Systemservices,选中的NFS一项,打开NFS服务。
(2)通过编辑“exports”来“指定用户”
(3)通过命令:
“/etc/rc.d/init.d/nfsrestart”来重新启动服务,使设置生效。
19、AREAExample2,CODE,READONLY
CODE32
ENTRY
MOVR0,#8
MOVR1,#6
LOOP:
ADCR0,R0,#1
SUBSR1,#1
CMPR1,#0
BNELOOP
END
理解程序的功能(包括循环的次数,R0、R1中数据的变化情况及最终结果。
)
20、在ADS1.2环境下运行下列程序,
AREAExample1,CODE,READONLY
MOVR0,#2
MOVR0,R0,LSL#3
MOVR1,#8
ADDR2,R0,R1,LSR#1
END
理解程序的功能(包括各指令的功能作用。
程序运行后R2的值是多少?
21、NorFlash和NandFlash的异同。
Flash闪存是非易失存储器,是对其内部块的存储器单元块进行擦写和再编程。
Flash芯片主要有NorFlash和NandFlash两种。
它们在某些方面存在一定的差异,如:
Nand器件执行擦除操作简单,而Nor则要求在进行写入前先将目标块内所有的位都写为0;
Nor的读速度比Nand稍快一些;
Nand的写入速度比Nor快很多,Nand需4ms擦除,而Nor需要5s快。
NandFlash的单元尺寸几乎是Nor器件的一半,由于生产过程更为简单,其价格低。
在Nand闪存中每个块的最大擦写次数是一百万次,而Nor的擦写次数是十万次。
Nor具有XIP(eXecuteInPlace,芯片内执行)特性,应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。
Nor的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
Nand结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。
在接口方面,NorFlash和NandFlash也存在着差别。
NorFlash带有SRAM接口,Nand器件使用复杂的I/O口来串行存取数据。