嵌入式系统课后习题及答案
- 格式:doc
- 大小:180.05 KB
- 文档页数:5
嵌⼊式系统课后答案嵌⼊式系统2011作业(⾮标准答案,仅供参考)第1章嵌⼊式系统概述 1、什么是嵌⼊式系统?答:嵌⼊式系统指的是以应⽤为中⼼和以计算机技术为基础的,并且软硬件是可裁剪的,能满⾜应⽤系统对功能、可靠性、成本、体积、功耗等指标严格要求的专⽤计算机系统。
3、根据嵌⼊式系统的复杂程度,嵌⼊式系统可分为哪4类?答:1:单个微处理器;2:嵌⼊式处理器可扩展的系统; 3:复杂的嵌⼊式系统; 4:在制造或过程控制中使⽤的计算机系统。
5、从硬件系统来看,嵌⼊式系统由哪⼏部份组成?画出简图。
答:P11图1-42.2 回答下列关于ARM 编程模式的问题(1)在该模式下有多少通⽤寄存器(2)CPSR 的作⽤是什么(3)Z 位的作⽤是什么(4)程序计数器保存在何处答(1)31个通⽤寄存器(2)为状态寄存器,保存当前的状态,可以在任何模式下访问(3)Z=1 运算结果为0 Z=0 运算结果不为0 (4)R15(PC)2.3 下列的arm 条件码的含义是什么(1)EQ (2)NE (3)MI (4)VS (5)GE (6)LT 答(1)z 置位相等 (2)z 清零不相等 (3)n 置位负数 31个通⽤寄存pc ,6个状~R7不分组,R8~R14按模式分组,R15为程序计数器,CPSR 为状态寄存器,SPSR 为保存程序状态寄存器。
R13为堆栈指针寄存器,R14为链接寄存器。
CPSR 在各种模式下多可以访问,⽽在⽤户模式及系统模式下SPSR 不可以被访问。
2.6若寄存器R1=0x01020304,分别按照⼤端模式和⼩端模式存储在0x30000字单元中,试分别写出两种模式下内存存储内容,并标出内存地址答⼤端模式 0x30000 01 0x30001 02 0x30002 03 0x30003 04 ⼩端模式 0x30000 04 0x30001 030x30002 02 0x30003 012.7 ARM 存储器的存储周期有⼏种类型?对应于Cache 访问和存储器访问是何存储周期?答:ARM 存储器有4种存储周期:空闲周期,⾮顺序周期,顺序周期,协处理器寄存器传送周期。
思考题及习题1.写出5条指令,每条指令就源操作数而言,其寻址方式分别为:寄存器寻址、多寄存器寻址、立即数寻址、寄存器间接寻址、基址变址寻址。
寄存器寻址:ADD R0,R1,R2 多寄存器寻址:LDMIA R0,{R1-R4}立即数寻址:ADD R0,R0,#1 寄存器间接寻址:LDR R0,[R1]基址变址寻址:LDR R0,[R1,#-4]2. 若系统堆栈设置在数据区:0x2100000~x2100200范围内,分别说明以FA、FD、EA、ED方式组织堆栈,初始化时,R13所指向的地址单元。
FA:LDR R13,=0x20FFFFC; EA:LDR R13,=0x2100000;FD:LDR R13,=0x2100204; ED:LDR R13,=0x2100200;3.说明转移指令B L1”中的标号L1,在当前指令的什么范围内有效。
+/-32M4.说明转移指令“BX R0”的转移范围,R0取何值可转移到ARM指令处、R0取何值可转移到THUMB指令处。
Rn[0]=0,转移到ARM指令处;Rn[0]=1,转移到THUMB指令处。
5.编程实现:若R0=0,则转移到标号L0处;若R0=1,则转移到标号L1处;若R0=2,则转移到标号L2处,否则不转移。
CMP R0,#0BEQU L0CMP R0,#1BEQU L1CMP R0,#2BEQU L26.除了转移指令“B、BX”外,还有什么指令可实现程序的转移,举例说明。
MOV R15,R07.编程实现:100+101+102+…+200,其和存于R0。
mov r0,#100 ;需要相加100次mov r1,#100 ;最初的和为1mov r2,#101 ;最初的加数为101l1 add r1,r1,r2 ;和+加数add r2,r2,#1 ;加数+1subs r0,r0,#1 ;调整循环相加次数bne l1 ;循环相加次数不为0,则循环进行end8.如何实现128位数的减法,举例说明。
嵌入式系统原理及应用课后答案嵌入式系统是一种专门针对特定应用领域设计的计算机系统,它通常被嵌入到其他设备中,用于控制设备的特定功能。
嵌入式系统具有体积小、功耗低、性能高、成本低等特点,广泛应用于消费类电子产品、工业控制、汽车电子、医疗设备等领域。
本文将从嵌入式系统的原理及应用方面展开讨论,并提供课后答案供学习者参考。
嵌入式系统的原理主要涉及到硬件和软件两个方面。
在硬件方面,嵌入式系统通常采用专用的微处理器或微控制器作为核心处理器,配合外围设备和接口电路,构成一个完整的系统。
而在软件方面,嵌入式系统的设计通常采用实时操作系统,以保证系统对外部事件的及时响应和处理能力。
此外,嵌入式系统的软件开发通常采用嵌入式开发工具,如编译器、调试器、仿真器等,以便开发人员能够方便地进行软件开发和调试工作。
在嵌入式系统的应用方面,它广泛应用于各种领域。
在消费类电子产品中,嵌入式系统被应用于智能手机、数码相机、家用电器等产品中,为这些产品提供了强大的功能和高效的性能。
在工业控制领域,嵌入式系统被应用于工业自动化设备、机器人、传感器等设备中,为工业生产提供了智能化的控制和监测能力。
在汽车电子领域,嵌入式系统被应用于发动机控制、车载娱乐、车载导航等系统中,提高了汽车的性能和安全性。
在医疗设备领域,嵌入式系统被应用于医疗影像设备、生命体征监测设备等产品中,为医疗诊断和治疗提供了可靠的技术支持。
针对以上内容,以下是嵌入式系统原理及应用的课后答案:1. 什么是嵌入式系统?它的特点是什么?嵌入式系统是一种专门针对特定应用领域设计的计算机系统,它通常被嵌入到其他设备中,用于控制设备的特定功能。
嵌入式系统的特点包括体积小、功耗低、性能高、成本低等。
2. 嵌入式系统的原理包括哪些方面?嵌入式系统的原理主要涉及到硬件和软件两个方面。
在硬件方面,嵌入式系统通常采用专用的微处理器或微控制器作为核心处理器,配合外围设备和接口电路,构成一个完整的系统。
第一章思考与练习1、举出3个书本中未提到的嵌入式系统的例子。
答:红绿灯控制,数字空调,机顶盒2、什么叫嵌入式系统嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
3、什么叫嵌入式处理器嵌入式处理器分为哪几类嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。
嵌入式微处理器(Embedded Microprocessor Unit, EMPU)嵌入式微控制器(Microcontroller Unit, MCU)嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP)嵌入式片上系统(System On Chip)4、什么是嵌入式操作系统为何要使用嵌入式操作系统是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。
其次,提高了开发效率,缩短了开发周期。
再次,嵌入式实时操作系统充分发挥了 32 位 CPU 的多任务潜力。
第二章1、嵌入式系统项目开发的生命周期分哪几个阶段各自的具体任务是什么项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。
识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。
提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。
执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。
结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。
2、为何要进行风险分析嵌入式项目主要有哪些方面的风险在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。
需求风险;时间风险;资金风险;项目管理风险3、何谓系统规范制定系统规范的目的是什么规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。
ARM嵌入式系统结构与编程习题答案(全)《arm嵌入式系统结构与编程》习题答案第一章为绪论1.国内嵌入式系统行业对“嵌入式系统”的定义是什么?如何理解?答:国内嵌入式行业普遍接受的定义是:以应用为中心,以计算机技术为基础,软硬件可定制,满足应用系统在功能、可靠性、成本、体积和功耗等方面的严格要求的专业计算机系统。
从这个定义可以看出,嵌入式系统与应用紧密结合,具有很强的特殊性。
它必须根据实际系统需求进行合理定制和使用。
因此,一些人将嵌入式系统比作为特定应用“量身定制”的专业计算机系统。
2.嵌入式系统是从何时产生的,简述其发展历程。
答:从20世纪70年代单片机的出现到各种嵌入式微处理器和微控制器的大规模应用,嵌入式系统已有30多年的发展历史。
嵌入式系统的出现最初是基于单片机的。
intel公司1971年开发出第一片具有4位总线结构的微处理器4004,可以说是嵌入式系统的萌芽阶段。
80年代初的8051是单片机历史上值得纪念的一页。
20世纪80年代早期,出现了商业级的“实时操作系统内核”,在实时内核下编写应用软件可以使新产品的沿着更快,更节省资金。
20世纪90年代实时内核发展为实时多任务操作系统。
步入21世纪以来,嵌入式系统得到了极大的发展。
在硬件上,mcu的性能得到了极大的提升,特别是arm技术的出现与完善,为嵌入式操作系统提供了功能强大的硬件载体,将嵌入式系统推向了一个崭新的阶段。
3.最常用的开源嵌入式操作系统是什么?请举两个例子并分析它们的特点。
答:主要有嵌入式Linux和嵌入式实时操作内核UC/OS II嵌入式linux操作系统是针对嵌入式微控制器的特点而量身定做的一种linux操作系统,包括常用的嵌入式通信协议和常用驱动,支持多种文件系统。
主要有以下特点:源码开放,易于移植,内核小,功能强大,运行稳定,效率高等。
UC/OS是源代码工作卡的实时嵌入式系统内核。
它主要具有以下特点:开源、可移植性强、固化、定制、抢占、多任务、确定性、提供系统服务等。
嵌入式系统原理及应用课后答案嵌入式系统是一种专门为特定应用设计的计算机系统,它通常被嵌入到更大的机器或系统中,以执行特定的任务或功能。
嵌入式系统通常包括处理器、存储器、输入/输出设备和操作系统。
它们被广泛应用于消费类电子产品、工业自动化、汽车、医疗设备等领域。
嵌入式系统的原理主要包括硬件和软件两个方面。
硬件方面,嵌入式系统通常采用专用的微处理器或微控制器,以及各种外围设备。
软件方面,嵌入式系统的软件设计需要考虑系统的实时性、稳定性和可靠性,通常采用实时操作系统来管理系统资源和调度任务。
在嵌入式系统的应用中,通常需要考虑系统的功耗、成本、体积和性能等因素。
因此,嵌入式系统的设计需要在满足功能需求的同时,尽可能地减小系统的功耗和成本,同时保证系统的性能和稳定性。
嵌入式系统的应用涵盖了各个领域。
在消费类电子产品中,嵌入式系统被广泛应用于智能手机、平板电脑、智能家居设备等产品中。
在工业自动化领域,嵌入式系统被应用于各种控制系统和监控系统中,用于实现自动化生产和设备监控。
在汽车领域,嵌入式系统被应用于车载电子系统、发动机控制系统、车身控制系统等方面。
在医疗设备领域,嵌入式系统被应用于各种医疗设备和健康监测设备中,用于实现医疗诊断和健康监测功能。
在嵌入式系统的设计和开发过程中,需要考虑系统的可靠性和安全性。
在软件开发过程中,需要采用合适的开发工具和方法,进行严格的软件测试和验证,以确保系统的稳定性和可靠性。
在硬件设计过程中,需要考虑系统的抗干扰能力和可靠性,以确保系统在各种环境条件下能够正常工作。
总的来说,嵌入式系统在现代社会中扮演着越来越重要的角色,它已经深入到我们生活的方方面面。
随着科技的不断发展,嵌入式系统将会在更多的领域得到应用,为我们的生活带来更多的便利和创新。
希望通过对嵌入式系统原理及应用的学习,能够更好地理解和应用嵌入式系统,为未来的发展做出贡献。
第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中断使能。
ARM嵌入式系统结构与编程习题答案(全)《arm嵌入式系统结构与编程》习题答案第一章绪论1.国内嵌入式系统行业对“嵌入式系统”的定义就是什么?如何认知?答:国内嵌入式行业一个普遍认同的定义是:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗严格要求的专业计算机系统。
从这个定义可以看出嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的剪裁利用。
因此有人把嵌入式系统比作是一个针对特定的应用而“量身定做”的专业计算机系统。
2.嵌入式系统从何时产生的,详述其发展历程。
答:从20世纪70年代单片机的出现到目前各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了30多年的发展历史。
嵌入式系统的发生最初就是基于单片机的。
intel公司1971年研发出来第一片具备4十一位总线结构的微处理器4004,可以说道就是嵌入式系统的原始社会阶段。
80年代初的8051就是单片机历史上难忘的一页。
20世纪80年代早期,发生了商业级的“实时操作系统内核”,在实时内核下撰写应用软件可以并使新产品的沿着更慢,更节省资金。
20世纪90年代实时内核发展为实时多任务操作系统。
步入21世纪以来,嵌入式系统获得了很大的发展。
在硬件上,mcu的性能获得了很大的提高,特别就是arm技术的发生与健全,为嵌入式操作系统提供更多了功能强大的硬件载体,将嵌入式系统推至了一个崭新的阶段。
3.当前最常用的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点。
答:主要有嵌入式linux和嵌入式实时操作内核uc/os-ii嵌入式linux操作系统就是针对嵌入式微控制器的特点而量身定做的一种linux操作系统,包含常用的嵌入式通信协议和常用驱动,积极支持多种文件系统。
主要存有以下特点:源码对外开放,不易移殖,内核大,功能强大,运转平衡,效率高等。
uc/os是源码工卡的实时嵌入式系统内核,主要有以下特点:源码公开,可移植性强,可固化,可剪裁,占先式,多任务,可确定性,提供系统服务等。
嵌入式系统习题答案文字简答、问答类题目见教材3.2 R0和R1中有两个32位数,若R0>R1,则R0=R0-R1;若R0<R1,则R1=R1-R0;若R0=R1,则R1、R0保持不变。
1)请用CMP、B和SUB指令完成上述操作。
2)请用条件SUB指令完成上述操作。
解答:(已调试通过)1、用CMP、B和SUB指令AREA StrCopy, CODE, READONLYENTRYstartMOV R0,#3MOV R1,#2CMP R0,R1BLT LessBGT MoreB stopLess SUB R1,R1,R0B stopMore SUB R0,R0,R1stopB stop2、用条件SUB指令AREA StrCopy, CODE, READONLYENTRYstartMOV R0,#3MOV R1,#2CMP R0,R1SUBLT R1,R1,R0SUBGT R0,R0,R1stopB stop3.3 用合适的指令实现以下功能1)R0 =16mov R0,#162)R1 = R0 × 4MOV R1,R0,LSL #23)R0 =R1/16Mov r0,r1, LSR #44)R1 = R2 × 7SUB R1, R2, R2, LSL #33.5下列指令序列完成什么功能?ADD R0, R1, R1, LSL #1SUB R0, R0, R1, LSL #4ADD R0, R0, R1, LSL #7解答:1、R0=R0+2*R12、R0=R0-16*R13、R0=R0+128*R14.7试编写程序,计算2+4+6+8+…+2N的值解答:(已调试通过)方法一N EQU 3AREA StrCopy, CODE, READONLYENTRYstartMOV R0,#0MOV R1,#NL1MOV R2,R1,LSL #1ADD R0,R0,R2SUB R1,R1,#1CMP R1,#0BEQ stopB L1stopB stop方法二N EQU 3AREA StrCopy, CODE, READONLY ENTRYstartMOV R0,#0MOV R1,#1L1MOV R2,R1,LSL #1ADD R0,R0,R2ADD R1,R1,#1SUB R2,R1,#1CMP R2,#NBEQ stopB L1stopB stop方法三EXPORT Add2T o2N ; 声明程序可被外部引用EXPORT START ; 声明程序入口标号START 可被外部引用NNUM EQU 10 ; 符号定义伪指令,NNUM 代表问题中的N ,此处N = 10AREA Add2T o2N, CODE, READONLYENTRYSTARTMOV R0, #NNUM ; 问题中的加数,从N 递减至0 ,初始值为N MOV R1, #0 ; 问题中的结果保存在R1 中,初始值为0ADDDECCMP R0, #0BEQ MUTTWO ; 当R0 == 0 时跳出累加例程ADD R1, R1, R0 ; 将当前的加数R0 累加到结果R1 中SUB R0, R0, #1 ; 加数R0 递减B ADDDEC ; 重复累加,直到加数为0MUTTWOMOV R0, R1, LSL #1 ; 将R1 中保存的累加结果左移1 位,即乘以2 ,保存到R0STOPMOV R0, #0x18LDR R1, =0x20026SWI 0x123456END ; 结束。
第1章 嵌入式系统基础 1. 什么是嵌入式系统?它由哪几部分组成?有何特点?写出你所想到的嵌入式系统。 答:(1)定义:国内对嵌入式系统的一般定义是:以应用为中心,以计算机技术为基础,软硬件可裁剪,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。 (2)组成:嵌入式处理器、外围设备、嵌入式操作系统和应用软件等几部分组成。 (3)特点:a.软硬件一体化,集计算机技术、微电子技术、行业技术于一体; b.需要操作系统支持,代码小,执行速度快; c.专用紧凑,用途固定,成本敏感; d.可靠性要求高;e.多样性,应用广泛,种类繁多。 (4)嵌入式系统:个人数字助理(PDA)、机顶盒(STB)、IP电话。 2. 嵌入式处理器分为哪几类? 答:(1)低端的微控制器(MicroController Unit,MCU); (2)中高端的嵌入式微处理器(Embeded MicroProcessor Unit,EMPU); (3)通信领域的DSP处理器(Digital Signal Processor,DSP); (4)高度集成的片上系统(System on Chip,SoC)。 3. ARM英文原意是什么?它是一个怎样的公司?其处理器有何特点? 答:(1)英文原意:Advanced RISC Machines。高级精简指令集机器。 (2)公司简介:该公司是全球领先的16/32位RISC微处理器知识产权设计供应商,通过将其高性能、低成本、低功耗的RISC微处理器、外围和系统芯片设计技术转让给合作伙伴来生产各具特色的芯片。ARM公司已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的RISC标准。 (3)其处理器特点:a.小体积、低功耗、低成本而高性能;b.16/32位双指令集;c.全球的合作伙伴众多。 4. 什么是实时系统?它有哪些特征?如何分类? 答:(1)实时系统的定义:实时系统(Real Time System)是指产生系统输出的时间对系统至关重要的系统。 (2)特征:实时性、并行性、多路性、独立性、可预测性、可靠性。 (3)分类:根据响应时间的不同,实时系统可分为3种类型:强实时系统、弱实时系统、一般实时系统。 根据确定性的不同,实时系统可分为2种类型:硬实时、软实时。 5. RTOS由哪几部分组成?它有哪些特点?与一般操作系统相比有何不同? 答:(1)组成:实时内核、网络组件、文件系统、图形用户界面。 (2)特点:a.支持异步事件的响应;b.中断和调度任务的优先级机制;c.支持抢占式调度;d.确定的任务切换时间和中断延迟时间;e.支持同步。 (3)与一般OS的不同: a.实时性:响应速度快,只有几微秒;执行时间确定,可预测; b.代码尺寸小:只有10~100KB,节省内存空间,降低成本; c.应用程序开发较难; d.需要专用开发工具:仿真器、编译器和调试器等。 6. 单片机系统、嵌入式系统和SOC系统三者有何区别和联系? 答:(1)目前嵌入式系统的主流是以32位嵌入式微处理器为核心的硬件设计和基于实时操作系统(RTOS)的软件设计; (2)单片机系统多为4位、8位、16位机,不适合运行操作系统,难以进行复杂的运算及处理功能; (3)嵌入式系统强调基于平台的设计、软硬件协同设计,单片机大多采用软硬件流水设计; (4)嵌入式系统设计的核心是软件设计(占70%左右的工作量),单片机系统软硬件设计所占比例基本相同。 (5)SoC是嵌入式系统的最高实现形式,它集成了许多功能模块,它的核心技术是IP(Intellectual Property Core,知识产权核)核。 7. 无 第2章 嵌入式系统开发过程
1. 嵌入式系统开发过程分为哪几个阶段?每个阶段的特点是什么? 答:(1)需求分析阶段:a.对问题的识别和分析;b.制定规格说明文档;c.需求评审。 (2)设计阶段:a.数据流分析;b.划分任务;c.定义任务间的接口。 (3)生成代码阶段:a.代码编程;b.交叉编译和链接;c.交叉调试;d.测试。 (4)固化阶段 2. 嵌入式系统有哪几种调试方式?现在最流行的是哪种?使用什么接口? 答:(1)调试方式:源程序模拟器方式、监控器方式、仿真器方式。 (2)现在最流行的是仿真器方式,使用JTAG(Joint Test Action Group,联合测试行动组)接口。 3. 什么是板级支持包?它一般应完成哪些工作? 答:(1)定义:有些嵌入式操作系统的内核明确分为两层,上层一般称为“内核”,而底层则称为“硬件抽象层”或“硬件适配层”,缩写为HAL,有的厂商将硬件抽象层称为BSP,即板级支持包(Board Support Package)。 (2)主要完成工作:a.在系统启动时,对硬件进行初始化。B.为驱动程序提供访问硬件的手段。 (3)主要作用:消除硬件差异。
第3章 ARM体系结构 1.ARM的英文全名是什么?ARM处理器有什么特点? 答:见第1章课后习题第3题。 2.ARM7和ARM9在流水线方面有何不同? 答:ARM7是3级流水线结构,ARM9是5级流水线结构。AR ]M9把3级流水线中的执行阶段的操作进行再分配,即把执行阶段中的“寄存器读”插在译码阶段中完成,把“寄存器写”安排在另一级(即第5级)完成,同时,在该级之前,再安排一级(存储访问)。 3.ARM处理器支持的数据类型有哪些? 答:(1)Byte 字节,8位;(2)Halfword 半字,16位;(3)Word 字,32位; 4.写出ARM使用的各种工作模式和工作状态。 答:(1)工作模式:
详见下表:
(2)工作状态:a.ARM:32位,这种状态下执行字对齐的ARM指令; b.Thumb:16位,这种状态下执行半字对齐的Thumb指令。 5.ARM处理器总共有多少个寄存器?其中哪个用做PC?哪个用做LR? 答:(1)ARM处理器总共有37个寄存器:31个通用寄存器,6个状态寄存器。 (2)R15用做程序计数器PC,R14用做子程序链接寄存器LR。 6.假设R0=0x12345678,使用将R0存储到0x4000的指令存到存储器中,若存储器为大端组织,写出从存储器0x4000处加载一个字节到R2的指令执行后R2的值。 答:由于0x4000是大端组织,所以R0存进后,0x4000中有数0x56781234,从0x4000加载一个字节到R2后(由地位到高位加载),R2的值为0x34。 7.ARM920T处理器加入了哪两个协处理器?各自的主要功能是什么? 答:ARM920T处理器加入了两个协处理器: (1)CP14,允许软件访问调试通信通道; (2)系统控制协处理器CP15,提供了一些附加寄存器用于配置和控制Caches、MMU、保护系统、时钟模式和其他系统选项。 8.ARM920T支持哪些时钟模式? 答:快速总线模式、同步模式、异步模式。 9.什么是写直达和写回Cache操作,各有何特点? 答:(1)写直达:当CPU对Cache写命中时,Cache与主存同时发生写修改。优点:一致性好;缺点:耗时。 (2)写回:当CPU对Cache写命中时,只修改Cache的内容而不立即写入主存,只当此执行被换出时才写回主存。优点:减少访问主存次数,提高效率。缺点:一致性差点。 10.ARM为何集成了32位的ARM指令集和16位的Thumb指令集?(即它的好处) 答:可提供长的转移范围、强大的算术运算能力和大的寻址空间。 11.什么是big-endian和little-endian,编写一段程序测试你所用的计算机体系结构采用哪种存储机制? 答:(1)大端存储系统(big-endian):低地址存放高字节,高地址存放低字节。小端存储系统(little-endian): 低地址存放低字节,高地址存放高字节。 (2)int x=0x12345678; int *p=&x; if(*(char*)p=0x78) „little endian else „big endian 第4章 ARM系统硬件设计基础 1.一个典型的可执行映像由哪几部分组成? 答:
2.汇编和C语言的相互调用方法。 答:(1)汇编程序调用C程序的方法为:首先在汇编程序中使用IMPORT伪指令事先声明将要调用的C语言函数;然后通过BL指令来调用C函数。 (2)C程序调用汇编子程序的方法为:首先在汇编程序中使用EXPORT伪指令声明被调用的子程序,表示该子程序将在其他文件中被调用;然后在C程序中使用extern关键字声明要调用的汇编子程序为外部函数。 (补充)3.基于ARM的硬件启动流程? 答:(1)分配中断向量表;(2)初始化存储器系统;(3)初始化各工作模式下的堆栈;(4)初始化有特殊要求的硬件模块;(5)初始化用户程序的执行环境;(6)切换处理器的工作模式;(7)调用主应用程序。 第5章 基于S3C2410的系统硬件设计 1.复习掌握:P230 I/O口编程实例。 补充: 2.中断的处理流程? 答:(1)保存现场;(2)模式切换;(3)获取中断源;(4)中断处理;(5)中端返回,恢复现场。 3.中断寄存器的作用及相关的操作?P235-237。