2012硕士嵌入式系统复习题 - 林子大了版 联系客服

发布时间 : 星期二 文章2012硕士嵌入式系统复习题 - 林子大了版更新完毕开始阅读79978916a76e58fafab00372

《嵌入式系统》复习题答案

1. 什么是嵌入式系统?它与通用计算机系统相比有哪些主要区别?

嵌入式系统是以应用为中心、计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统,也称为嵌入式计算机,是一种非通用计算机系统 2. 在嵌入式系统开发过程中,调试软件的方法有哪些?什么是交叉编译?什么是远程调试?

基于主机的调试,远程调试器与调试内核, ROM仿真器,在线仿真ICE,BDM,JTAG,软件仿真器. 在一种计算机环境中运行的编译程序,能编译出另一种环境下运行的代码。这种编译过程就称为交叉编译。简单地说就是,在一个平台上生成另一个平台上的可执行代码。 应用程序在主机被编辑、编译(交叉编译)、连接与定位,下载应用程序到目标机,主机启动调试程序,对目标机程序进行调试,调试状态信息实时反馈给主机,如发现程序错误,需重复以上过程,直至程序全部调试成功。

3. 嵌入式系统产品的开发一般需经历几个过程?每个阶段的主要工作是什么?

需求分析,系统设计,系统实现,系统测试

需求分析:分析用户的需求,确认用户的需求,确定硬件和软件,确定项目的约束条件,

系统设计:审查分析资料,体系结构设计,硬件软件划分,设计次序,硬件设计,软件设计 系统实现:选择开发平台,软件开发

系统测试:硬件测试,软件测试,性能测试

4. 在嵌入式系统实现阶段,你认为选择开发平台应该遵循什么原则?包括什么内容?

选择具体的处理器产品时要考虑因素的因素有:处理器速度(用MIPS衡量);熟悉程度;片上I/O资源是否满足要求;操作系统是否支持;是否内置调试功能;支持服务信任度等

选择硬件部件是要考虑,自己设计还是选择第三方的产品(如PC104总线的各种板卡、嵌入式模块等)。选择一般原则:数量大的产品自行研制、数量少的产品可考虑购买现成的板卡.

选择操作系统时要考虑是实时系统?非实时系统?有无人机界面要求?无需操作系统?操作系统的移植难度,对内存的要求,操作系统提供的服务是否满足要求?(TCP/IP协议栈、文件系统、CDROM、存储卡支持等),是否包括目标硬件设备驱动程序,是否具有可裁剪性

选择编程语言时原则是大部分系统使用C、C++、Java,有严格时间要求和访问硬件部分使用汇编语言,可视化应用使用Embedded Visual Tools

评估板选择:具有参考设计价值,使系统的硬件和软件同时开发进行

编写板级支持包BSP代码:与硬件结构有关,不同的操作系统供应商会提供BSP的开发方法和开发模板

5. 嵌入式系统产品开发中和开发完成后,为什么要进行测试?软件的黑盒和白盒测试其区别何在?

区别:黑盒测试只关心给定的输入和输出,程序的输出和设计是否相同。它可以和系统的其余部分设计同时进行。弱点在于它很少能检查完所有的代码。

白盒测试需要看到程序实现、执行的细节。它在代码编写完后才能开始测试设计工作。白盒测试可能使用JTAG端口,把特定内存地址作为测试的一部分。还会分析逻辑分析仪报告的代码执行路径。

6. 计算机的冯·诺伊曼结构和哈佛结构各有什么特点?RISC和CISC处理器各有什么特点?

冯·诺伊曼结构:指令和数据共享同一个存储器

哈佛结构:存储程序指令与存储数据使用不同的存储器,指令与数据的宽度可以不同,较高的执

行效率

CISC:复杂指令集(Complex Instruction Set Computer)具有大量的指令和寻址方式,8/2原则:80%的程序只使用20%的指令,大多数程序只使用少量的指令就能够运行。

RISC:精简指令集(Reduced Instruction Set Computer)在通道中只包含最有用的指令,确保数据通道快速执行每一条指令,使CPU硬件结构设计变得更为简单

7. 什么是流水线技术?假设某处理器使用一条流水线,指令由取指、分析、执行3个子部件完成,

每个子部件的工作周期均为△t。如连续执行10条指令,则共需多少时间?

指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。几条指令可以并行执行,提高了CPU的运行效率,内部信息流要求通畅流动 12△t

8. 评价计算机的性能指标有哪些?假设某计算机的时钟频率是400MHz,测试该计算机的程序使用

4种类型的指令,每种指令的数量及所需指令时钟数如下表所示,则该计算机的指令平均时钟数是多少?该计算机的处理速度约为多少MIPS?

指令类型 1 2 3 4

指令数目(条) 160000 30000 24000 16000 每条指令需时钟数 1 2 4 8 功能,字长,处理速度,寻址能力,工作温度,功耗 1.93 207.3MIPS

总指令数=160000+30000+24000+16000=230000 指令1占比=160000/230000=0.696 指令2占比=30000/230000=0.130 指令3占比=24000/230000=0.104 指令14占比=16000/230000=0.0667

指令平均时钟数=1*0.696+2*0.130+4*0.104+8*0.0667=1.93 处理速度=400M/1.93=207.3MIPS

9.51系列单片机寻址最大空间是多少?采用总线方式工作时,如何产生地址A15~A0?如何区分访问的数据是来自外部存储器还是来自外部I/O设备? 64K

