ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版_第1页
ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版_第2页
ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版_第3页
ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版_第4页
ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版《ARM嵌入式系统结构与编程》习题答案第一章绪论国内嵌入式系统行业对“嵌入式系统”的定义是什么?如何理解?答:国内缺入式行业一个普遍认同的定义是:以应用为中心,以计算机技术为基础,软硕件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗严格要求的专业计算机系统。从这个定义可以看出戦入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的剪裁利用。因此有人把嵌入式系统比作是一个针对特定的应用而“量身定做”的专业计算机系统。嵌入式系统是从何时产生的,简述其发展历程。答:从20世纪70年代单片机的出现到目前各式各样的嵌入式微处理器,微控制器的大规模应用,I获入式系统己经有了30多年的发展历史。嵌入式系统的出现最初是基于单片机的。Intel公司1971年开发出第一片具有4位总线结构的微处理器4004,可以说是嵌入式系统的萌芽阶段。80年代初的8031是单片机历史上值得纪念的一页。20世纪80年代早期,出现了商业级的“实时操作系统内核”,在实时内核下编写应用软件可以使新产品的沿着更快,更节省资金。20世纪90年代实时内核发展为实时多任务操作系统。步入21世纪以來,恢入式系统得到了极大的发展。在硬件上,MCU的性能得到了极大的提升,特别是ARM技术的出现与完善,为嵌入式操作系统提供了功能强大的硬件载体,将嵌入式系统推向了一个崭新的阶段。当前最常用的源码开放的I校入式操作系统有哪些,请举出两例,并分析其特点。答:主要有嵌入式Linux和嵌入式实时操作内核uC/OS-II嵌入式Linux操作系统是针对嵌入式微控制器的特点而量身定做的一种Linux操作系统,包括常用的嵌入式通信协议和常用驱动,支持多种文件系统。主要有以下特点:源码开放,易于移植,内核小,功能强大,运行稳定,效率高等。uC/OS是源码工卡的实时嵌入式系统内核,主要有以下特点:源码公开,可移植性强,可固化,可剪裁,占先式,多任务,可确定性,提供系统服务等。举例说明嵌入式设备在工控设备中的应用。答:由于工业控制系统特别强调可靠性和实时性,“量身定做”的嵌入式控制系统恰能满足工业控制的需求。例如:工业过程控制,数字控制机床,电网设备监测,电力口动控制系统,石油化工监控等。嵌入式技术的发展趋势有哪些?答:未來嵌入式系统的发展趋势有:1.随着信息化与数字化的发展,嵌入式设备进行网络互联是未來发展的趋势。2.优化恢入式系统软硬件内核,提高系统运行速度,降低功耗和硬件成本。3.指令集的并行计算技术将引入嵌入式微处理器。4.憐入式微处理器将会向多核技术发展。5.嵌入式技术将引领信息时代。第2章ARM技术与ARM体系结构简述ARM处理器内核调试结构原理答:ARM处理器一般都带有嵌入式追踪宏单元ETM(EmbeddedTraceMacro),它是ARM公司自己推出的调试工具。ARM处理器都支持基J"JTAG(JointTestActionGroup联合测12试行动小组)的调试方法。它利用芯片内部的EmbeddedICE來控制ARM内核操作,可完成单步调试和断点调试等操作。当CPU处理单步执行完毕或到达断点处时,就可以在宿主机端查看处理器现场数据,但是它不能在CPU运行过程中对实时数据进行仿真。ETM解决了上述问题,能够在CPU运行过程中实时扫描处理器的现场信息,并数据送往TAP(TestAccessPort)控制器。上图中分为三条扫描链(图中的粗实线),分别用來监视ARM核,ETM,嵌入式ICE的状态。分析ARM7TDMI-S各字母所代表的含义。答:ARM7TDMI0CS中ARM是AdvancedRISCMachines的缩写7是系列号:T:支持高密度16位的Thumb指令集;D:支持JTAG片上调试;M:支持用于长乘法操作(64位结果)ARM指令,包含快速乘法器:;I:带有嵌入式追踪宏单元ETM,用来设置断点和观察点的调试硬件;S:可综合版本,意味着处理器内核是以源代码形式提供的。这种源代码形式乂可以编译成一种易于EDA工具使用的形式。ARM处理器的匸作模式有哪儿种,其中哪些为特权模式,哪些为异常模式,并指出理器在什么情况下进入相应的模式。答:ARM技术的设计者将ARM处理器在应用中可能产生的状态进行了分类,并针对同一类型的异常状态设定了一个固定的入口点,当异常产生时,程序会口动跳转到对应异常入口处进行异常服务。?1.用户模式:非特权模式,也就是正常程序执行的模式,大部分任务在这种模式下执行。在用户模式下,如果没异常发生,不允许应用程序自行改变处理器的工作模式,如果有异常发生,处理器会自动切换工作模式?2.FIQ模式:也称为快速中断模式,支持高速数据传输和通道处理,当一个高优先级(fast)中断产生时将会进入这种模式。?3.IRQ模式:也称为普通中断模式,:当一个低优先级(normal)中断产生时将会进入这种模式。在这模式下按中断的处理器方式乂分为向量中断和非向量中断两种。通常的中断处理都在IRQ模式下进行。?4.SVC模式:称之为管理模式,它是一种操作系统保护模式。当复位或软中断指令执行时处理器将进入这种模式。23?5.中止模式:当存取异常时将会进入这种模式,用来处理存储器故障、实现虚拟存储或存储保护。?6.未定义指令异常模式:当执行未定义指令时会进入这种模式,主要是用來处理未定义的指令陷阱,支持硬件协处理器的软件仿真,因为未定义指令多发生在对协处理器的操作上。?7.系统模式:使用和User模式相同寄存器组的特权模式,用來运行特权级的操作系统任务。?在这7种工作模式中,除了用户模式以外,其他6种处理器模式可以称为特权模式,在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。?在这6种特权模式中,除了系统模式外的其他5种特权模式乂称为异常模式,每种异常都对应有口己的异常处理入口点。分析程序状态寄存器(PSR)各位的功能描述,并说明C,Z,N,V在什么情况下进行置位和清零。答:?条件位:?N=1-结果为负,0-结果为正或0?Z二1-结果为0, 0-结果不为0?C二1-进位, 0-借位?V=1-结果溢出,0结果没溢出?Q位:?仅ARM5TE/J架构支持?指示增强型DSP指令是否溢出?中断禁止位:?I=1:禁止IRQ.?F=1:禁止FIQ.?TBit?仅人凶xT架构支持?T=0:处理器处于ARM状态?T=1:处理器处于Thumb状态?Mode位(处理器模式位):?Ob10000User?OblOOOlFIQ?OblOOlOIRQ?OblOOllSupervisor34?OblOlll?ObllOll?OblllllAbortUndefinedSystem简述ARM处理器异常处理和程序返回的过程。答:只要正常的程序流被暂时中止,处理器就进入异常模式。例如响应一个來口外设的中断。在处理异常之前,ARM7TDMI内核保存当前的处理器状态,这样当处理程序结束时可以恢复执行原來的程序。如果同时发生两个或更多异常,那么将按照固定的顺序來处理异常。异常或入口返回指令处理器模式优先级BLSWIMOVPC,R146653421 0x000000080x00000004OxOOOOOOOC0x0000001C0x000000180x000000100x00000000向量表偏移MOVSPC,R14_svcSVC未定义的指令MOVSPC,R14_undUND预取指中止快中断中断数据中止复位SUBSPC,R14_abt,#4SUBSPC,R14_fiq,#4SUBSPC,R14_irq,#4SUBSPC,R14_abt,#8无ABTFIQIRQABTSVC在异常发生后,ARM7TDMI内核会作以下工作:1.在适当的LR中保存下一条指令的地址2.将CPSR复制到适当的SPSR中:3.将CPSR模式位强制设置为与异常类型相对应的值:4.强制PC从相关的异常向量处取指。ARM7TDMI内核在中断异常时置位中断禁止标志,这样可以防止不受控制的异常嵌套。注:异常总是在ARM状态中进行处理。当处理器处T-Thumb状态时发生了异常,在异常向量地址装入PC时,会自动切换到ARM状态。当异常结束时,异常处理程序必须:1.将LR中的值减去偏移量后存入PC,偏移量根据异常的类型而有所不同;2.将SPSR的值复制回CPSR;3.清零在入口置位的中断禁止标志。注:恢复CPSR的动作会将T、F和I位口动恢复为异常发生前的值。ARM处理器字数据的存储格式有哪两种?并指出这两种格式的区别。答:ARM7TDMI处理器可以将存储器中的字以下列格式存储?大端格式(Big-endian)45?小端格式(Little-endian)?小端存储器系统: 在小端格式中,高位数字存放在高位字节中。因此存储器系统字节0连接到数据线7〜0。?大端存储器系统: 在大端格式中,高位数字存放在低位字节中。因此存储器系统字节0连接到数据线31〜24。分析带有存储器访问指令(LDR)的流水线运行情况,并用图示说明流水线的运行机制。答:存储器访问指令LDR流水线举例取指的存储器访问和执行的数据路径占用都是不可同时共享的资源,对丁•多周期指令來说,如果指令复杂以至于不能在单个时钟周期内完成执行阶段,就会产生流水线阻塞。对存储器的访问指令LDR是非单周期指令LDR指令的执行,访问存储器,回写寄存器(占用了3个周期)。造成了MOV指令的执行被阻断。简述ARM9的5级流水线每一级所完成的功能和实现的操作。答:ARM920在指令操作上采用5级流水线.取指:从指令Cache中读取指令。译码:对指令进行译码,识别出是对哪个寄存器进行操作并从通用寄存器中读取操作数。执行:进

温馨提示

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

评论

0/150

提交评论