微处理器系统结构与嵌入式系统设计(第二版)答案全

合集下载

ARM嵌入式系统基础教程第二版课后习题答案

ARM嵌入式系统基础教程第二版课后习题答案

第1章嵌入式系统概述(1)举出3个本书中未提到的嵌入式系统的例子。

答:键盘、鼠标、扫描仪。

(2)什么叫嵌入式系统?答:嵌入到对象体系中的专用计算机应用系统。

(3)什么叫嵌入式处理器?嵌入式处理器分为哪几类?答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。

分为3类:1.注重尺寸、能耗和价格;2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。

(4)什么是嵌入式操作系统?为何要使用嵌入式操作系统?答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的根底上参加符合嵌入式系统要求的元素开展而来的。

原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。

3.充分发挥了32位CPU的多任务潜力。

第2章 ARM7体系结构(1)ARM7TDMI中的T、D、M、I的含义是什么?答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。

(2)ARM7TDMI采用几级流水线?使用何种存储器编址方式?答:3级;冯·诺依曼结构。

(3)ARM处理器模式和ARM处理器状态有何区别?答:ARM处理器模式表达在不同存放器的使用上;ARM处理器状态表达在不同指令的使用上。

(4)分别列举ARM的处理器模式和状态?答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态。

(5)PC和LR分别使用哪个存放器?答:PC:R15;LR:R14。

(6)R13存放器的通用功能是什么?答:堆栈指针SP。

(7)CPSR存放器中哪些位用来定义处理器状态?答:位31~28:N、Z、C、V,条件代码标志位;27~8:保存位;7~0:I、F、T、M4~0,控制标志位。

(8)描述一下如何禁止IRQ和FIQ的中断。

答:当控制位I置位时,IRQ中断被禁止,否那么允许IRQ中断使能;当控制位F置位时,FIQ中断被禁止,否那么允许FIQ中断使能。

【嵌入式】嵌入式系统开发与应用第二版课后答案第三章(田泽)

【嵌入式】嵌入式系统开发与应用第二版课后答案第三章(田泽)

【嵌⼊式】嵌⼊式系统开发与应⽤第⼆版课后答案第三章(⽥泽)⾃整理,复习⽤,考试只考前三章——海底淤泥⼀、简答题1ARM寻址⽅式有⼏种?举例说明ARM如何进⾏不同的寻址⽅式 6种 1.⽴即寻址: ADD R0,R0,#1 2.寄存器寻址: ADD R0,R1,R2,#2 3.寄存器间接寻址: LDR R0,[R1] 4.基址加偏址寻址: 1.前:LDR R0,[R1,#4] 2⾃动:LDR R0,[R1,#4]! 3后:LDR R0,[R1],#4 5堆栈寻址:1.STMFD SP!{R1-R7,LR} 2.LDMFD SP!{R1-R7,LR} 6块拷贝寻址:1.LDMIA R0!,{R2-R9} 2.STMIA R1,{R2-R9} 7相对寻址:MOV PC,R142简述ARM指令分类以及指令格式形式 1.数据处理指令 <op>{<cond>}{S}Rd,Rn,#<32位操作数> <op>{<cond>}{S}Rd,Rn,Rm,{<shift>} 2.Load/Store指令 LDR|STR{<cond>}{B}{T}Rd,[Rn,<offset>]{!} LDR|STR{<cond>}{B}{T}Rd,[Rn]<offset> LDR|STR{<cond>}{B}{T}Rd,LABEL LDM|STM<cond>}<add mode> Rn{!},<registers> SWP{<cond>}{B}Rd,Rm,[Rn] 3.状态寄存器与通⽤寄存器之间的传送指令 MRS{<cond>}Rd,CPSR|SPSR 4转移指令 B{L}{<cond>} <target address> 5异常中断产⽣指令 SWI{<cond>} <24位⽴即数> BKPT {immed_16} CLZ{cond} Rd,Rm 6协处理器指令 CDP{<cond>} <CP#>,<Copl>,CRd,CRn,CRm{,<Cop2>}3假设SP的内容为0x8000,寄存器R1、R2的内容分别为0x01与0x10,存储器内容为空,执⾏下述指令后,说明PC如何变化。

嵌入式系统设计与应用A卷答案-嵌入式系统设计与应用(第2版)-王剑-清华大学出版社

嵌入式系统设计与应用A卷答案-嵌入式系统设计与应用(第2版)-王剑-清华大学出版社

2018─2019学年第 2 学期《嵌入式系统设计与应用》试卷参考答案及评分标准( A卷) 本试卷适用专业:计算机科学与技术年级:16 考试时间:110分钟考试方式:闭卷一、选择题 (每小题 2分,共 20分)二、填空题(每空 1分,共15 分)2.MDK-ARM 、ARM DS5。

3.自旋锁信号量。

4.字符块套接字。

5. 4 00。

6.块组描述符、节点位图、数据块区7.dev-t四.问答题(每小题 5分,共35 分)1.File_operations为用户态应用程序提供接口,是系统调用和驱动程序关联的重要数据结构。

----1分File 结构体在内核代码 include/linux/fs.h 中定义,表示一个抽象的打开的文件,---1分file_operations 结构体就是 file 结构的一个成员。

------1分Inode 结构表示一个文件,而 file 结构表示一个打开的文件。

这正是二者间最重要的关系。

---2分2.const int pn; pn是一个常整型数int const pn; pn是一个常整型数const int *pn; pn是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。

int * const pn; pn是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)int const * pn const; pn是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也是不可修改的)----每个各1分3. 本题考查系统可靠度的概念。

串联部件的可靠度=各部件的可靠度的乘积。

并联部件的可靠度=1–各部件失效率的乘积。

