嵌入式原理思考题及答案_第1页
嵌入式原理思考题及答案_第2页
嵌入式原理思考题及答案_第3页
嵌入式原理思考题及答案_第4页
嵌入式原理思考题及答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章 复习要点1.1.1节 嵌入式系统的概念1.13节 嵌入式系统的特点1.3节 嵌入式处理器1.4节 嵌入式系统的组成第2章 复习要点2.1节 计算机体系结构分类2.3.1节 ARM和Thumb状态2.3.2节 RISC技术2.3.3节 流水线技术2.4.3节 ARM存储系统第3章 复习要点3.1节 ARM编程模式3.2节 ARM指令格式及其寻址方式3.3节 ARM指令集(课上所讲的指令)第4章 复习要点4.1节 汇编语言源程序格式4.2节 汇编语言的上机过程第5章 复习要点5.1节 键盘接口5.2节 LED显示器接口55.1节 UART异步串行接口作业题答案:1.什么是嵌入式系统?

2、83; 第一种,根据IEEE(国际电气和电子工程师协会)的定义: 嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置”(原文为devices used to control, monitor, or assist the operation of equipment, machinery or plants)。· 第二种,嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2.与通用型计算机相比,嵌入式系统有哪些特点?n 通常是面向特定应用的;n 空间和各种资源相对不足,必须高效率地设计,量体裁衣、去除冗余;

3、n 产品升级换代和具体产品同步,具有较长的生命周期; n 软件一般都固化在存储器芯片或单片机本身; n 不具备自举开发能力 ,必须有一套开发工具和环境才能进行开发3.举例介绍嵌入式微处理器有哪几类?一、嵌入式微处理器(Embedded Microprocessor Unit, EMPU)嵌入式处理器目前主要有Aml86/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等。 二、 嵌入式微控制器(Microcontroller Unit, MCU) 嵌入式微控制器目前的品种和数量最多,比较有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/

4、196/296、C166/167、MC68HC05/11/12/16、68300等。三、嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP) 嵌入式DSP处理器比较有代表性的产品是Texas Instruments的TMS320系列和Motorola 摩托罗拉的DSP56000 系列。四、嵌入式片上系统(System On Chip) 4.从硬件系统来看,嵌入式系统由哪几部分组成?画出简图。· 嵌入式核心芯片,EMPU嵌入式微处理器、EMCU嵌入式微控制器、EDSP嵌入式数字信号处理器、ESoC嵌入式片上系统。 · 用以保存固

5、件的ROM(非挥发性只读存储器)。 · 用以保存程序数据的RAM(挥发性的随机访问存储器)。 · 连接微控制器和开关、按钮、传感器、模/数转化器、控制器、LED(发光二极管)、显示器的I/O端口。 5.嵌入式微处理器和嵌入式微控制器分别由哪些部件组成,两者有何区别。嵌入式微处理器=cpu+硬件接口(存储器接口,键盘接口等)+辅助电路(时钟、A/D、D/A、调试电路等)嵌入式微控制器=cpu+存储器+I/o接口+辅助电路(时钟、A/D、D/A等)嵌入式微处理器与嵌入式微控制器的区别:后者芯片内部包含了ROM和RAM。6嵌入式操作系统通常含有几层,主要实现何功能。嵌入式操作系统

6、通常包括: 1、驱动层:硬件相关的底层驱动软件和设备驱动接口;如: LCD 、触摸屏的驱动及接口。 2、操作系统层:系统内核(基本模块),扩展模块(可裁剪)。 3、应用层:应用程序接口。7ARM处理器工作模式有几种?各种工作模式下分别有什么特点?(P64)8ARM处理器总共有多少个寄存器,这些寄存器按其在用户编程中的功能是如何划分的?这些寄存器在使用中各有何特殊之处?ARM处理器总共有37个寄存器,各寄存器均为32位。31个通用寄存器,包括程序计数器PC;6个状态寄存器。这些寄存器按其在用户编程中的功能可划分为:通用寄存器和状态寄存器。根据ARM处理器不同工作模式,可将全部寄存器分成7组;各工

