嵌入式练习题
- 格式:doc
- 大小:1.11 MB
- 文档页数:11
1. 什么是嵌入式系统?其特点有些什么?
答:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
特点:(1)通常是面向特定应用,低功耗、体积小、集成度高;
(2)是技术密集、资金密集、高度分散、不断创新的知识集成系统;
(3)软硬件必须高效率地设计,根据应用需求量体裁衣,去除冗余;
(4)与具体应用有机结合,具有较长的生命周期;
(5)为提高执行速度和系统可靠性,软件一般固化在存储器芯片或单片机本身中;
(6)本身不具备自举开发能力,必须有一套开发工具和环境才能进行开发。
2. 嵌入式系统的BooTLoader的功能是什么?
答: BooTLoader是系统加电后,操作系统内核或用户应用程序运行之前,首先必须运行的一段程序,即引导加载程序。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。
3. 什么是嵌入式操作系统?为何要使用嵌入式操作系统?
答:嵌入到对象体系中的专用计算机应用系统。
4. 目前嵌入式操作系统有哪些?
答:(1)Windows CE(2)VxWorks(3)pSOS(4)QNX(5)Palm OS(6)嵌入式Linux 5. 构造嵌入式开发环境有哪几种形式?
答:(1)交叉开发环境(2)软件模拟环境(3)评估电路板
6. 嵌入式系统开发的基本流程?
答:(1)系统定义与需求分析
(2)规格说明
(3)系统结构设计
(4)构件设计
(5)系统集成
7. 什么是可编程片上系统?
答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统PSOC.它是一种特殊的嵌入式系统,首先它是SOC,即由单个芯片实现整个系统的主要逻辑功能,具有一般SOC基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。
8. 有时要使用Thumb技术的原因?
答:16位Thumb指令集是32位ARM指令集的子集,用16位代码密度的指令获得32位处理器的性能既节省存储空间及成本,又不降低处理性能,低功耗,小体积,低成本。
9. ARM处理器的工作模式有哪几种?
答:用户模式,系统模式,管理模式,中止模式,未定义模式,IRQ模式,FIQ模式
10. 寄存器R13,R14,R15的专用功能各是什么?
答:R13寄存器的作用通常是堆栈指针,SP;
R14用作子程序链接寄存器,LR;
R15的功能是程序计数器,PC。
11. 寄存器CPSR,SPSR的功能各是什么?
答:(1)CPSR寄存器称为当前程序状态寄存器,又称R16,在所有处理器模式下CPSR 都是同一个物理寄存器,保存了程序运行的当前状态。包括各种条件标志、中断禁止/允许位、处理器模式位以及其它状态和控制信息。
(2)在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR,当异常出现时,SPSR用于保存 CPSR的状态,以便异常返回后恢复异常发生时的工作状态。
12. PC和LR分别使用哪个寄存器?
答:PC使用R15,LR使用R14
13. ARM的异常有哪几种,各进入何种工作模式?他们退出各采用什么指令?
答:(1)复位异常,(管理模式);
(2)未定义指令异常,(未定义模式);
(3)软件中断(SWI)异常,(管理模式);
(4)指令预取中止异常,(中止模式);
(5)数据访问中止(Data Abort)(中止模式);
(6)外部中断请求(IRQ)(IRQ模式);
(7)快速中断请求(FIQ)(FIQ模式)。
异常返回指令:(1)SWI,未定义的返回:MOVS PC,R14;
(2)数据中止返回并重新存取:SUBS PC,R14,#8
(3)IRQ,FIQ,预取中止的返回:SUBS PC,R14,#4
14. 什么是小端和大端存储器组织?
答:(1)小端存储系统中,字的地址对应该字最低有效字节所对应的地址;半字的地址对应该半字最低有效字节所对应的地址
(2)大端存储系统中,字的地址对应该字最高有效字节所对应的地址;半字的地址对应该半字最高有效字节所对应的地址
15. 什么是数据的边界对齐?
答:默认情况下,ADS编译器使用的是数据类型的自然边界对其方式。数据的自然对其方式是指:如果该数据类型是n个字节的,那么该数据类型就按n字节对齐。
16. ARM核现在有哪几种?
答:ARM7、 ARM9、ARM9E 、ARM10E,、SecurCore、StrongARM、Xscale
17. ARM的寻址方式有哪些?各写一条说明。
答:(1)立即寻址:ADD R6,R6,#128 ;R6=R6+128
(2)寄存器寻址:ADD R2,R3,R5 ;R2=R3+R5
(3)寄存器移位寻址:ADD R0,R1,#3 ;R0=R1+8*R2
(4)寄存器间接寻址:LDR R6,[R7] ;R6=[R7]
(5)变址寻址:LDR R2,[R3,#128] ;R2=[R3+128]
LDR R2,[R3,#4]! ;R2=[R3+4],R3=R3+4
LDR R2,[R3],#4 ;R2=[R3],R3=R3+4
(6)多寄存器寻址:LDMIA R2,{R3,R5,R7} ;R3=[R2],R5=[R2+4],R7=[R2+8]
(7)堆栈寻址:STMFD SP! {R1-R7,LR}
LDMFD SP! {R1-R7,LR}
(8)块拷贝寻址:LDMIA R0!{R2-R9}