题目中给出的系统由三个部件串联组成,其中第二、第三部件又分别由两个部件并联构成,因此整个系统的可靠度为0.85*(1–(1–0.85)*(1–0.85))* (1–(1–0.85)* (1–0.85))≈0.8122--------5分(能够写出公式的给2分,正确计算结果给5分)4. struct cdev * my_cdev=cdev_alloc();my_cdev->owner=THIS_ MODULE;my_cdev->ops=&fops;------应用cdev_alloc()正确可得2分,程序完全正确得5分5. a.setValue(19); a.value()=19, b.value()=19 各1分b.setValue(40); a.value()=19,-----2分 b.value()=40------1分6. int *ptr;ptr = (int *)0x9527;*ptr = 0x1314;-----地址转换正确可得2分,程序功能完成即可得5分7.本题考查指令流水的概念。

ARM嵌入式系统基础的教程第二版课后习题答案

ARM嵌入式系统基础的教程第二版课后习题答案

第1章嵌入式系统概述<1>举出3个本书中未提到的嵌入式系统的例子.答:键盘、鼠标、扫描仪.<2>叫嵌入式系统?答:嵌入到对象体系中的专用计算机应用系统.<3>叫嵌入式处理器?嵌入式处理器分为哪几类?答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器.分为3类:1.注重尺寸、能耗和价格;2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格.<4>是嵌入式操作系统?为何要使用嵌入式操作系统?答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的根底上参加符合嵌入式系统要求的元素开展而来的.原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期.3.充分发挥了32位CPU的多任务潜力.第2章 ARM7体系结构1.根底知识<1>ARM7TDMI中的T、D、M、I的含义是?答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块.<2>ARM7TDMI采用几级流水线?使用何种存储器编址方式?答:3级;冯·诺依曼结构.<3>ARM处理器模式和ARM处理器状态有何区别?答:ARM处理器模式表现在不同存放器的使用上;ARM处理器状态表现在不同指令的使用上.<4>分别列举ARM的处理器模式和状态?答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态.<5>PC和LR分别使用哪个存放器?答:PC:R15;LR:R14.<6>R13存放器的通用功能是?答:堆栈指针SP.<7>CPSR存放器中哪些位用来定义处理器状态?答:位31~28:N、Z、C、V,条件代码标志位;27~8:保存位;7~0:I、F、T、M4~0,控制标志位.<8>描述一下如何禁止IRQ和FIQ的中断.答:当控制位I置位时,IRQ中断被禁止,否如此允许IRQ中断使能;当控制位F 置位时,FIQ中断被禁止,否如此允许FIQ中断使能.2.存储器格式答:无论是大端格式还是小端格式,R2的值与R1一致;地址0x4000单元的字节:大端:0x12、小端:0x78.3.处理器异常请描述一下ARM7TDMI产生异常的条件是?各种异常会使处理器进入哪种模式?进入异常时内核有何操作?各种异常的返回指令又是?答:[异常] [模式] [返回指令]复位管理无未定义指令未定义 MOVS PC,R14软件中断管理 MOVS PC,R14预取指中止中止 SUBS PC,R14,#4数据中止中止 SUBS PC,R14,#8IRQ 中断 SUBS PC,R14,#4FIQ 快速中断 SUBS PC,R14,#4进入异常时,内核自动做:PC→LR、CPSR→相应异常模式下的SPSR、设置CPSR 为相应的异常模式、相应异常处理程序的中断入口向量地址→PC.第3章 ARM7TDMI<-S>指令系统1.根底知识<1>ARM7TDMI<-S>有几种寻址方式?"LDR R1,[R0,#0x08]〞属于哪种寻址方式?答:有8种寻址方式:1.存放器寻址 2.立即寻址 3.存放器移位寻址 4.存放器间接寻址 5.基址寻址 6.多存放器寻址 7.堆栈寻址 8.相对寻址;"LDRR1,[R0,#0x08]〞属于基址寻址.<2>ARM指令的条件码有多少个?默认条件码是?答:16个;AL.<3>ARM指令中的第2个操作数有哪几种形式?列举5个8位图立即数.答:1.常数表达式<8位图> 2.存放器方式 3.存放器移位方式;0x3FC、0、0xF0000000、200、0xF0000001.<4>LDR/STR指令的偏移形式有哪4种?LDRB指令和LDRSB指令有何区别?答:1.零偏移 2.前索引偏移 3.程序相对偏移 4.后索引偏移;LDRB:加载无符号字节数据,LDRSB加载有符号字节数据<5>请指出MOV指令与LDR加载指令的区别与用途?答:MOV指令的源操作数是常数或〔带偏移量的〕存放器,用于存放器之间的数据传送;LDR指令的源操作数是地址,用于存储器到存放器的数据传送.<6>CMP指令是如何执行的?写一程序,判断R1的值是否大于0x30,是如此将R1减去0x30.答:CMP指令将Rn-operand2,根据结果更新CPSR中的相应条件标志位.CMP R1,0x30SUBHI R1,0x30<7>调用子程序是用B指令还是用BL指令?请写出返回子程序的指令.答:用BL;MOV PC,R14.<8>请指出LDR伪指令的用法.指令格式与LDR加载指令的区别是?答:用法:LDR{cond} Rd,=立即数/标号+立即数;LDR伪指令的源操作数是代表一个常数,LDR加载指令的源操作数代表一个地址.<9>ARM状态与Thumb状态的切换指令是?请举例说明.答:BX;;从ARM状态切换到Thumb状态CODE32LDR R0,=Lable+1BX R0CODE16Lable MOV R1,#12;从Thumb状态切换到ARM状态CODE16LDR R0,=LableBX R0CODE32Lable MOV R1,#10<10>Thumb状态与ARM状态的存放器有区别?Thumb指令对哪些存放器的访问受到一定限制?答:有区别;R8~R15.<11>Thumb指令集的堆栈入栈、出栈指令是哪两条?答:PUSH、POP.<12>Thumb指令集的BL指令转移X围为何能达到±4MB?其指令编码是怎样的?答:BL指令事实上是两条指令,其编码为:11110{地址偏移高11位}、11111{地址偏移低11位},地址编码22位,再左移一位<半字对齐>,23位地址寻址8MB,即±4MB.2.有符号和无符号加法答:<1>0xFFFF000F <A>+0x0000FFF1 <B>——————<0x00000000>NZCV=0110如果两个操作数是有符号数,A是负数,B是正数,和是0,没有溢出,所以V=0.如果两个操作数是无符号数,和是0,有进位,所以C=1.<2>0x7FFFFFFF <A>+0x02345678 <B>——————<0x82345677>NZCV=1001如果两个操作数是有符号数,A是正数,B是正数,和是负数,有溢出,所以V=1. 如果两个操作数是无符号数,没有进位,所以C=0.<3>67654321 <A>+ 23110000 <B>——————<0x0568F421>NZCV=0000如果两个操作数是有符号数,A是正数,B是正数,和是正数,没有溢出,所以V=0. 如果两个操作数是无符号数,没有进位,所以C=0.第五章1、根底知识:〔1〕LPC2114可使用的外部晶振频率X围是多少〔使用/不使用PLL功能时〕?晶振频率X围:1~30 MHz,假如使用PLL 或ISP 功能为:10~25MHz.〔2〕描述一下LPC2210的PO.14、P1.20、P1.26、BOOT1和BOOT0引脚在芯片复位时分别有作用?并简单说明LPC2000系列ARM7微控制器的复位处理流程.P0.14 的低电平强制片内引导装载程序复位后控制器件的操作,即进入ISP 状态.P1.20 的低电平使 P1.25~P1.16 复位后用作跟踪端口.P1.26 的低电平使 P1.31~P1.26 复位后用作一个调试端口.当RESET 为低时,BOOT0 与BOOT1 一同控制引导和内部操作.引脚的内部上拉确保了引脚未连接时呈现高电平.外部复位输入:当该引脚为低电平时,器件复位,I/O口和外围功能进入默认状态,处理器从地址0 开始执行程序.复位信号是具有迟滞作用的TTL 电平.〔3〕LPC2000系列ARM7微控制器对向量表有何要求〔向量表中的保存字〕?向量表所有数据32 位累加和为零<0x00000000~0x0000001C 的8 个字的机器码累加>,才能脱机运行用户程序,这是LPC2114/2124/2212/2214 的特性.〔4〕如何启动LPC2000系列ARM7微控制器的ISP功能?相关电路应该如何设计?〔5〕LPC2000系列ARM7微控制器片内Flash是多位宽度的接口?它是通过哪个功能模块来提高Flash的访问速度?128位, 通过存储器加速模块〔MAM〕来提高Flash的访问速度〔6〕假如LPC2210的BANK0存储块使用32位总线,访问BANK0时,地址线A1、A0是否有效?EMC模块中的BLSO~BLS4具有功能?无效,< 如果存储器组配置成 16 位宽,如此不需要 A0;8 位宽的存储器组需要使用A0 .>;字节定位选择信号.〔7〕LPC2000系列ARM7微控制器具有引脚功能复用特性,那么如何设置某个引脚为指定功能?通过引脚功能选择存放器的设定来设置某个引脚为指定功能〔8〕设置引脚为GPIO功能时,如何控制某个引脚单独输入/输出?当前要知道某个引脚当前的输出状态时,是读取IOPIN存放器还是读取IOSET存放器?GPIO方向存放器,IOPIN.〔10〕使用SPI主模式时,SSEL引脚是否可以作为GPIO?假如不能,SSEL引脚应如何处理?不能用作GPIO,SSEL应设这高电平,处于末激活状态.〔11〕LPC2114具有几个UART是符合标准?哪一个UART可用作ISP通信?哪一个UART具有MODEM接口?UART0,UART1;UART0用于ISP通信,UART1具有MODEM接口.〔12〕LPC2114具有几个32位定时器?PWM定时器是否可以作通用定时器使用?两个32位定时器,PWM定时器不能用作通用定时器使用〔13〕LPC2000系列ARM7微控制器具有哪两种低耗模式?如何降低系统的功耗?2 个低功耗模式:空闲和掉电;2、计算PLL设置值:假设有一个基于LPC2114的系统,所使用的晶振为11.0592MHZ石英晶振.请计算出最大的系统时钟〔ccls〕频率为多少MHZ?此时PLL的M值和P值各为多少?请列出计算公式,并编写设置PLL的程序段.3、存储器重影射:〔1〕LPC2210具有〔 4 〕种存影射模式.①3 ②5 ③1 ④4〔2〕当程序已固化到片内Flash,向量表保存在0x00000000起始处,如此MAP〔1:0〕的值应该为〔 2 〕.①00 ②01 ③10 ④11〔3〕LPC2000系列APM7微控制器ccq重影射的目标起始地址为〔〕,共有〔〕个字.①0x00000000,8 ②0x40000000,8③0x00000000,16 ④0x7FFFE000,84、外部中断唤醒掉电设计:以下代码是初始化外部中断0,用它来唤醒掉电的LPC2114,请填空.PINSEL0=0x00000000;PINSELI = <PINSEL1&0XFFFFFFFC>|0X01; //设置I/O连接,PO.16设置为EINTO EXTMODE =0X00; //设置EINT0为电平触发模式EXTPOLAR=0X00; //设置EINT0为低电平触发EXTWAKE =0X01; //允许外部中断0唤醒掉电的CPUEXTINT=0x0F; //去除外部中断标识第四章程序清单4.1存放器相加;文件名:TESTI.S;功能:实现两个存放器相加;说明:使用ARMulate软件仿真调试AREA Examplel,CODE,READONLY ;声明代码段ExamplelENTRY ;标识程序入口CODE32 ;声明32位ARM指令START MOV R0,#0 ;设置参数MOV R1,#10LOOP BL ADD_SUB ;调用子程序ADD_SUBB LOOP ;跳转到LOOPADD_SUBADDS R0,R0,R1 ;R0=R0+R1MOV PC,LR ;子程序返回END ;文件完毕程序清单4.2 读取SMI立即数T_bit EQU 0X20SWI_HandlerSTMFD SP!,{R0_R3,R12,LR} ;现场保护MRS R0,SPSR ;读取SPSRSTMED SP!,{R0} ;保存SPSRTST R0,#T_bit ;测试T标志位LDRNEH R0,[LR,#_2] ;假如是Thumb指令,读取指令码〔16位〕BIE R0,R0,,#0xFF00 ;取得Thumb指令的8位立即数LDREQ R0,[LR,#_4] ;假如是ARM指令,读取指令码〔32位〕BICEQ R0,R0,#0Xff000000 ;取得ARM指令的24位立即数……LDMFD SP!,{ R0_R3,R12,PC};SWI异常中断返回程序清单4.3使用IRQ中断ENABLE_IRQMRS R0,CPSRBIC R0,R0,#0x80MSR CPSR_C,R0MOV PC,LR程序清单4.4禁能IRQ中断DISABLE_IRQMRS R0 CPSRORR R0,R0,#0x80MSR CPSR_C,R0MOV PC,LR程序清单4.5堆栈指令初始化INTSTACKWOV R0,LR ;保存返回地址;设置管理模式堆栈MSR CPSR_C,#0xD3LDR SP,stacksvc;设置中断模式堆栈MSR CPSR_C,#0xD2LDR SP,Stacklrq……程序清单4.6小X围地址的加载……ADR R0,DISP_TAB ;加载转换表地址LDRB R1,[R0,R2] ;使用R2作为参数,进展查表……DISP_TABDCB 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90 程序清单4.7中等X围地址的加载……ADR LR,RETURNIADRL R1,Thumb_sub+1BX R1RETURNI……CODE 16Thumb_subMOV R1,#10……程序清单4.8加载32位立即数……LDR R0,=IOPIN ;加载GPIO的存放器IOPIN的地址LDR R1,[R0] ;读取IOPIN存放器的值……LDR R0,=IOSETLDR R1,=0x00500500STR R1,[R0] ;IOSET=0x00500500……程序清单4.9软件延时……DELAYINOPNOPNOPSUBS R1,R1,#1BNE DELAYI……程序清单4.10 ARM到Thumb的状态切换;文件名:TEST8.S;功能:使用BX指令切换处理器状态;说明:使用ARMulate软件仿真调试AREA Example8,CODE,READONLYENTRYCODE32ARM_CODE ADR R0,THUMB_CODE+1BX R0 ;跳转并切换处理器状态 CODE16THUMB_CODEMOV R0,#10 ;R0=10MOV R1,#20 ;R1=20ADD R0,R1 ;R0=R0+R1BEND。