7、作模式拥有属于自己的寄存器组,也只能访问自己的寄存器组。9.试述ARM处理器对异常中断的响应过程。当一个异常出现以后,ARM微处理器执行完当前指令后(复位异常除外)会执行以下几步操作:1. 将CPSR复制到相应到相应模式下的SPSR中,设置CPSR:置位I位(禁止IRQ中断)清零T位(进入ARM状态)设置MOD位,切换处理器至相应模式2. 将下一条指令的地址存入相应连接寄存器LR(R14_XXX),以便程序在处理异常返回时能从正确的位置重新开始执行。3. 强制PC从相关的异常向量地址取一条指令执行,从而跳转到相应的异常处理程序处。 10.如何从异常中断处理程序中返回?需要注意哪些问题?异常处理

8、完毕之后,ARM微处理器会执行以下几步操作从异常返回: 1. 将SPSR复制回CPSR中,恢复原处理器工作模式。2. 将连接寄存器LR(R14_XXX)的值减去相应的偏移量后送到PC中,跳转到被中断的用户程序。11.ARM存储器的存储周期有几种类型,对应于cache访问和存储器访问是何存储周期?Ø 空闲周期 I周期-内部周期,不执行存储器访问;可广播下一次访问的地址以便开始译码,与S周期配合实现总线上的突发传送。Ø 顺序周期 S周期-顺序周期:多用于实现总线上的突发传送,第一个周期必须是一个内部周期。(cache传送)Ø 协处理器寄存器传送周期 C周期-协处理器寄

9、存器传递周期:通过数据总线向或从协处理器传送数据;传送期间,存储系统不允许驱动数据总线。Ø 非顺序周期 N周期-非顺序周期:最简单的总线周期,存储控制器必须启动存储器访问来满足这个请求;该方式存储系统常需要长的访问时间。(存储器读写)cache访问:I周期、S周期存储器访问:N周期12.何谓cache?简述cache的工作原理。(P51)13.何谓写通cache和写回cache,两者有何区别?v 写回法是指CPU在执行写操作时,被写的数据只写入cache,不写入主存。仅当需要替换时,才把已经修改的cache块写回到主存中。 采用写回法进行数据更新的cache称为写回cache。v 写

10、通法是指CPU在执行写操作时,必须把数据同时写入cache和主存。采用写通法进行数据更新的cache称为写通cache。14.arm的MMU主要实现何功能。Ø 虚拟存储空间到物理存储空间的映射。在ARM中采用了页式虚拟存储管理,通过两级页表实现虚拟地址到物理地址的映射。Ø 存储器访问权限的控制。 Ø 设置虚拟存储空间的缓冲特性:Cache/write buffer15.协处理器cp15主要实现的功能?v 用于处理、控制ARM的特殊性能v 片上存储器管理单元(MMU)v 指令、数据缓存v 写缓冲器16、简述MMU使能时存储访问过程 。(参考:P55)芯片设置为MMU

11、使能(设置cp15寄存器) :(1)若cache使能,根据arm输出的虚拟地址在CACHE中搜索;若cache命中, arm处理器与cache交换数据。 若cache禁止或cache未命中,首先访问TLB,参见(2)。(2)根据arm输出的虚拟地址在TLB中搜索,若找到,将其转换为物理地址,访问主存并把该块数据读取到cache(使能时)中。17、ARM支持的物理页有几种类型,其容量为何值?ARM支持的存储块 :(1) 段(section):由1MB 的存储器块构成(2)大页(large page):由64KB 的存储器块构成(3)小页(small page):由4KB 的存储器块构成(4)微页

12、(tiny page):由1KB 的存储器块构成18、简述基于段的地址变换过程。19、简述使用粗页表和4k页的二级虚实地址转换过程。20.编写123100的汇编程序。AREA Block, CODE, READONLY ENTRY start mov r0,#0; mov r1,#1aga add r0,r0,r1 add r1,r1,#1 cmp r1,#101 bne aga MOV r0, #0x18 ; angel_SWIreason_ReportException LDR r1, =0x20026 ; ADP_Stopped_ApplicationExit SWI 0x123456

13、END21. 编程实现128位两个加数的加法运算,两个加数分别放在num1和num2变量内,按小端模式存储,结果放在result变量内。AREA Block, CODE, READONLY ENTRY start ldr r1,=num1 ldr r2,=num2 ldr r3,=result ldr r4,r1,#4 ldr r5,r2,#4 subs r0,r4,r5 str r0,r3,#4ldr r4,r1,#4 ldr r5,r2,#4 sbcs r0,r4,r5 str r0,r3,#4 ldr r4,r1,#4 ldr r5,r2,#4 sbcs r0,r4,r5 str r0,

