《ARM嵌入式常用块与综合系统设计实例精讲》配套练习题答案.doc

《ARM嵌入式常用块与综合系统设计实例精讲》配套练习题答案.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《ARM嵌入式常用块与综合系统设计实例精讲》配套练习题答案

《ARM嵌入式常用模块与综合系统设计实例精讲》练习题与答案 第1章: 填空题 1.ARM内核有四个功能模块,即T、D、M、I,可供生产厂商根据不同用户的要求来配置生产ARM芯片。 2.ARM7TDMI与ARM720T的一个重要区别在于后者有存储空间管理单元(MMU)、8K Cache片内缓存(提高CPU性能)。 3.ARM芯片主要封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式。 4.ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。 5.ARM体系结构可用两种方法存储字数据,具体为大端格式、小端格式。 6.协处理器主要控制:片内的MMU、指令和数据缓存(IDC)、写缓冲(Write Buffer)。 问答题: 1.简单描述ARM内核的四个功能模块,各自具备什么功能特点? ARM内核有四个功能模块T、D、M、I,可供生产厂商根据不同用户的要求来配置生产ARM芯片。 其中T功能模块表示16位Thumb,可以在兼顾性能的同时减少代码尺寸。M功能模块表示8位乘法器。D功能模块表示Debug,该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。 I功能模块表示EmbeddedICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。 2.一个ARM720T内核,基本由哪四部分组成? (1)ARM7TDMI CPU核。该CPU核支持Thumb指令集、核调试、增强的乘法器、JTAG及嵌入式ICE。它的时钟速率可编程为18MHz、36MHz、49MHz、74MHz。 (2)内存管理单元(MMU)与ARM710核兼容,并增加了对Windows CE的支持。该内存管理单元提供了地址转换和一个有64个项的转换旁路缓冲器。 (3)8KB单一指令和数据高速缓冲存储器,以及一个四路相联高速缓冲存储器控制器。 (4)写缓冲器Write Buffer。 3.通用寄存器包括R0~R15,可以分为具体哪三类? (1)未分组寄存器R0~R7; (2)分组寄存器R8~R14; (3)程序计数器PC(R15)。 4.请描述Thumb状态下的寄存器与ARM状态下的寄存器有什么关系? (1)Thumb状态下和ARM状态下的R0~R7是相同的。 (2)Thumb状态下和ARM状态下的CPSR和所有的SPSR是相同的。 (3)Thumb状态下的SP对应于ARM状态下的R13。 (4)Thumb状态下的LR对应于ARM状态下的R14。 (5)Thumb状态下的程序计数器对应于ARM状态下的R15。 5.当一个异常出现以后,ARM微处理器会执行哪几步操作? (1)将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行。若异常是从ARM状态进入,则LR寄存器中保存的是下一条指令的地址(当前PC+4或PC+8,与异常的类型有关);若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量,这样,异常处理程序就不需要确定异常是从何种状态进入的。例如:在软件中断异常SWI,指令 MOV PC,R14_svc总是返回到下一条指令,不管SWI是在ARM状态执行,还是在Thumb状态执行。 (2)将CPSR复制到相应的SPSR中。 (3)根据异常类型,强制设置CPSR的运行模式位。 (4)强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处。 第2章: 填空题 1.ARM微处理器在较新的体系结构中支持两种指令集:ARM指令集、Thumb指令集。 2.ARM处理器有9种基本寻址方式,分别是:寄存器寻址、立即寻址、寄存器偏移寻址、寄存器间接寻址、基址寻址、多寄存器寻址、堆栈寻址、块拷贝寻址、相对寻址。 3.ARM指令集可以分为6类,分别是:跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、Load/Store指令、协处理器指令、异常中断产生指令。 4.在ARM的汇编程序中,有如下几种伪指令:符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令、其他伪指令。 5.C/C++的混合编程通常有以下几种方式:在C/C++代码中嵌入汇编指令;从汇编程序中访问C程序变量;汇编程序、C/C++程序间的相互调用。 6.opcode{cond}{S}Rd,Rn, shifter_operand 其中: opcode是指令操作符编码; cond 是指令执行的条件编码; S决定指令的操作是否影响CPSR的值; Rd是目标寄存器编码; Rn是包含第1个操作数的寄存器编码; shifter_operand 表示第2个操作数。 2.表示递增和递减的满堆栈和空堆栈有哪几种组合,请比较它

文档评论(0)

chengben002424 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档