arm嵌入式系统基础教程(第二版)答案

arm嵌入式系统基础教程(第二版)答案

第1章嵌入式系统概述(1)举出3个本书中未提到的嵌入式系统的例子。

答:键盘、鼠标、扫描仪,机顶盒,数字空调。

(2)什么叫嵌入式系统?答:以应用为中心,计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本体积功耗严格要求的专门计算机系统(4)什么是嵌入式操作系统?为何要使用嵌入式操作系统?答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。

原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。

3.充分发挥了32位CPU的多任务潜力。

第2章ARM7体系结构1.基础知识(1)ARM7TDMI中的T、D、M、I的含义是什么?答:64 位乘法指令(带M 后缀的)、支持片上调试(带D 后缀的)、高密度16 位的Thumb 指令机扩展(带T 后缀的)·EmbededICE 观察点硬件(带I 后缀的)(2)ARM7TDMI采用几级流水线?使用何种存储器编址方式?答:3级(取指译码执行);冯·诺依曼结构,指令和数据共用一条32 位总线。

(3)ARM处理器模式和ARM处理器状态有何区别?答:ARM处理器模式是处理器在执行程序时在不同时刻所处的不同状态;ARM处理器状态处理器当前所执行的指令集。

(5)PC和LR分别使用哪个寄存器?答:PC:R15;LR:R14。