14、r3,#4ldr r4,r1,#4 ldr r5,r2,#4 sbcs r0,r4,r5 str r0,r3,#4 MOV r0, #0x18 ; angel_SWIreason_ReportException LDR r1, =0x20026 ; ADP_Stopped_ApplicationExit SWI 0x123456 AREA BlockData, DATA, READWRITENum1 DCD 55,66,77,88Num2 DCD 11,22,33,44result DCD 0,0,0,0 END22.将存储器中起始地址M1处的4个字数据,移动到地址M2处。(LDM/STM实现

15、)ldr r1,=m1ldr r2,=m2ldmia r1!,r3-r6stmia r2!,r3-r623.ARM指令的寻址方式有几种?试分别叙述其各自的特点并举例说明(P72)。24.假设R0的内容为0x8000,寄存器R1、R2内容分别为0x01与0x10,存储器内容为0。执行下述指令后,说明R0如何变化?存储器的内容如何变化? STMIB R0!,R1,R2 LDMIA R0!,R1,R225.在ADS环境下,利用全局变量和局部变量声明伪操作及其赋值伪操作,分别举例来定义算术变量、逻辑变量和串变量并为其赋值(P99)。26读懂下面一段程序,子程序dststr执行过程中寄存器R0、R1、R

16、2中的内容如何变化?试分析并给出子程序执行后的结果。 AREA StrCopy, CODE, READONLY ENTRY ; mark the first instruction to callstart LDR r1, =srcstr ; pointer to first string LDR r0, =dststr ; pointer to second string BL strcopy ; call subroutine to do copystop MOV r0, #0x18 LDR r1, =0x20026 SWI 0x123456 strcopy LDRB r2, r1,#1

17、STRB r2, r0,#1 CMP r2, #0 BNE strcopy MOV pc,lr ; Return AREA Strings, DATA, READWRITEsrcstr DCB "First string - source",0dststr DCB "Second string - destination",0 END27.读下面一段程序,试分析其功能。EORS R4,R0,R1BPL KMOV R3,0B END0K MVN R0,R0MOV R3,R0END0 功能:判R0和R1中的数据是否同号,若是,则把R0中的数据取反并送到R3中

18、,否则OR3。28读下面一段程序,试分析其功能。LDR R0,X+2 | BGT L1 LDR R1,X | CMP R1,R3LDR R2,Y+2 | BLS L2 LDR R3,Y | L1 MOV R4,1ADDS R1,R1,R1 | B EXIT ADC R0,R0,R0 ;求2P(R0:R1) | L2 MOV R4,2 CMP R0,R2 |EXIT SWI 0x123456;结束程序BLT L2 | 功能:若2x>y 则R4=1;若 2x<=y 则R4=2 29.有100个有符号的字数据,存放在内存BUFF中,编完整的程序(包括代码段、数据段)找出最大值、最小值分别

19、放入内存单元MAX、MIN中。AREA Block, CODE, READONLY ENTRY start ldr r0,=BUFF; mov r1,#100 ldr r4,r0;max ldr r5,r0;mincmpe ldr r3,r0 cmp r4,r3 bgt cmpnext; mov r4,r3;小于等于cmpnext cmp r5,r3 blt loop mov r5,r3; 小于loop add r0,r0,#4 sub r1,r1,#1 cmp r1,#0 bne cmpe ldr r0,=MAX; str r4,r0 ldr r0,=MIN; str r5,r0 MOV r

20、0, #0x18 ; angel_SWIreason_ReportException LDR r1, =0x20026 ; ADP_Stopped_ApplicationExit SWI 0x123456 AREA BlockData, DATA, READWRITEBUFF DCD 1,-2,3,4,5,6,7,-8,1,2,3,4,5,6,7,8,1,2,3,12MAX DCD 0MIN DCD 0 END30. S3C44B0X具有多少通用I/O口?它们具有哪些功能?(P149)31.简述矩阵式键盘线扫描检测法的工作原理。(P150151)32.假设要将S3C44B0X的UART1设置为:波特率9600b/s,7位数据位,2个停止位,1位奇偶校验位,并采用流控制工作,该如何设置?给出完成该设置功能的代码段。rFCON0=0X00; 不使用FIFOrUMCON0=0X10; 自动流控制rULCON0=0X26; 正常模式,1位奇偶校验位/奇校验,2个停止位rUCON0=0X45 ; /禁止超时中断、回送模式、发中止信号,允许产生错误状态中断,/发送、接收中断都为边沿方式,传送、接收模式都为中断请求模式rUBRDIVO =(int)MCLK/16/bau

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论