由于80C51低八位地址(A7~A0)与8位数据复用P0口,因此要设计地址分离锁存电路(74HC373)。锁存后的A7~A0地址与CPU的A15~A8地址共同组成系统地址总线A15~A0 区分方式:通过同类指令的不同地址加以区分是访问外部存储器还是外部I/O设备。 10. ARM内核有几种类型? 用于开放平台的内核和用于实时嵌入式操作系统的内核 11.ARM处理器的8种基本寻址方式各有何特点?

(1)寄存器寻址:指令执行时立即取出寄存器值操作

(2)立即寻址:数据就包含在当前的指令中,取出指令也就取出了可以立即使用的操作数 (3)寄存器偏移寻址:ARM指令集特有的寻址方式,当第二操作数是寄存器偏移方式时,第二个寄存器操作数载第一个操作数结合之前,选择进行移位操作。

(4)寄存器间接寻址:指令中的地址码给出的是一个通用寄存器编号,所需要的操作数保存在寄存器制定的地址存储单元中,即寄存器为操作数的地址指针

(5)基址寻址:将基址寄存器的内容和指令中给出的偏移量相加,形成操作数的有效地址,基址寻址用于访问基址附近的存储单元,用于查表,数组操作,功能部件寄存器访问等

(6)多寄存器寻址:一次可以传送几个寄存器值,允许一条指令传送16个寄存器的任何子集或所有寄存器。

(7)堆栈寻址:堆栈是特定顺序进行存取的存储区,操作顺序为“先进先出”或者“先进后出”,堆栈寻址是隐含的,它使用一个专门的寄存器(堆栈指针)指向一块寄存器区域(堆栈),指针所指向的存储单元就是堆栈的栈顶

(8)相对地址:基址寻址的一种变通,用程序计数器PC提供基准地址,指令中的地址码字段作为偏移量,两者相加后得到的地址就是操作数的有效地址。

12.ARM处理器中的大端与小端模式是什么概念?从程序或数据的存储结构图中你能否判断出不同

的模式? ARM处理器中的大端与小端模式就是大端对齐存储系统和小端对齐存储系统。大端对齐存储

系统:字对准地址中的字节或半字是该地址中字的最高有效字节或半字,半字对准地址中的字节是该地址中半字的最高有效字节;小端对齐存储系统:字对准地址中的字节或半字是该地址中字的最低有效字节或半字,半字对准地址中的字节是该地址中半字的最低有效字节。 能够。

大端存储

3101615872423

地址A的字

地址A+2的半字地址A的半字

地址A的字节地址A+1的字节地址A+2的字节地址A+3的字节 小端存储 3108724231615

地址A的字

地址A+2的半字地址A的半字

地址A+3的字节地址A+2的字节地址A的字节地址A+1的字节

图 大端和小端存储示意图

13.看门狗的作用是什么?你能解释一下它的工作机理吗? 作用:防止程序发生死循环或者在软件发生问题和程序跑飞的情况下使系统重新启动。

原理:正常运行的程序,每隔一段时间必然运行其中的一部分代码,如果在用户设定的最大时间内没有运行其中的某一部分代码或某几部分代码,则认为系统出现问题,看门狗电路产生复位信号,使系统重新开始运行。

14.ARM体系结构支持几种处理器模式?

15.在ARM体系结构中,存储器的对准和非对准存储是什么概念?采用对准存储有什么好处?

对准存储:按字对准或半字对准存储

非对准的存储:在ARM体系结构中,未按字对准或者半字对准存储

好处:a)在ARM体系结构中,未按字对准或半字对准的存储器访问称作非对准的存储器访问,若在ARM态期间未按字对准执行,则结果通常是不可预知或者地址的位[1:0]被忽略。 b)存储数据可以在一个总线周期完成。

16.ARM是通过I/O专用指令还是使用特定地址的存储器指令访问I/O设备?这是一种什么样的I/O编址方案?

ARM是通过特定的存储器地址访问I/O设备 ARM系统使用存储器映射I/O。即使用特定的存储器地址访问I/O设备,写存储器操作对应输出,读存储器操作对应输入。

17.EEPROM、FLASH、SRAM、DRAM、U盘存储器各有什么特点?

(1)EEPROM(可电擦除ROM):擦出需要点,其中任一个字节都可以擦除和重写

(2)Flash:具有高密度、低价格、非易失性、读取速度快及电可重编程等特点,以扇区为单位擦除而不是字节,且擦除次数有限制

(3)SRAM :速度快,耗电多,断电后数据永远丢失

(4)DRAM:只有极短的数据寿命,需要定时刷新,密度高,易失性

(5)U盘存储器:具有容量大,读写速度快,体积小,携带方便等特点,还有防磁,防震,防潮等特性,明显增强了数据的安全性。U盘性能稳定,数据传输高速有效,较强的抗震性能可以使数据传输不受干扰,且价格适中 18.存储器的容量如何表示?嵌入式系统存储模块的总容量和所需存储芯片数之间是什么关系?如内存按字节编址,用存储容量为32K×8的存储芯片构成地址为A0000H至DFFFFH的存储空间,则至少需要多少片?假设CPU地址总线为20位,此时片内地址译码需要多少位?片选地址译码需要多少位?试设计满足该要求的译码电路。

1) 用存储单元的字数×每个存储单元的位数表示。如128K×8、8M×16 2)总容量=单个芯片存储容量×存储芯片数

3)芯片数量=总容量/单个芯片存储容量=(DFFFFH-A0000H+1)/(32×1024)=8 4)+ NOT FOUND…

19.FLASH存储器有几种类型?各有何特点,如果嵌入式CPU直接运行芯片中的程序,则应该使用哪种FLASH存储器?

(1)Flash按工艺分有两类,NAND Flash和NOR Flash。

(2)NOR Flash可以随机存取任意单元内容,一般适于程序代码的并行读写;NAND Flash按顺序