(6)R13寄存器的通用功能是什么?答:作为堆栈指针SP。

用于保存堆栈出入口处地址。

(7)CPSR寄存器中哪些位用来定义处理器状态?答:控制位T反映了正在操作的状态。

(位31~28:N、Z、C、V,条件代码标志位;27~8:保留位;7~0:I、F、T、M4~0,控制标志位。

)2.存储器格式答:无论是大端格式还是小端格式,R2的值与R1一致;地址0x4000单元的字节:大端:0x12、小端:0x78。

第3章ARM7TDMI(-S)指令系统1.基础知识(1)ARM7TDMI(-S)有几种寻址方式?“LDR R1,[R0,#0x08]”属于哪种寻址方式?答:有9种寻址方式:1.寄存器寻址 2.立即寻址 3.寄存器移位寻址 4.寄存器间接寻址 5.基址寻址 6.多寄存器寻址7.堆栈寻址8.相对寻址;9 块拷贝寻址“LDR R1,[R0,#0x08]”属于基址寻址。

课件:微处理器系统结构与嵌入式系统期中答案

课件:微处理器系统结构与嵌入式系统期中答案

26.D 27.C 28.B 29.A 30.C
31.A 32.A 33.C 34.D 35.D
二、填空题(共22分,每空1分)
• 1. 24 • 2.(1)512KB (或者128K字 或者128K*4字节)
(2)17 • 3.器或触发器(2)电容或电荷存储 • 5.(1)随机法(2)先进先出法(3)最近最少使用法
微处理器系统结构与嵌入式系 统设计期中考试题目及答案
一、单项选择题(每空1分,共35分)
1.B 2.A/D 3.D 4.A 5.D
6.B 7.C 8.B 9.B 10.C
11.D 12.A 13.B 14.D 15.A
16.D 17.D 18.D 19.B 20.C
21.C 22.C 23.B 24.D 25.A
• 6.后进先出或先进后出 • 7.存储信息的电容存在漏电回路,电极上的电荷会随时间
而泄露
• 8.(1)地址总线(2)数据总线(3)控制总线 • 9.取指令和执行指令交替串行进行,且只有一套总线 • 10.总线上的收发双方是否有共同的时钟信号,交互的方
式是通过时钟还是握手信号
11.(1)某一个物理存储单元占用了多个单元的存储空间,或多 个地址指向同一物理存储单元
(2)部分地址线既未参与片内寻址,也未参与片选译码,即对存 储器(或者接口)浮置或悬空
12.单位时间内,总线能传输的最大数据量,通常以每秒传输的字 节数表示
13.硬核 14.(1)总线请求(2)总线仲裁器
三、简答题(共29分,共5题)
四、设计题(共14分,共两题)

嵌入式系统课后习题-部分答案(PDF)

第一章1-1.简述嵌入式系统的定义。

嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。

1-2.简述嵌入式系统的组成。

从体系结构上看,嵌入式系统主要由嵌入式处理器、支撑硬件和嵌入式软件组成。

其中嵌入式处理器通常是单片机或微控制器,支撑硬件主要包括存储介质、通信部件和显示部件等,嵌入式软件则包括支撑硬件的驱动程序、操作系统、支撑软件及应用中间件等。

嵌入式系统的组成部分是嵌入式系统硬件平台、嵌入式操作系统和嵌入式系统应用。

嵌入式系统硬件平台为各种嵌入式器件、设备(如ARM 、PowerPC、Xscale、MIPS等);嵌入式操作系统是指在嵌入式Linux、uCLinux、WinCE等。

1-3.ARM7处理器使用的是(ARMv4)指令集。

ARM7内核采用冯·诺依曼体系结构,数据和指令使用同一条总线。

内核有一条3级流水线,执行ARMv4指令集。

1-6.ARM9采用的是(5)级流水线设计。

存储器系统根据哈佛体系结构(程序和数据空间独立的体系结构)重新设计,区分数据总线和指令总线。

第二章2-1.简述ARM可以工作在几种模式。

ARM处理器共有7种工作模式:用户模式(User)、快速终端模式(FIQ)、外部中断模式(IRQ)、特权模式(svc)、数据访问中止模式(Abort)、未定义指令中止模式(Undef)、系统模式(System)。

除用户模式外其他6种模式称为特权模式。

在特权模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式切换。

再除去系统模式,其余5种模式又称为异常模式。

2-2.ARM核有多少个寄存器?ARM处理器有如下37个32位长的寄存器:(1)30个通用寄存器;(2)6个状态寄存器:1个CPSR(Current Program Status Register,当前程序状态寄存器),5个SPSR(Saved Program Status Register,备份程序状态寄存器);(3)1个PC(Program Counter,程序计数器)。

嵌入式技术基础与实践第二版习题参考答案V10

嵌入式技术基础与实践(第二版)习题参考答案目录第1章概述习题参考答案 (1)第2章Freescale S08微控制器习题参考答案 (3)第3章第一个样例程序及工程组织习题参考答案 (5)第4章基于硬件构件的嵌入式系统开发方法习题参考答案 (8)第5章串行通信接口SCI 习题参考答案 (10)第6章GPIO的应用实例—键盘、LED与LCD 习题参考答案 (12)第7章定时器模块习题参考答案 (13)第8章串行外设接口SPI 习题参考答案 (14)第9章Flash存储器在线编程习题参考答案 (15)第10章集成电路互连总线I2C 习题参考答案 (18)第11章模数转换模块A/D 习题参考答案 (20)第12章系统开发其他模块应用习题参考答案 (21)第13章JM60的USB 2.0开发方法习题参考答案 (23)第14章DZ60的CAN总线开发方法习题参考答案 (27)第1章概述习题参考答案1.嵌入式系统的基本含义是什么?为什么说单片机是典型的嵌入式系统?答:即MCU的含义是:在一块芯片上集成了中央处理单元(CPU)、存储器(RAM/ROM 等)、定时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统。

大部分嵌入式系统以MCU为核心进行设计。

MCU从体系结构到指令系统都是按照嵌入式系统的应用特点专门设计的,它能很好地满足应用系统的嵌入、面向测控对象、现场可靠运行等方面的要求。

因此以MCU为核心的系统是应用最广的嵌入式系统。

2.简述嵌入式系统的特点以及应用领域。

答:嵌入式系统属于计算机系统,但不单独以通用计算机的面目出现;嵌入式系统开发需要专用工具和特殊方法;使用MCU设计嵌入式系统,数据与程序空间采用不同存储介质;开发嵌入式系统涉及软件、硬件及应用领域的知识;嵌入式系统的其他特点,比如紧张的资源,较高稳定性要求,低功耗,低成本等。

一般用于工业控制,智能家电,日常电子等领域。

3.比较MCU与CPU的区别与联系。

【嵌入式】嵌入式系统开发与应用第二版课后答案第二章(田泽)

【嵌⼊式】嵌⼊式系统开发与应⽤第⼆版课后答案第⼆章(⽥泽)复习⽤,⾃整理、%%犇orz——海底淤泥1尝试⽐较CISC体系结构和RISC体系结构的特点。

ARM为何采⽤RISC体系结构? CISC:增加指令集的复杂度,以芯⽚⾯积为代价 RISC:只执⾏最常⽤的指令,⼤部分复杂指令由简单指令合成 因为: 组织结构: 1RISC的硬连线的指令编码逻辑 2便于流⽔线执⾏ 3⼤多数RISC指令为单周期执⾏ 处理器: 1处理器管芯⾯积⼩ 2开发时间缩短,开发成本减低 3容易实现⾼性能,低成本的处理器2简述ARM体系结构的特点 1.Load/Store 体系结构 2.固定的32为指令 3.3地址指令格式3什么是Thumb技术,其优点是什么?与ARM指令集相⽐,Thumb指令集有哪些局限? Thumb是ARM体系结构的扩展 优点:提⾼了代码密度 局限: 1.完成相同操作时,Thumb需要更多的指令 2.Thumb指令集没有包含进⾏异常处理时需要的⼀些指令4什么是Thumb-2内核技术?它有哪些特点? Thumb-2内核技术是ARM体系的新指令集 特点:更⾼性能,更低功耗,更简短的代码长度5⽬前ARM处理器核有哪⼏种?简述ARM7TDMI内核的重要特性 处理器内核: ARM7TDMI ARM9TDMI ARM10TDMI ARM11 SecurCore Cortex 重要特性: 1.能实现ARM体系结构版本4T 2.⽀持Thumb指令集 3.32*8 DSP乘法器 4.32位寻址空间,4GB线性地址空间 5.包含ICE模块6分别以ARM7TDMI和ARM9TDMI为例,介绍3级流⽔线和5级流⽔线的执⾏过程,并进⾏相应的⽐较 三级流⽔:取指--->译码--->执⾏ 五级流⽔:取指--->译码--->执⾏--->缓冲/数据--->回写 ⽐较: 1三级流⽔译码不包含reg读,五级流⽔译码包含reg读 2三级流⽔执⾏包含reg读,移位/ALU,reg写,五级流⽔执⾏只包含位移/ALU 3五级流⽔增加了存储器数据访问过程,并将reg写单独分离为⼀个过程7ARM Cortex处理器包括哪⼏个系列?各有什么特点? ARM Cortex-A系列:微处理器核,能运⾏通⽤操作系统 ARM Cortex-R系列:微处理器核,运⾏实时操作系统 ARM Cortex-M系列:微控制核,功耗低,性能⾼8ARM微处理器⽀持哪⼏种⼯作模式?各个⼯作模式有什么特点? 7种: 特点: 1.⽤户 程序正常执⾏ 2.FIQ 快速中断模式,处理快速中断 3.IRQ 外部中断模式,处理普通中断 4.SVC 特权模式,处理软中断 5.ABT 中⽌模式,处理存储器故障 6.UNQ 未定义模式,处理未定义指令陷阱 7.系统 运⾏特权操作系统任务9ARM处理器共有多少个寄存器?这些寄存器在⽤户编程的功能中是如何划分的?ARM状态下的通⽤寄存器可分为哪⼏类? 31个通⽤寄存器,6个状态寄存器 ⽤户编程: R0~R14,R15(PC),CPSR ARM状态: 1.未分组寄存器R0~R7 2.分组寄存器R8~R14 3.程序计数器R1510简述ARM状态下分组寄存器R13 R14 R15 的功能以及R15使⽤的注意事项 R13 ⽤作堆栈指针SP R14 ⼦程序连接寄存器LR R15 程序计数器PC R15注意事项:由于ARM多级流⽔技术,R15的程序地址并不是当前指令的地址,指令“BX Rm”利⽤Rm的bit[0]来判断跳转到ARM还是thumb状态11简述ARM程序状态寄存器各位的功能 1条件码标志位 最⾼4位——N,Z,C,V N:补码状态下,N=0是⾮负数,N=1是负数 Z:Z=1表⽰结果为0,Z=0表⽰结果为⾮0 C:1.加法,c=1有进位 2.减法,c=0有借位 3.位移,c存储最后被移出的值 V:运算溢出V=1否则V=0 2.控制位 最低8位——I,F,T,M[4:0] I:I=1,禁⽌IRQ中断 F:F=1,禁⽌FRQ中断 T:T=0,ARM执⾏,T=1,Thumb执⾏ M[4:0]:记录当前模式 3.保留位 其他位保留作以后的扩展12试分析Thumb状态与ARM寄存器的关系 Thumb状态的R0~R7与ARM状态的R0~R7是⼀致的 Thumb状态的CPSR和SPSR与ARM状态的CPSR和SPSR是⼀致的 Thumb状态的SP映射到ARM状态的R13 Thumb状态的LR映射到ARM状态的R14 Thumb状态的PC映射到ARM状态的R1513ARM体系结构⽀持哪⼏种类型的异常?他们之间的优先级关系如何?各种异常与处理模式有何关系? 7种类型: 优先级: 处理模式: 复位 1 SVC 未定义的指令 6 UNQ 软件中断 6 SVC 指令预取中⽌ 5 ABT 数据访问中⽌ 2 ABT 外部中断请求 4 IRQ 快速中断请求 3 FIQ14简述ARM处理对异常中断响应过程 1.将CPSR的内容保存到要执⾏的异常中断SPSR中,以实现对处理器当前状态中断屏蔽位以及各个标志位的保存 2.设置当前状态寄存器的CPSR的相应位 3.将寄存器LR_<mode>设置为异常返回的地址,使异常处理程序执⾏完后能正确返回原程序 4给程序计数器PC强制赋值,使程序从相应的向量地址开始执⾏中断程序15ARM如何从异常中断处理程序返回?需要注意哪些问题 1.所有修改过的⽤户寄存器必须从处理程序的保护堆栈中恢复 2.将SPSR_<mode>寄存器内容复制到CPSR中,使得CPSR从相应的SPSR中恢复,即恢复被中断程序的处理器⼯作状态 3.根据异常类型将PC变回到⽤户指令流中的相应指令处 4.最后清除CPSR中的中断禁⽌标志位I/F16什么是ARM异常中断向量表?它有何作⽤?存储在什么地⽅? 异常中断向量表中指定了各异常中断与处理程序的对应关系 作⽤:每个异常中断对应异常中断向量表中4个字节,存放⼀个跳转指令或者⼀个向PC寄存器中赋值的数据访问指令LDR。

ARM嵌入式系统基础教程第二版课后习题答案,精品资料

第1章嵌入式系统概述(1)举出3个本书中未提到的嵌入式系统的例子。

答:键盘、鼠标、扫描仪。

(2)什么叫嵌入式系统?答:嵌入到对象体系中的专用计算机应用系统。

(3)什么叫嵌入式处理器?嵌入式处理器分为哪几类?答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。

分为3类:1.注重尺寸、能耗和价格; 2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。

(4)什么是嵌入式操作系统?为何要使用嵌入式操作系统?答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。

原因: 1.提高了系统的可靠性; 2.提高了开发效率,缩短了开发周期。

3.充分发挥了32位CPU的多任务潜力。

第2章ARM7体系结构1.基础知识(1)ARM7TDMI中的T、D、M、I的含义是什么?答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。

(2)ARM7TDMI采用几级流水线?使用何种存储器编址方式?答:3级;冯・诺依曼结构。

(3)ARM处理器模式和ARM处理器状态有何区别?答:ARM处理器模式体现在不同寄存器的使用上;ARM处理器状态体现在不同指令的使用上。

(4)分别列举ARM的处理器模式和状态?答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态。

(5)PC和LR分别使用哪个寄存器?答:PC:R15;LR:R14。

(6)R13寄存器的通用功能是什么?答:堆栈指针SP。

(7)CPSR寄存器中哪些位用来定义处理器状态?答:位31~28:N、Z、C、V,条件代码标志位;27~8:保留位;7~0:I、F、T、M4~0,控制标志位。

(8)描述一下如何禁止IRQ和FIQ的中断。

答:当控制位I置位时,IRQ中断被禁止,否则允许IRQ中断使能;当控制位F 置位时,FIQ中断被禁止,否则允许FIQ中断使能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
执行时间T=(100000*1.55)*(1/(40*10∧6) )=15.5/4*10∧(-3)= 3.875*10∧(-3)s= 3.875ms
2.15假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段,每一段的时间分别为∆t,2∆t和3∆t。在下列各种情况下,分别写出连续执行n条指令所需要的时间表达式。
逻辑运算OR和两个位的加法几乎相同。问题在于多个bit的乘或加运算无法用AND或OR运算替代,因为逻辑运算没有相应的进位机制。
2.6假设一台数码相机的存储容量是256MB,如果每个像素需要3个字节的存储空间,而且一张照片包括每行1024个像素和每列1024个像素,那么这台数码相机可以存放多少张照片?
3.2处理器内部有哪些基本操作?这些基本操作各包含哪些微操作?
处理器内部的基本操作有:取指、间接、执行和中断。其中必须包含取指和执行。
取指包含微操作有:经过多路器把程序计数器的值选送到存储器,然后存储器回送所期望的指令并将其写入指令寄存器,与此同时程序计数器值加1,并将新值回写入程序计数器。
间接有4个CPU周期,包含微操作有:第1周期把指令寄存器中地址部分的形式地址转到地址寄存器中;第2周期完成从内存取出操作数地址,并放入地址寄存器;第3周期中累加器内容传送到缓冲寄存器,然后再存入所选定的存储单元。
按数据格式可分为:并行总线、串行总线。
4.4评价一种总线的性能有那几个方面?
总线时钟频率、总线宽度、总线速率、总线带宽、总线的同步方式和总线的驱动能力等。
4.5微机系统什么情况下需要总线仲裁?总线仲裁有哪几种?各有什么特点?
总线仲裁又称总线判决,其目的是合理的控制和管理系统中多个主设备的总线请求,以避免总线冲突。当多个主设备同时提出总线请求时,仲裁机构按照一定的优先算法来确定由谁获得对总线的使用权。
(2)从性能上比较
随机逻辑在指令集和硬件设计上都进行了优化,因此在二者采用相同指令集时随机逻辑结构要更快一些。但微码结构可以实现更复杂指令集,因此可以用较少的指令完成复杂的功能,尤其在存储器速度受限时,微码结构性能更优。
3.15说明流水线体系结构中的5个阶段的操作。能否把流水线结构分为6阶段?如果可能,试给出你的方案。
软件要求固体化,大多数嵌入式系统的软件固化在只读存储器中;
要求高质量、高可靠性的软件代码;
许多应用中要求系统软件具有实时处理能力。
5、嵌入式系统和具体应用有机的结合在一起,它的升级换代也是和具体产品同步进行的,因此嵌入式系统产品一旦进入市场,就具有较长的生命周期。
6、嵌入式系统本身不具备自开发能力,设计完成以后用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。

第n条指令执行完的时间:tn= tn-1+∆t=6∆t+5∆t*(n-1)=(1+5n)∆t
(3)“取指令”、“分析”和“执行”重叠
当“取指令”、“分析”和“执行”重叠时,指令的执行过程如图所示:
第1条指令执行完的时间:t1=∆t+2∆t+3∆t=6∆t
第2条指令执行完的时间:t2= t1+3∆t=6∆t+3∆t*1
IP核:满足特定的规范和要求,并且能够在设计中反复进行复用的功能模块。它有软核、硬核和固核三种实现形式。
1.8 什么是嵌入式系统?嵌入式系统的主要特点有哪些?
概念:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗的严格要求的专用计算机系统,即“嵌入到应用对象体系中的专用计算机系统”。
每张照片所需空间为:1024*1024*3=3MB
则256M可存照片数为:256MB/3MB≈85张。
2.14某测试程序在一个40 MHz处理器上运行,其目标代码有100 000条指令,由如下各类指令及其时钟周期计数混合组成,试确定这个程序的有效CPI、MIPS的值和执行时间。
指令类型
指令计数
时钟周期计数

1.2以集成电路级别而言,计算机系统的三个主要组成部分是什么?
中央处理器、存储器芯片、总线接口芯片
1.3 阐述摩尔定律。
每18个月,芯片的晶体管密度提高一倍,运算性能提高一倍,而价格下降一半。
1.5 什么是SoC?什么是IP核,它有哪几种实现形式?
SoC:系统级芯片、片上系统、系统芯片、系统集成芯片或系统芯片集等,从应用开发角度出发,其主要含义是指单芯片上集成微电子应用产品所需的所有功能系统。
(2)下列无符号数中最大的数是( B )。
A. B.
C. D.
(3)在机器数(A )中,零的表示形式是唯一的。
A.补码B.原码
C.补码和反码D.原码和反码
(4)单纯从理论出发,计算机的所有功能都可以交给硬件实现。而事实上,硬件只实现比较简单的功能,复杂的功能则交给软件完成。这样做的理由是(BCD)。
(1)顺序执行方式
T= (∆t+2∆t+3∆t)*n=6n∆t
(2)仅“取指令”和“执行”重叠
当“取指令”和“执行”重叠时,指令的执行过程如图所示:
第1条指令执行完的时间:t1=∆t+2∆t+3∆t=6∆t
第2条指令执行完的时间:t2= t1+5∆t=6∆t+5∆t*1
第3条指令执行完的时间:t3= t2+5∆t=6∆t+5∆t*2
集中式(主从式)控制和分布式(对等式)控制。集中式特点:采用专门的总线控制器或仲裁器分配总线时间,总线协议简单有效,总体系统性能较低。分布式特点:总线控制逻辑分散在连接与总线的各个模块或设备中,协议复杂成本高,系统性能较高。
特点:1、嵌入式系统通常是面向特定应用的。
2、嵌入式系统式将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合的产物。
3、嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能。
4、嵌入式处理器的应用软件是实现嵌入式系统功能的关键,对嵌入式处理器系统软件和应用软件的要求也和通用计算机有以下不同点。
2.3完成下列逻辑运算
(1)1011 0101∨1111 0000 = 1111 0101
(2)1101 0001∧1010 1011 = 1000 0001
(3)1010 1011⊕0001 1100 = 1011 0111
2.4选择题
(1)下列无符号数中最小的数是( A )。
A. B.
C. D.
3.14微码体系结构与随机逻辑体系结构有什么区别?
(1)指令集的改变导致不同的硬件设计开销。
在设计随机逻辑结构时,指令集和硬件必须同步设计和优化,因此设计随机逻辑的结构比设计微码结构复杂得多,而且硬件和指令集二者中任意一个变化,就会导致另外一个变化。
在微码结构中,指令设计通过为微码ROM编写微码程序来实现的,指令集的设计并不直接影响现有的硬件设计。因此,一旦修改了指令集,并不需要重新设计新的硬件。
3.13什么是微代码体系结构?微指令的作用是什么?
在微码结构中,控制单元的输入和输出之间被视为一个内存系统。控制信号存放在一个微程序内存中,指令执行过程中的每一个时钟周期,处理器从微程序内存中读取一个控制字作为指令执行的控制信号并输出。
微指令只实现必要的基本操作,可以直接被硬件执行。通过编写由微指令构成的微代码,可以实现复杂的指令功能。微指令使处理器硬件设计与指令集设计相分离,有助于指令集的修改与升级,并有助于实现复杂的指令。

2.2完成下列逻辑运算
(1)101+1.01 = 110.01
(2)1010.001-10.1 = 111.101
(3)-1011.0110 1-1.1001 = -1100.1111 1
(4)10.1101-1.1001 = 1.01
(5)110011/11 = 10001
(6)(-101.01)/(-0.1) = 1010.1
流水线若分为5个阶段应包括:取指,译码,取操作数,执行,数据回写
流水线若分为6个阶段应包括:取指,译码,取操作数,执行,存储器操作,数据回写

4.3微机系统中总线层次化结构是怎样的?
按总线所处位置可分为:片内总线、系统内总线、系统外总线。
按总线功能可分为:地址总线、数据总线、控制总线。
按时序控制方式可分为:同步总线、异步总线。
A.提高解题速度
B.降低成本
C.增强计算机的适应性,扩大应用面
D.易于制造
(5)编译程序和解释程序相比,编译程序的优点是(D),解释程序的优点是(C)。
A.编译过程(解释并执行பைடு நூலகம்程)花费时间短
B.占用内存少
C.比较容易发现和排除源程序错误
D.编译结果(目标程序)执行速度快
2.5通常使用逻辑运算代替数值运算是非常方便的。例如,逻辑运算AND将两个位组合的方法同乘法运算一样。哪一种逻辑运算和两个位的加法几乎相同?这样情况下会导致什么错误发生?
整数算术
45 000
1
数据传送
32 000
2
浮点数
15 000
2
控制传送
8000
2
CPI=(45000/100000)*1+(32000/100000)*2+(15000/100000)*2+(8000/100000)*2=0.45*1+0.32*2+0.15*2+0.08*2=1.55
MIPS=40/1.55=25.8
3.3什么是冯·诺伊曼计算机结构的主要技术瓶颈?如何克服?
冯·诺伊曼计算机结构的主要技术瓶颈是数据传输和指令串行执行。可以通过以下方案克服:采用哈佛体系结构、存储器分层结构、高速缓存和虚拟存储器、指令流水线、超标量等方法。
3.5指令系统的设计会影响计算机系统的哪些性能?
相关文档
最新文档