嵌入式课后答案整理

合集下载

嵌入式习题答案(DOC)

嵌入式习题答案(DOC)
测试数据0x12345678的[4](第五位)。如果是0,R0中的数据20加1。如果是1,R1中的数据10加1。(2分)
6.用汇编语言编写程序,求1到50的累加和。
答:
1
32
R50x40003005
R00
R11
LOOP
BLOOP
R001
R111
R150
R0,[R5]
B.
7.请说明汇编语句R2,[R04]和R2,[R04]!的区别。
答:状态:处理器执行32位的字对齐的指令;状态:处理器执行16位的半字对齐的指令。
指令集和指令集均有切换处理器状态的指令。
从状态转换到状态:
R0, 1
R0
8.处理器有哪些工作模式?哪些是特权模式?哪些是异常模式?
答:体系结构支持7种工作模式(),分别为用户模式()、快中断模式()、中断模式()、管理模式()、数据访问终止模式()、系统模式()、及未定义指令中止模式()。除去用户模式外的其他6种处理器工作模式称为特权模式()。除去用户模式和系统模式以外的5种处理器工作模式称为异常模式()
答:第2个操作数的三种形式如下。立即数,例如:R00x0000F200;寄存器方式,例如:R1,R1,R2;寄存器移位方式,例如:R112 R3。
3.请分别写出调用子程序、子程序返回所使用的指令,并简述所用指令的工作过程。
答:用指令调用子程序。指令先将下一条指令的地址拷贝到R14(即)连接寄存器中,然后跳转到指定地址运行指令。子程序返回的指令是:,。
答:8[R0+4]2;R0不变
32[R0+4]=R2;R00+4
32[]表示存储器的存储单元中存放的32位字数据,16[]表示存储器的存储单元中存放的16位半字数据,8[]表示存储器的存储单元中存放的8位字节数据

(完整版)嵌入式系统课后答案马维华

(完整版)嵌入式系统课后答案马维华

第1章嵌入式系统概述1,什么是嵌入式系统嵌入式系统的特点是什么嵌入式系统概念:(1) IEEE对嵌入式系统的定义:用于控制,监视或者辅助操作机器和设备的装置.(2)一般定义:以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能,可靠性,成本,体积,功耗有严格要求的专用计算机系统.嵌入式系统的特点:(1) 专用的计算机系统(2) 必须满足环境要求(3) 必须能满足对象系统的控制要求(4) 是集成计算机技术与各行业应用的集成系统(5) 具有较长的生命周期(6) 软件固化在非易失性存储器中(7) 必须能满足实时性要求(8) 需要专用开发环境和开发工具2,简单分析几种嵌入式操作系统的主要特点,包括嵌入式Linux,Windows CE,uCOS II 及VxWorks.(1)嵌入式Linux:有多个主流版本,根据应用需求,性能略有差别.μCLinux是Linux小型化后,适合于没有MMU的微处理器芯片而裁剪成的操作系统,μCLinux保持了传统Linux操作系统的主要特性,包括稳定,强大的网络和文件系统的支持,μCLinux裁剪了大量的Linux内核以缩小尺寸,适合像512KB RAM,1MB Flash这样小容量,低成本的嵌入式系统.RT_Linux即能兼容通常的Linux,又能保证强实时性.(2)Windows CE:开发平台主要为WinCE Platform Builder,有时也用EVC环境开发一些较上层的应用.WinCE开发难度远低于嵌入式Linux,实时性略低,常用于手机,PDA等手持设备中.(3)uCOS II:结构小巧,抢先式的实时嵌入式操作系统,具有执行效率高,占用空间小,可移植性强,实时性能好和可扩展性能等优点.主要用于小型嵌入式系统.(4) VxWorks: 集成开发环境为Tornado,Vxworks因出现稍早,实时性很强,并且内核可极微(最小8K),可靠性较高等.通常应用在通信设备等实时性要求较高的系统中.第2章嵌入式处理器体系结构1,具体说明ARM7TDMI的含义,其中的T,D,M,I分别代表什么ARM7TDMI是ARM7处理器系列成员之一,采用V4T版本指令.T表示Thumb,该内核可从16位指令集切换到32位ARM指令集;D表示Debug,该内核中放置了用于调试的结构,支持片内Debug调试;M表示Multiplier,支持位乘法;I表示Embedded ICE ,内含嵌入式ICE宏单元,支持片上断点和观察点.2,ARMV4及以上版本的CPSR的哪一位反映了处理器的状态若CPSR=0x000000090,分析系统状态.CPSR=0x000000090表示当前处理器工作于ARM状态,系统处于用户模式下. CPSR的BIT5(T)反映当前处理器工作于ARM状态或Thumb状态.3,ARM有哪几个异常类型,为什么FIQ的服务程序地址要位于0x1C 在复位后,ARM处理器处于何种模式,何种状态ARM的7种异常类型:复位RESET异常,未定义的指令UND异常,软件中断SWI异常,指令预取中止PABT异常,数据访问中止DABT异常,外部中断请求IRQ异常,快速中断请求FIQ 异常.在有快速中断发生时,CPU从0x1C处取出指令执行.ARM复位后处于管理模式,工作于ARM状态.4,为什么要使用Thumb模式,与ARM代码相比较,Thumb代码的两大优势是什么为了兼容数据总线宽度为16位的应用系统,使用了ARM指令系统的一个子集Thumb指令系统.与等价的32位代码相比,Thumb指令集在保留32位代码优势时,大大节省了系统的存储空间.5,说明AMBA,AHB,ASB以及APB的英文全称及其含义.AMBA(Advanced Microcontroller Bus Architecture)即先进的微控制器总线体系结构,是ARM 公司公布的总线标准,这一标准定义了AHB,ASB,APB及AMBA共4种高性能的系统总线规范.AHB(Advanced High_performance Bus)先进的高性能总线,用于连接高性能系统组件或高宽带组件.它支持突发数据传输方式及单个数据传输方式,所有时序参考同一个时钟.ASB(Advanced System Bus)即先进的系统总线,用于连接高性能的系统模块.它支持突发数据传输.APB(Advacned Peripheral Bus)即先进的外围接口总线,是一个简单的接口.它支持低性能的外围接口,APB是用来连接系统的周边组件.6,简述MMU从虚拟地址到物理地址的转换过程和方法.虚拟地址到物理地址的转换过程:当ARM要访问存储器时,MMU先查找TLB中的虚拟地址表,如果ARM的结构支持分开的地址TLB和指令TLB,那么它在取指令时使用指令TLB,其它的所有访问类别使用数据TLB;如果TLB中没有虚拟地址的入口,则是转换表遍历硬件从存储在主存储器中的转换表中获取访问权限,一旦取到,这些信息放在转换TLB中,它会放在1个没有使用的入口处或覆盖1个已有的入口.虚拟地址到物理地址的转换方法:(1)确定1级页表的基地址.(2)合成转换表的1级描述符.(3)根据不同的1级描述符获取第2级描述符地址并找出第2级描述符.(4)将第2级页描述符指示的页基地址,与虚拟地址指示的页内偏移地址相加,得到相应页的物理地址,完成虚拟地址到物理地址的转换.第三章典型嵌入式处理器1,简述LPC2000系列微控制器的内部有哪些重要的外设组件向量中断控制器,外部存储控制器,I2C中行总线控制器,SPI同步接口控制器,UART串口控制器,定时器,AD转换器,CAN总线控制器,看门狗定时器等.2,S3C44B0X如何组织8,16,32位的存储器,地址线如何连接S3C44B0X不同宽度的存储器地址线连接方法.存储器地址引脚8位总线16位总线32位总线A0A0A1A2A1A1A2A3A2A2A3A4A3A3A4A5…………Am-1Am-1Am-2Am-33,说明I2C的数据有效性和起停条件.数据有效性:当SCL信号为高电平时,SDA上的数据传输有效,传输时高位在前,低位在后,每个字节长度限制为位,而每次传送的字节总数没有限制.满足启动条件后的第一个字节应为地址域.每一个字节有一个应答位.起停条件:启动条件,在SCL信号保持高电平时SDA信号由高电平变为低电平;停止条件,要求在SCL信号保持高电平时SDA信号由低电平变为高电平.4,简述A T91FR40162处理器的特点.AR91FR40162采用ARM7TDMI处理器核,内部集成了256KB的片内SRAM和1024K字的16位Flash存储器,完全可编程的外部总线接口, 8个优先级且可以独立屏蔽的向量中断控制器,32个可编程的I/O接口线,3通道16位定时/计数器,2个同步/异步收发器及可编程的看门狗定时器,能完成全静态操作,具有先进的省电特性.第四章嵌入式处理器指令系统1,填空题(1)在源操作数为立即数时,应在前加#作为前缀,在#后加0x或&表示十六进制数,在#后加%表示二进制数,#后加0d或默认表示十进制数.(2)根据堆栈指针指向的数据位置不同,堆栈可分为满堆栈和空堆栈.(3)用一条指令完成人条件加法运算,并更新CPSR中的条件码,R1+R2->R3 ADDS R3,R1,R2.(4)在程序执行过程中,是通过寄存器R15控制程序的运行的.(5)转移指令的跳转范围是-32MB-32MB.2,选择题(2)堆栈随着存储器地址的增大而向上增长,基址寄存指向存贮有效数据的最高地址或者说指向第一个要读出的数据位置,是(A)堆栈.A,满递增B,空递增C,满递减D,空递减(3)在指令LDR R0,[R1,#4]!执行后,R1中的值为(C).A,R1不变B,R1=R1+1 C,R1=R1+4 D,R1=43,说明下列指令完成的功能(1)ADD R0,R1,R3,LSL #2 ;R0=R1+4R2(2)ANDNES R0,R1,#0x0F ;if (CPSR寄存器中Z=0) R1的高28位清零后送寄存器R0并更新CPSR寄存器,else 执行下一条指令.(3)LDRB R0,[R1,R2,LSR#2] ;把存储器地址为(R1+R2>>2)的字节数据加载到R0,R0的高24位清零.(4)ADCHI R1,R2,R3; if(CPSR寄存器中Z=0并且C=1) 执行R1=R2+R3加法操作,else执行下一条指令.(5)EOR R0,R0,R3,ROR R4; R3寄存器中的内容根据R4寄存器中的内容循环右移后与R0寄存器进行逻辑异或操作后,其结果存在R0寄存器内.(7)MLA R0,R1,R2,R3; R0=R1×R2+R3 MLA是32位乘加指令,运算结果的高32位自动丢掉.(8)LDR R1,[R0,-R5,LSL #4] ;将存储器地址为R0-16R5的字数据加载到寄存器R1中.4,用汇编语言实现下列功能的程序段,令R1=a,R2=b.(1)if(a!=b)&a-b>5)) a=a+bCMP R1,R2BEQ NextADD R3,R2,#5CMP R1,R3BLS NextADD R1,R1,R2Next B Next(2) while(a!=0){b=b+b*2;a--;}AREA TestWhile,CODE,READONL Ya equ 5b equ 1ENTRYMOV R1,#aMOV R2,#bLOOPCTL CMP R1,#0ADDNE R2,R2,R2,LSL#1SUBNES R1,R1,#1BNE LOOPCTLEND(3)从a所指向的地址,拷贝20个32位数据到b所指向的地址AREA DataCopy,CODE,READONL YENTRYLDR R0,=SrcDataLDR R1,=DstDataMOV R2,#20LOOPCTL LDR R3,[R0],#4STR R3,[R1],#4SUBS R2,R2,#1BNE LOOPCTLWait B WaitAREA DataDef, DATA,READWRITESrcData DCD 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20DstData SPACE 4*10END6,试比较TST与ANDS,CMP与SUBS,MOV与MVN指令的区别.(1)TST指令把两个操作数进行按位的与操作,并根据运算结果更新CPSR中的条件标志位的值.该指令通常用来检测是否设置了特定的位,一般操作数1是要测试的数据,而操作数2是一个位掩码.ANDS指令用于在两个操作数上进行逻辑与运算,并把结果放到目的寄存器中,操作数1应是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或是1个立即数.该指令常用于设置操作数1的某些位.TST和ANDS两条指令都影响CPSR寄存器;TST指令不改变参与运算的数据,而ANDS指令对目的寄存器进行更新.(2)CMP指令用于把2个操作数进行比较,同时更新CPSR中条件标志位的值.该指令进行一次减法运算,但不保存运算结果,只更改条件标志位.标志位表示的是操作数1和操作数2 的关系(大,小,相等).SUBS 指令用于把操作数1送去操作数2,并将结果存放到目的寄存器中.操作数1应是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或是一个立即数.指令影响CPSR值. CMP和SUBS指令都影响CPSR寄存器;CMP指令不保存运算结果,而SUBS指令可以保存运算结果,并且减数和被减数的值也不发生变化.(3)MOV指令将一个寄存器,被移位的寄存器或一个立即数的值装入目的寄存器内,可以指定相同的寄存器实现NOP的效果,还可以移位一个寄存器.MVN指令与MOV指令的不同之处是在传送数据之前先按位取反,即把一个被取反的值传送到目的寄存器中.8,写一段ARM汇编程序:循环累加队列中的所有数据,直到碰到零值位置,结果放在R4.源程序末尾队列如下:Array:DCD 0x11DCD 0x22DCD 0x33DCD 0R0指向队列头,ADR R0,ARRAY.使用命令LDR R1,[R0],#4来装载,累加至R4,循环直到R1为0,用死循环来停止.程序:AREA Cond_Sum,CODE,READONL YENTRYLDR R0,=ArrayMOV R4,#0LooPCtl LDR R1,[R0],#4CMP R1,#0ADDNE R4,R4,R1BNE LooPCtlWait B WaitAREA SrcData,CODE,READONL YArray DCD 0x11DCD 0x22DCD 0x33DCD 0END9,写一个汇编程序,求一个含64个带符号的16位数组组成的队列的平方和.程序:AREA SquareSum,CODE,READONL YENTRYLDR R0,=ArrayMOV R3,#4MOV R4,#0LooPCtl LDRH R1,[R0],#2MLA R4,R1,R1,R4SUBS R3,R3,#1BNE LooPCtlNOPAREA SrcData,CODE,READONL YArray DCD 0x00010002DCD 0x00030004END第五章嵌入式系统程序设计基础4,简要说明EXPORT和IMPORT的使用方法.答:EXPORT伪指令用于在程序中声明一个全局的标号,该标号可在其它的文件中引用.EXPORT可用GLOBAL代替.标号在程序中区分大小写.[WEAK]选项声明其它的同名标号优先于该标号被引用.IMPORT伪指令用于通知编译器要使用的标号在其它的源文件中定义,但要在当前源文件中引用,而且无论当前源文件中是否引用该标号,该标号均会被加入到当前源文件的符号表中. 5,分析说明下段程序完成什么功能AREA ChangeState,CODE,READONL YCODE32LDR R0,=Start+1BX R0CODE16Start MOV R1,#1END解:程序功能实现程序的跳转并从ARM状态切换到Thumb状态.6,设计一段程序完成数据块的复制,数据从源数据区snum复制到目标数据区dnum.复制时,以8个字为单位进行.对于最后所剩不足8个字的数据,以字为单位进行复制.程序:AREA BlockDataCopy,CODE,READONL Ynum EQU 20ENTRYStart LDR R0,=snumLDR R1,=dnumMOV R2,#numMOV R13,#400BlockCopy MOVS R3,R2,LSR#3BEQ CopyWordsSTMFD R13!,{R4-R11}OctCopy LDMIA R0!,{R4-R11}STMIA R1!,{R4-R11}SUBS R3,R3,#1BNE OctCopyLDMFD R13!,{R4-R11}CopyWords ANDS R2,R2,#7BEQ StopWordsCopy LDR R3,[R0],#4STR R3,[R0],#4SUBS R2,R2,#1BNE WordsCopyStop B StopAREA BlockData, DATA,READWRITEsnum DCD 1,2,3,4,5,6,7,8,9,10,11DCD 12,13,14,15,16,17,18,19,20dnum SPACE 20*4END7,利用跳转表的思想编写一个汇编程序,实现当R0分别为0,1,2时完成跳转到3个不同的子程序.程序:AREA JumpTable,CODE,READONL Ynum EQU 3ENTRYStart MOV R0,#1MOV R1,#3MOV R2,#2BL JumpTblCtlStop B StopJumpTblCtl CMP R0,#numMOVHS PC,LRADR R3,JumpTblEntryLDR PC,[R3,R0,LSL#2]JumpTblEntry DCD Subroutine1DCD Subroutine2DCD Subroutine3Subroutine1 MOV R3,#0x55MOV PC,LRSubroutine2 MOV R4,#0xAAMOV PC,LRSubroutine3 MOV R5,#0x5AMOV PC,LREND第六章嵌入式操作系统1,简述μCLinux的特点,说明其主要应用的环境.答:μCLinux主要是为控制领域定做的LINUX版本,其设计思想就是对标准LINUX内核进行裁剪,去除虚拟管理部分代码,并且对内存分配进行优化,以达到提高系统运行效率的目的.特点:(1)包含通用LINUX API函数.(2)内核体积小于512KB(3)内核及文件系统体积小于900KB(4)具有完整的TCP/IP协议栈(5)支持多种文件系统.2,简述μCLinux的移植过程.答:(1)配置内核(2)编译内核(3)下载,运行,调试内核第七章嵌入式系统的BootLoader1,简述Boot Loader与嵌入式系统的关系.Boot Loader 是在操作系统内核或用户应用程序运行之前运行的一段小程序.其作用为:初始化硬件设备,建立内存空间的映射图,将系统的软件件环境带到一个合适的状态,为最终调用操作系统内核或用户应用程序准备好正确的环境.2,Boot Loader的主要功能有哪些答:初始化硬件设备,检测系统内存映射,将内核映像和根文件系统从Flash传到RAM空间,并为内核设置启动参数,最后调用内核.3,Boot Loader分为几个阶段,各阶段主要完成什么功能答:Boot Loader通常分为2个阶段.阶段1完成基本硬件的初始化,加载阶段2的RAM空间,复制阶段2到RAM,设置堆栈指针,跳转到阶段2的C程序入口点.在阶段2初始化阶段2要使用的硬件设备,检测系统内存映射,加载内核映像和根文件系统映像,调用内核.第八章嵌入式系统设计1,简述嵌入式系统设计的一般步骤.答:⑴需求分析; ⑵体系结构设计; ⑶硬件,软件,执行机构设计; ⑷系统集成⑸系统测试2,简述软,硬件协同设计的过程.⑴需求分析; ⑵软,硬件协同设计; ⑶软,硬件实现; ⑷软,硬件协同测试和验证。

嵌入式课后答案

嵌入式课后答案

第一章一、选择题1.嵌入式系统通常是指用于执行特定功能的(专用计算机系统),嵌入式系统是面向用户、面向产品、面向应用的。

2.ARM系列微处理器按处理信息的自唱分类应属于(32位)处理器。

3.嵌入式操作系统是负责潜入系统的全部软件、硬件资源、分配及执行任务调度、控制和协调的一个(功能可裁剪)的管理程序。

4.硬件抽象层又可称作板级支持包,是介于(硬件和操作系统驱动层)程序之间的一层,主要用于描述底层硬件的相关信息,实现对操作系统的支持和加载,为驱动提供访问接口。

二、填空题1.嵌入式操作系统的硬件架构大致可以分为:(处理器)、输入输出设备、电源管理和接口技术。

2.ARM9系列的微处理器的硬件体系结构采用的是ARM的(V4版)架构。

3.ARM系列32位嵌入式微处理器按指令系统进行分类应属于(RISC)。

4.(哈佛)体系结构中,程序存储空间和数据存储空间是分开的。

三、简答题1.简要描述嵌入式系统的概念答:嵌入式系统通常是指用于执行特定功能的专用计算机系统,嵌入式系统是面向用户、面向产品、面向应用的。

2.简述冯·诺依曼体系结构和哈佛体系结构的区别。

答:冯·诺依曼体系结构采用单一的存储空间对数据和指令进行存储,二者的访问不能同步进行。

哈佛体系结构是将数据和程序分开进行存储的,程序和数据的存储空间是分离的,允许同时对指令和数据进行存取。

第二章一、选择题1.S3C2410X是三星公司生产的基于(ARM920T)核的32位嵌入式微处理器,它拥有丰富的片上资源。

2.ARM9系列微处理器采用(5级流水线),支持数据Cache和指令Cache,32位ARM指令集和16位Thumb指令集。

3.ARM9系列微处理器采用哈佛体系结构,采用5级流水线,具体操作步骤为取指、(译码)、执行、缓冲/数据和回写。

4.ARM体系结构中的存储器可以看作从零地址开始的字节线性组合,有大端格式和(小端格式)两种存储字数据的方法二、填空题1.ARM920T支持两种处理器工作状态,分别是(ARM状态)和Thumb状态。

嵌入式系统课后答案整理版

嵌入式系统课后答案整理版

第一章思考与练习1、举出3个书本中未提到的嵌入式系统的例子。

答:红绿灯控制,数字空调,机顶盒2、什么叫嵌入式系统嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

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

嵌入式微处理器(Embedded Microprocessor Un it, EMPU)嵌入式微控制器(Microco ntroller Un it, MCU)嵌入式 DSP 处理器(Embedded Digital Signal Processor, EDSP)嵌入式片上系统(System On Chip)4、什么是嵌入式操作系统?为何要使用嵌入式操作系统?是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。

其次,提高了开发效率,缩短了开发周期。

再次,嵌入式实时操作系统充分发挥了 32位CPU的多任务潜力。

第二章1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么?项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4个阶段。

识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。

提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。

执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。

结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。

2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险?在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。

需求风险;时间风险;资金风险;项目管理风险 3、何谓系统规范?制定系统规范的目的是什么?规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。

嵌入式系统(第二版)第一至第五章课后答案

嵌入式系统(第二版)第一至第五章课后答案

第一章思考与练习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、何谓系统规范?制定系统规范的目的是什么?规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。

arm9嵌入式系统课后答案

arm9嵌入式系统课后答案

arm9嵌入式系统课后答案【篇一:嵌入式习题答案】什么是嵌入式系统?请列举几个常见的嵌入式系统。

答:根据国际电气和电子工程师协会(ieee)的定义,嵌入式系统是控制、监视或者辅助设备、机器和生产线运行的装置(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。

这主要是从产品的应用角度加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。

目前被我国科学家普遍认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。

常见的嵌入式系统:手机,dvd,路由器,核磁共振仪,全自动洗衣机。

2.嵌入式系统与通用计算机有哪些区别?答:(1) 以应用为中心;(2) 以计算机技术为基础(3) 软件和硬件可裁减(4) 对系统性能要求严格(5)软件的固件化(6)需要专用的开发工具 3.嵌入式系统的发展分为哪几个阶段?答:第一阶段:无操作系统的嵌入算法阶段。

第二阶段:以嵌入式cpu为基础,以简单操作系统为核心的嵌入式系统。

第三阶段:以嵌入式操作系统为标志的嵌入式系统。

第四阶段:以基于internet为标志的嵌入式系统。

4.请列举嵌入式系统的主要应用领域。

答:(1)工业控制领域(2)交通运输领域(3)消费电子产品(4)家电领域(5)通信领域(6)商业和金融领域(7)环境监测领域(8)医疗领域(9)建筑领域(10)军事国防领域(11)航天航空领域第二章习题答案1.简述简单嵌入式系统与复杂嵌入式系统的主要区别。

答:简单嵌入式系统很早就已经存在,这类嵌入式系统因为软硬件复杂度都很低,一般不使用操作系统,例如常用的单片机系统。

对于复杂的嵌入式系统,它的开发模式发生了极大的改变。

一个复杂的嵌入式系统不仅硬件系统的开发比单片机复杂了许多,更重要的是在该系统中采用了嵌入式操作系统,其应用软件的开发转变为使用操作系统标准接口的计算机工程领域的应用软件开发。

嵌入式系统课后习题部分答案1

嵌入式系统课后习题部分答案1

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

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

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

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

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

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

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

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

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

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

1.4.Cortex-M3主要应用在哪些方向?主要用在平衡ARM的产品的性能和功耗,提高ARM的性能,降低其功耗1.5.简述StrongARM处理器和ARM处理器的关系StrongARM是第一个包含5级流水线的高性能ARM处理器,但它不支持Thumb指令集1-6.ARM9采用的是(5)级流水线设计。

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

1.7.简述ARM9和ARM9E的不同点硬件处理器不一样指令集不一样1.8.ARM11采用的是什么架构的指令ARMv6嵌入式操作系统的特点(1)体积小(2)实时性(3)特殊的开发调试环境SecureCore处理器系列的特点(1)支持ARM指令集和Thumb指令集,以提高代码密度和系统性能(2)采用软内核技术一提供最大限度的灵活性,可以防止外部对其进行扫描探测(3)提供了安全特性,可以抵制攻击(4)提供面向智能卡和低成本的存储保护单元MPU(5)可以集成用户自己的安全特性和其它的协处理器第二章2-1.简述ARM可以工作在几种模式。

周立功版嵌入式课后习题答案

周立功版嵌入式课后习题答案

第一章嵌入式系统概述一、举出3个课本中未提到的嵌入式系统的例子;红绿灯控制、数字空调、机顶盒二、什么是嵌入式系统特点是答:嵌入式系统是嵌入到对象体系中的专用计算机应用系统;英国电机工程师协会定义:嵌入式系统为控制、检测或辅助某个设备、机器或工厂运作的装置;1以技术角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统;2从系统角度的定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统;术语嵌入式反映了这些系统通常是大系统中的一个完整的部分,称为嵌入的系统;嵌入的系统中可以共存多个嵌入式系统;特点:1、嵌入式系统通常应用在为特定用户设计的系统中,具有功耗低、体积小、集成度高等特点;将通用CPU中由板卡完成的任务集成在了嵌入式CPU内部;2、嵌入式系统是将先进的计算机技术、半导体技术和电子技术于各个行业的具体应用相结合的产物;所以是技术密集、资金密集、高度分散、不断创新的知识集成系统;3、嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣,去除冗余;4、为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或处理器芯片中,而不是存储于磁盘等载体中;由于嵌入式系统必须有较高的时实性,因此对程序的质量,特别是可靠性有较高的要求;5、嵌入式系统本身不具备自举开发能力,必须有一套专用的开发工具和环境才能进行开发;三、什么叫嵌入式处理器嵌入式处理器分为哪几类答:嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元,与普通台式计算机的微处理器相比,其工作稳定性更高,功耗较小,对环境如温度、湿度、电磁场、震动等的适应能力更强,体积更小,且集成的功能较多;嵌入式处理器从应用角度,可以大致分为以下几类:1.注重嵌入式处理器的尺寸、能耗和价格;应用于新型电子娱乐等不注重计算的设备;2.注重嵌入式处理器的性能;应用于路由器等高速计算密集型的设备;3.注重嵌入式处理器的性能、尺寸、能耗和价格;应用于各种工业控制设备;按照结构分类:嵌入式微处理器EMPU;嵌入式微控制器MCU;嵌入式DSP处理器DSP;嵌入式片上系统SOC; 嵌入式系统的分类也是以上答案P5 ;四、什么是嵌入式操作系统为何要使用嵌入式操作系统答:操作系统是计算机中最基本的程序;操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台;使用嵌入式操作系统原因之一就是因为其具有实时性;使用嵌入式实时操作系统具有以下优点:1.嵌入式实时操作系统提高了系统的可靠性;2.嵌入式实时操作系统提高了开发效率,缩短了开发周期;3.嵌入式实时操作系统充分发挥了32位CPU的多任务潜力;第二章ARM7体系结构一、基础知识1ARM7TDMI中的T、D、M、I的含义是什么P19答:T后缀:高密度16位Thumb指令集扩展; D后缀:支持片上调试;M后缀:64位乘法指令; I后缀:Embedded ICE硬件仿真功能模块;2ARM7TDMI采用几级流水线P20使用何种存储器编址方式答:采用三级流水线,三个阶段分别为:取指、译码、执行;使用了冯•诺依曼结构,指令和数据共用一条32位总线;3ARM处理器模式和ARM处理器状态有何区别P24~P26答:处理器模式指的是处理器在执行程序时,在不同时刻所处的不同状态;处理器状态指的是处理器当前所执行的指令集;4分别列举ARM的处理器模式和状态;答:处理器模式:7种,:用户模式usr和特权模式,特权模式包括系统模式sys和异常模式,异常模式包括:管理模式svc、中止模式abt、未定义模式und、中断模式irq、快速中断模式fiq;处理器状态:ARM状态为32位,这种状态下执行的是字方式ARM指令,具有最完整的功能,处理器在系统上电时默认为ARM状态;Thumb状态为16位,这种状态下执行半字方式的Thumb指令;5PC和LR分别使用哪个寄存器P31~P32答:程序计数器PC使用R15寄存器,链接寄存器LR使用R14寄存器;6R13寄存器的通用功能是什么P29~P30答:ARM处理器通常将寄存器R13作为堆栈指针SP,用于保存堆栈的出入口处地址;7CPSR寄存器中哪些位用来定义处理器状态答:程序状态寄存器CPSR,8描述一下如何禁止IRQ和FIQ的中断P38答:当控制位I置位时,IRQ中断被禁止,否则允许IRQ中断使能;当控制位F置位时,FIQ中断被禁止,否则允许FIQ中断使能;二.存储器格式定义R0=0x12345678, 假设使用存储指令将R0的值存放在0x4000单元中;如果存储器格式为大端格式,请写出在执行加载指令将存储器0x4000单元的内容取出存放到R2寄存器操作后所得R2的值;如果存储器格式改为小端模式,所得R2值又为多少低地址0x4000单元的字节内容分别是多少P49三、处理器异常请描述一下ARM7TDMI产生异常的条件是什么各种异常会使处理器进入哪种模式进入异常时内核有何操作各种异常的返回指令又是什么答:只要正常的程序被暂时中止,处理器就进入异常模式;第三章ARM7TDMI-S指令系统一、基础知识1ARM7TDMI-S有几种寻址方式P53“LDR R1,R0, 0x08”属于哪种寻址方式答:共有8种寻址方式:寄存器寻址、立即寻址、寄存器移位寻址、寄存器间接寻址、基址寻址、多寄存器寻址、堆栈寻址、相对寻址;LDR R1,R0, 0x08属于基址寻址,意思是读取R0+0x08地址上的存储单元的内容,存入R1;2ARM指令的条件码有多少个P60默认条件码是什么答:有16个,EQ、NE、CS/HS、CC/LO、MI、PL、VS、VC、HI、LS、GE、LT、GT、LE、AL、NV, 默认条件码是AL;3ARM指令中第2个操作数有哪几种形式P58列举5个8位图立即数;答:有3种形式:immed_8r——常数表达式;Rm——寄存器方式;Rm,shift——寄存器移位方式;5个8位图立即数:0x3FC0xFF<<2、0、0xF00000000xF0<<24、2000xC8、0xF00000010x1F<<28; 4LDR/STR指令的偏移形式有哪4种P62 LDRB指令和LDRSB指令有何区别答:LDR/STR指令的偏移形式有4种,分别是:零偏移、前索引偏移、程序相对偏移、后索引偏移;LDRB指令是加载无符号字节数据,LDRSB指令则是加载有符号字节数据;LDRB就是读出指定地址的数据并存入指定寄存器,LDRSB读出指定地址的数据,高24位符号位用于扩展,再存入指定寄存器;5请指出MOV指令与LDR加载指令的区别及用途;答:MOV指令的源操作数是常数或带偏移量的寄存器,用于寄存器之间的数据传送;LDR指令的源操作数是地址,用于存储器到寄存器的数据传送;6CMP指令是如何执行的写一程序,判断R1的值是否大于0x30,是则将R1减去0x30;P71 答:CMP 指令将寄存器Rn 的值减去operand2 的值,根据操作的结果更新CPSR 中的相应条件标志位,以便后面的指令根据相应的条件标志来判断是否执行;CMP指令不保存运算结果,在进行两个数据的大小判断时,常用CMP指令及相应的条码来操作;程序:CMP {cond} Rn, operand2CMP R1,0x30 ;将R1与常数0x30比较LDRLE PC,LR ;如果小于或等于0x30,则程序返回SUB R1,R1, 0x30 ;大于0x30,则将R1减去0x30,结果存回R17调用子程序是用B指令还是用BL指令请写出返回子程序的指令;P73答:BL 指令用于子程序调用; MOV PC,LR 或者BX LR8请指出LDR伪指令的用法;P61指令格式与LDR加载指令的区别是什么答:LDR指令用于从内存中读取数据放入寄存器或者用于加载32位的立即数,还常用于加载芯片外围功能部件的寄存器地址,指令格式与LDR加载指令的区别在于第二个数为地址表达式,伪指令的LDR的参数有“=”号;9ARM状态与Thumb状态的切换指令是什么请举例说明;答:切换指令是BX指令;BX指令跳转到Rm指定的地址去执行程序;若Rm的bit0为1,则跳转时自动将CPSR中的标志T置位,即把目标地址的代码解释为Thumb代码;若Rm的bit0为0,则跳转时自动将CPSR中的标志T复位,即把目标地址的代码解释为ARM代码;10Thumb状态与ARM状态寄存器有区别吗P28、P34、P35、P81 Thumb指令对哪些寄存器的访问受到一定限制答:Thumb状态与ARM状态的寄存器有区别:1、由于Thumb指令集不包含MSR和MRS 指令,如果用户需要修改CPSR的任何标志位,必须回到ARM模式;通过BX和BLX指令来改变指令集模式,而且当完成复位Reset或者进入到异常模式时,将会被自动切换到ARM模式;2、访问R8-R15的Thumb数据处理指令不能更新CPSR中的ALU状态标志;Thumb指令集较ARM指令集有如下限制:只有B指令可以条件执行,其它指令都不能条件执行;分支指令的跳转范围有更多限制;数据处理指令的操作结果必须放入其中一个;单寄存器访问指令,只能操作R0~R7;LDM和STM指令可以对R0~R7的任何子集进行操作;Thumb指令对R8-R15寄存器访问受限;11Thumb指令集的堆栈入栈、出栈指令是哪两条P83入栈指令PUSH,出栈指令POP12Thumb指令集的BL指令转移范围为何能达到 4MB 其指令编码是怎样的P85 Thumb 采用两条16 位指令组合成22 位半字偏移符号扩展为32 位,使指令转移范围为±4MB;BL label; LR←PC-4,PC←label2.有符号和无符号加法下面给出A和B的值,可以先手动计算A+B,并预测N、Z、V和C标志位的值;然后修改程序清单3.1中R0、R1的值,将这两个值装载到这两个寄存器中使用LDR伪指令,如“LDRR0,=0xFFFF0000”,使其执行两个寄存器的加法操作;调试程序,每执行一次加法操作就将标志位的状态记录下来,并将所得结果与预先计算得出的结果相比较;如果两个操作数看作有符号数,如何解释所得标志位的状态同样,如果把两个操作数看作是无符号数,所得标志位又当如何理解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;第四章LPC2000系列ARM硬件结构一、基础知识1、LPC2114可使用的外部晶振频率范围是多少P115提示使用/不使用PLL功能时P116 答:晶振频率范围:1~30 MHz,若使用PLL 或ISP 功能时,输入时钟的频率不超过:10~25MHz;2、请描述LPC2210/2220的PO.14、P1.20、P1.26、BOOT1和BOOT0引脚在芯片复位时分别有什么作用P95,P96,P119并简单说明LPC2000系列ARM7微控制器的复位处理流程; 答:P0.14 为低电平时,强制片内引导装载程序复位后控制器件的操作,即进入ISP 状态;P1.20 当RESET 为低电平,使P1.25~P1.16 复位后用作跟踪端口;P1.26当RESET 为低电平,使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功能P122相关电路应该如何设计答:有两种情况可以使芯片进入ISP状态:1将芯片的P0.14引脚拉低后,复位芯片,可以进入ISP状态;2在芯片内部无有效用户代码时,Boot Block自动进入ISP状态;5、LPC2000系列ARM7微控制器片内Flash是多位宽度的接口P145它是通过哪个功能模块来提高Flash的访问速度答:128位宽度接口, 通过存储器加速模块MAM来提高Flash的访问速度;6、若LPC2210/2220的bank0存储块使用32位总线,访问bank0时,地址线A1、A0是否有效EMC模块中的BLSO~BLS4具有什么功能P159答:无效, 如果存储器组配置成16 位宽,则不需要A0;8 位宽的存储器组需要使用A0 ;;字节定位选择信号;7、LPC2000系列ARM7微控制器具有引脚功能复用特性,那么如何设置某个引脚为指定功能P172答:通过引脚功能选择寄存器的设定来设置某个引脚为指定功能;8、FIQ、IRQ有什么不同向量IRQ和非向量IRQ有什么不同P189答:FIQ为快速中断,具有最高优先级,中断响应最快,常用于处理非常重要、非常紧急的事件,IRQ为普通中断;向量IRQ具有中等优先级,对外部事件响应比较及时,常用于处理重要事件;非向量IRQ优先级最低,中断延迟时间比较长,常用于处理一般事件中断;9、在使能、禁止FIQ和IRQ时,为什么操作SPSR寄存器而不操作CPSR寄存器P75,P189,P200 答:在用户模式下,无法修改CPSR,只有在特权模式下修改SPSR后,通过退出特权模式,然后恢复SPSR到CPSR,才能实现修改CPSR;10、ARM内核对FIQ、向量IRQ和非向量IRQ有什么不同P200FIQ优先级最高,中断响应最迅速;一旦发生FIQ中断,ARM处理器进入FIQ模式,而且ARM 处理器为FIQ模式多设计了R8~R12这5个私有寄存器,加速FIQ的处理;向量IRQ具有中等优先级,处理中断比较迅速;非IRQ中断优先级最低;11、向量中断能嵌套吗请结合ARM体系结构进行阐述;答:能,但需要重新开中断;12、VIC的软件中断和ARM内核的软件中断一样吗P188ARM内核本身只有快速中断FIQ和普通中断IRQ这2条中断输入信号线,只能接受2个中断;如果处理2个以上的中断事件,就需要借助向量中断控制器VIC;13、设置引脚为GPIO功能时,如何控制某个引脚单独输入/输出P181当前要知道某个引脚当前的输出状态时,是读取IOPIN寄存器还是读取IOSET寄存器答:通过GPIO方向寄存器来控制引脚单独输入/输出;比如某引脚作输出时,将IODIR寄存器的相应位设置为1;当前要知道某个引脚当前的输出状态时,读取IOPIN寄存器,因为IOSET寄存器控制引脚输出高电平;14、P0.2和P0.3口是I2C接口,当设置它们为GPIO时,是否需要外接上拉电阻才能输出高电平P183答:需要外接上拉电阻;15、写出至少3种GPIO的应用实例;P183-1871、将P0.0设置为输出高电平;2、使用GPIO控制蜂鸣器;3、读取P0.0引脚的电平状态;4、读取按键状态;5、在多个I/O口线上输出数据;15、使用SPI主模式时,SSEL引脚是否可以作为GPIO P238 若不能,SSEL引脚应如何处理答:不能,SSEL引脚应接上拉电阻;16、LPC2114的2个UART符合什么标准P276哪一个UART可用作ISP通信P278哪一个UART具有Modem接口答:符合16C550工业标准;UART0可用作ISP通信,UART1具有Modem接口;17、介绍I2C和SPI总线的特点,并分别介绍几款基于这两种总线的芯片;P238,P250答:I2C BUSInter IC BUC是NXP半导体公司推出的芯片间串行传输总线,它以2根连线实现了完善的双向数据传送,可以极为方便地构成多机系统和外围器件扩展系统;I2C总线采用了器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法;从而使硬件系统具有最简单而灵活的扩展方法;基于I2C的芯片有FM24CL04和ZLG7290等;SPI总线串行外设接口总线系统是一种全双工同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换;一个SPI总线可以连接多个主机和多个从机,但是在同一时刻只允许有一个主机操作总线;基于SPI总线的芯片有ISD4003语音芯片和电能计量芯片ATT7022等等;18、LPC2114具有几个32位定时器P222 PWM定时器是否可以作通用定时器使用没讲答:有2个32位定时器,分别是定时器0和定时器1;PWM定时器不能用作通用定时器使用;19、LPC2000系列ARM7微控制器具有哪两种低耗模式如何降低系统的功耗P89,P141 答:2个低功耗模式:空闲模式和掉电模式;可以通过个别使能/禁止外部功能来优化功耗; 2.计算PLL设置值假设有一个基于LPC2114的系统,所使用的晶振为11.0592MHZ石英晶振;请计算出最大的系统时钟CCLK频率为多少MHz 此时PLL的M值和P值各为多少请列出计算公式,并编写设置PLL的程序段;解:LPC2214最大的系统时钟频率是60MHz,Fcclk=MFosc=60MHZFosc=11.0592MHz所以M=5Fcclk=FoscM=55.296MHz又156MHz<Fcco<320MHzP=Fcco/Fcclk2当Fcco取156MHZ时,P=1.3当个Fcco取最高频率时即320时,P=2.67所以P=2程序清单:Uint8 PLLSetuint32 Fcclk,uint32 Fosc,uint32 Fcco{Uint8 i;Uint32 plldat;i = Fcco/Fcclk;switchi {case 2:plldat=Fcclk/Fosc-1|0<<5;break;case 4:plldat=Fcclk/Fosc-1|1<<5;break;case 8:plldat=Fcclk/Fosc-1|2<<5;break;case 16:plldat=Fcclk/Fosc-1|3<<5;break;default:returnFALSE;break;}PLLCON = 1;PLLCFG = plldat;PLLFEED = 0xaa;PLLFEED = 0x55;whilePLLSTAT & 1<<10 == 0;PLLCON = 3;PLLFEED = 0xaa;PLLFEED = 0x55;returnTRUE;3、存储器重影射:1LPC2210/2220具有 D 种存储映射模式;P106,P139 A3 B5 C1 D42当程序已固化到片内Flash,向量表保存在0x00000000起始处,则MAP〔1:0〕的值应该为 B ;P138-P139A00 B01 C10 D113LPC2000系列APM7微控制器存储器重映射的目标起始地址为 0x00000000 ,共有 16 个字;A0x00000000,8 B0x40000000,8C0x00000000,16 D0x7FFFE000,84、外部中断唤醒掉电设计以下代码是初始化外部中断0,用它来唤醒掉电的LPC2114,请填空;P214PINSEL0=0x00000000;PINSEL1=PINSEL1 & 0XFFFFFFFC | 0x01; //设置I/O口连接;P0.16设置为EINT0EXTMODE=EXTMODE & 0x0E; //设置EINT0为电平触发模式EXTPOLAR=EXTPOLAR & 0x0E; //设置EINT0为低电平触发EXTWAKE= 0x01; //允许外部中断0唤醒掉电的CPU EXTINT=0x0F; //消除外部中断标志。

嵌入式系统原理与应用课后答案

嵌入式系统原理与应用课后答案

嵌入式系统原理与应用课后答案1. 第一章答案:a. 嵌入式系统是嵌入到其他系统中的小型电子系统,一般具有特定的功能和任务。

它以硬件和软件的结合形式存在。

b. 嵌入式系统具有实时性、可靠性和可扩展性的要求,并且一般运行在资源受限的环境中。

c. 嵌入式系统可分为实时嵌入式系统和嵌入式控制系统两种类型。

d. 实时嵌入式系统需要按照严格的时间要求完成任务,可以分为硬实时和软实时系统。

2. 第二章答案:a. 嵌入式系统的硬件平台由微处理器、存储器、总线、输入输出设备等组成。

b. 嵌入式系统的硬件平台性能指标包括:处理器的主频、存储器的容量和带宽、总线的带宽和响应时间、输入输出设备的性能等。

c. 嵌入式系统的软件平台由操作系统、应用软件和驱动程序等组成。

d. 实时操作系统是嵌入式系统的核心软件,它可以提供任务调度、资源管理、中断处理等功能。

3. 第三章答案:a. 嵌入式系统的开发流程包括需求分析、系统设计、硬件设计、软件设计、系统集成和测试等阶段。

b. 嵌入式系统开发中常用的设计工具包括仿真工具、编译工具、调试工具和测试工具等。

c. 嵌入式系统的设计方法可以分为自顶向下设计和自底向上设计两种。

d. 自顶向下设计是先定义系统的整体结构,再逐步详细设计每个组件的功能和接口。

e. 自底向上设计是先设计每个组件的功能和接口,再逐步将它们组合起来形成系统。

4. 第四章答案:a. 嵌入式系统的程序设计语言可以分为汇编语言、高级语言和特定领域语言三种。

b. 汇编语言是一种低级语言,使用机器指令来编写程序,可以直接控制硬件。

c. 高级语言是一种抽象层次较高的语言,使用类似自然语言的语法来编写程序,更易理解和维护。

d. 嵌入式系统常用的高级语言包括C语言和C++语言。

e. 特定领域语言是一种专门为某种特定应用领域设计的语言,具有特定领域的特性和功能。

5. 第五章答案:a. 嵌入式系统的编程模型可以分为裸机编程和操作系统编程两种。

嵌入式系统课后习题及答案

嵌入式系统课后习题及答案

第1章嵌入式体系基本【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,即板级支撑包(BoardSupport 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 endianelse…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.。

嵌入式课后练习题答案

嵌入式课后练习题答案

嵌⼊式课后练习题答案第1章1、什么是嵌⼊式系统?嵌⼊式系统的组成?从技术的⾓度定义:以应⽤为中⼼、以计算机技术为基础、软件硬件可裁剪、适应应⽤系统对功能、可靠性、成本、体积、功耗严格要求的专⽤计算机系统。

从系统的⾓度定义:嵌⼊式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在⼀起的计算机系统。

术语嵌⼊式反映了这些系统通常是更⼤系统中的⼀个完整的部分,称为嵌⼊的系统。

嵌⼊的系统中可以共存多个嵌⼊式系统。

2、典型的嵌⼊式处理器有哪些?3、典型的RTOS操作系统有哪些?4、列举⾝边的嵌⼊式应⽤产品?第2章Cortex-M体系结构⼀题:填空题1、ARM Cortex系统的处理器分为:____A_____、____R_____、_____M_____。

2、ARM Cortex-M3为32位微控制器,请问32位指的是CPU字长。

3、ARM Cortex-M3体系结构采⽤哈佛总线结构,拥有独⽴的指令总线和数据总线,可以让取指与数据访问并⾏进⾏。

4、CM3寄存器分为通⽤寄存器,包括R0~R15。

和特殊功能寄存器,包括程序状态寄存器、异常屏蔽寄存器、控制寄存器。

5、寄存器R13是堆栈指针寄存器。

6、寄存器R14是程序连接寄存器。

7、寄存器R15是程序PC。

8、CM3的堆栈指针分为__MSP__、__PSP_。

存储器堆栈堆栈分为:向上⽣长(即向⾼地址⽅向⽣长)的递增堆栈;向下⽣长(即向低地址⽅向⽣长),称为递减堆栈。

堆栈指针指向最后压⼊堆栈的有效数据项,称为满堆栈;堆栈指针指向下⼀个数据项放⼊的空位置,称为空堆栈。

试判断CM3属于递减堆栈堆栈和满堆栈堆栈。

9、在CM3中记录程序状态的寄存器是___xPSR____。

都分别有些什么状态_应⽤状态、中断状态、可执状态。

10、BASEPRI寄存器的作⽤是___屏蔽优先级低于某⼀个数值的异常____。

11、寄存器CONTROL的作⽤是控制处理器模式及堆栈切换。

MOV R0,#0x01MSR CONTROL,R0在8级优先中,请问上述程序的功能是处理器⼯作在⽤户模式主堆栈下。

嵌入式课后答案

嵌入式课后答案

第一章1.什么是嵌入式茶统?它由哪几部分组成?有何轄点?以应用为中心,计算机技术为基础,软硬件可裁减,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格妥求的专用计算机系统。

嵌入式系统通常由嵌入式处趣器、外围设备、嵌入式操作系统、应用软件等几大部分组成。

嵌入式处理器与通用处理器的最大不同点在其大多工作在为特定用户群设计的系统。

外围设备包括:存储器、接口、人机交互。

嵌入式操作系统的特点:软硬件一体化,隼计算机技术、微电子技术和行业技术为一体;需要操作系统支持,代码小,执行速度快;专用紧凑,用途固定,成本敏感;可靠性要求髙;多样性,应用广泛,种类鬃多。

2.嵌入丈处珊器分为哪几类?低端的微控制器(MicroConctroller Unit,NICU)中髙端的嵌入式微处理器(Embedded MicroProcessor Unit,EMPU)通信领域的DSP 系统(Digital Signal Processor,DSP)高度隼成的片上系统(System on Chip,SoC)3.ARM英文JM意是什么?它是个怎样的公司?其处逊器有何特点?ARM(Advanced RISC Machines)公司是全球领先的16/32位RISC微处理器知识产权设计供应商。

ARM公司通过将其高性能、低功耗、低成本的RISC微处理器,外围和系统芯片设计技术转让给台作伙伴来生产各具特色的芯片。

ARM处理器的特点:小体积、低功耗、低成本而性能高。

16/32位指令隼。

全球至多的台作伙伴。

4・什么是实时爲统?它由哪些特征?如何分类?实时系统是具有实时性且能支持实时控制系统工作的操作系统。

其首要任务是调动一切可利用的资源来完成实时控制任务,其次才看眼于提高计算机系统的使用效率,其重要特点是能满足对时间的限制和要求。

实时性:实时系统所产生的结果在时间上有严格的要求,只有符合时间要求的结果才是正确的。

并行性:要求系统有并行处理能力,以便能同时相应来自不同端口的输入信号。

《嵌入式》课后习题答案

《嵌入式》课后习题答案

第一章1. 简述嵌入式的定义以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2. 举例说明嵌入式系统的“嵌入性” 、“专用性” 、“计算机系统”的基本特征。

按照嵌入式系统的定义,嵌入式系统有3个基本特点,即“ 嵌入性”、“ 专用性”与“ 计算机”。

“嵌入性”由早期微型机时代的嵌入式计算机应用而来,专指计算机嵌入到对象体系中,实现对象体系的智能控制。

当嵌入式系统变成一个独立应用产品时,可将嵌入性理解为内部嵌有微处理器或计算机。

“计算机”是对象系统智能化控制的根本保证。

随着单片机向MCU SoC发展,片内计算机外围电路、接口电路、控制单元日益增多,“专用计算机系统”演变成为“内含微处理器”的现代电子系统。

与传统的电子系统相比较,现代电子系统由于内含微处理器,能实现对象系统的计算机智能化控制能力。

“专用性”是指在满足对象控制要求及环境要求下的软硬件裁剪性。

嵌入式系统的软、硬件配置必须依据嵌入对象的要求,设计成专用的嵌入式应用系统。

3. 简述嵌入式系统发展各阶段的特点。

(1)无操作系统阶段:使用简便、价格低廉;(2)简单操作系统阶段:初步具有了一定的兼容性和扩展性,内核精巧且效率高,大大缩短了开发周期,提高了开发效率。

(3)实时操作系统阶段:系统能够运行在各种不同类型的微处理器上,具备了文件和目录管理、设备管理、多任务、网络、图形用户界面Graphic User Interface ,GUI )等功能,并提供了大量的应用程序接口Application Programming Interface ,API ),从而使应用软件的开发变得更加简单。

(4)面向Internet 阶段:进入21 世纪,Internet 技术与信息家电、工业控制技术等的结合日益紧密,嵌入式技术与Internet 技术的结合正在推动着嵌入式系统的飞速发展4. 简述嵌入式系统的发展趋势。

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

嵌入式系统课后习题-部分答案(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,程序计数器)。

(完整版)嵌入式系统课后答案马维华

(完整版)嵌入式系统课后答案马维华

第 1 章嵌入式系统概述1, 什么是嵌入式系统嵌入式系统的特点是什么嵌入式系统概念:(1) IEEE 对嵌入式系统的定义:用于控制,监视或者辅助操作机器和设备的装置.(2) 一般定义: 以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能, 可靠性,成本,体积,功耗有严格要求的专用计算机系统.嵌入式系统的特点:(1) 专用的计算机系统(2) 必须满足环境要求(3) 必须能满足对象系统的控制要求(4) 是集成计算机技术与各行业应用的集成系统(5) 具有较长的生命周期(6) 软件固化在非易失性存储器中(7) 必须能满足实时性要求(8) 需要专用开发环境和开发工具2, 简单分析几种嵌入式操作系统的主要特点, 包括嵌入式Linux,Windows CE,uCOS II 及VxWorks.(1) 嵌入式Lin ux:有多个主流版本,根据应用需求,性能略有差别•卩CL in ux是Linux小型化后, 适合于没有MMU的微处理器芯片而裁剪成的操作系统,卩CLinuX呆持了传统Linux操作系统的主要特性,包括稳定,强大的网络和文件系统的支持,卩CLinux裁剪了大量的Linux内核以缩小尺寸,适合像512KB RAM,1MB Flash 这样小容量,低成本的嵌入式系统•RT_Linux 即能兼容通常的Linux,又能保证强实时性•(2) Windows CE: 开发平台主要为WinCE Platform Builder,有时也用EVC 环境开发一些较上层的应用•WinCE 开发难度远低于嵌入式Linux,实时性略低,常用于手机,PDA 等手持设备中•(3) uCOS II: 结构小巧,抢先式的实时嵌入式操作系统,具有执行效率高,占用空间小,可移植性强,实时性能好和可扩展性能等优点•主要用于小型嵌入式系统•(4) VxWorks: 集成开发环境为Tornado,Vxworks 因出现稍早,实时性很强,并且内核可极微(最小8K),可靠性较高等•通常应用在通信设备等实时性要求较高的系统中•第 2 章嵌入式处理器体系结构1,具体说明ARM7TDMI 的含义,其中的T,D,M,I 分别代表什么ARM7TDMI是ARM7处理器系列成员之一,采用V4T版本指令.T表示Thumb,该内核可从16位指令集切换到32位ARM指令集;D表示Debug,该内核中放置了用于调试的结构,支持片内Debug调试;M表示Multiplier,支持位乘法;I表示Embedded ICE ,内含嵌入式ICE宏单元,支持片上断点和观察点•2, ARMV4及以上版本的CPSR的哪一位反映了处理器的状态若CPSR=0x000000090,分析系统状态•CPSR=0x000000090 表示当前处理器工作于ARM 状态,系统处于用户模式下•CPSR的BIT5(T)反映当前处理器工作于ARM 状态或Thumb状态.3,ARM 有哪几个异常类型,为什么FIQ 的服务程序地址要位于0x1C 在复位后,ARM 处理器处于何种模式,何种状态ARM 的7 种异常类型:复位RESET 异常,未定义的指令UND 异常,软件中断SWI 异常,指令预取中止PABT 异常,数据访问中止DABT 异常,外部中断请求IRQ 异常,快速中断请求FIQ 异常.在有快速中断发生时,CPU从Ox1C处取出指令执行.ARM复位后处于管理模式,工作于ARM 状态•4, 为什么要使用Thumb模式,与ARM代码相比较,Thumb代码的两大优势是什么为了兼容数据总线宽度为16 位的应用系统,使用了ARM 指令系统的一个子集Thumb 指令系统.与等价的32位代码相比,Thumb 指令集在保留32位代码优势时,大大节省了系统的存储空间.5, 说明AMBA,AHB,ASB 以及APB 的英文全称及其含义.AMBA(Advanced Microcontroller Bus Architecture) 即先进的微控制器总线体系结构, 是ARM 公司公布的总线标准,这一标准定义了AHB,ASB,APB 及AMBA 共 4 种高性能的系统总线规范.AHB(Advanced High_performance Bus) 先进的高性能总线,用于连接高性能系统组件或高宽带组件.它支持突发数据传输方式及单个数据传输方式,所有时序参考同一个时钟.ASB(Advaneed System Bus)即先进的系统总线,用于连接高性能的系统模块•它支持突发数据传输. APB(Advaened Peripheral Bus) 即先进的外围接口总线,是一个简单的接口•它支持低性能的外围接口,APB 是用来连接系统的周边组件•6, 简述MMU 从虚拟地址到物理地址的转换过程和方法• 虚拟地址到物理地址的转换过程:当ARM 要访问存储器时,MMU 先查找TLB 中的虚拟地址表,如果ARM 的结构支持分开的地址TLB 和指令TLB, 那么它在取指令时使用指令TLB, 其它的所有访问类别使用数据TLB; 如果TLB 中没有虚拟地址的入口,则是转换表遍历硬件从存储在主存储器中的转换表中获取访问权限,一旦取到,这些信息放在转换TLB 中,它会放在1个没有使用的入口处或覆盖 1 个已有的入口•虚拟地址到物理地址的转换方法:(1) 确定1 级页表的基地址•(2) 合成转换表的1 级描述符•(3) 根据不同的1级描述符获取第2 级描述符地址并找出第2 级描述符•(4) 将第2级页描述符指示的页基地址,与虚拟地址指示的页内偏移地址相加,得到相应页的物理地址,完成虚拟地址到物理地址的转换•第三章典型嵌入式处理器1,简述LPC2000 系列微控制器的内部有哪些重要的外设组件向量中断控制器,外部存储控制器,I2C 中行总线控制器,SPI 同步接口控制器,UART 串口控制器,定时器,AD 转换器,CAN 总线控制器,看门狗定时器等•2,S3C44B0X 如何组织8,16,32 位的存储器,地址线如何连接S3C44B0X 不同宽度的存储器地址线连接方法• 存储器地址引脚8 位总线16 位总线32 位总线A0A0A1A2A1A1A2A3A2A2A3A4A3A3A4A5Am-1Am-1Am-2Am-33, 说明I2C 的数据有效性和起停条件.数据有效性:当SCL信号为高电平时,SDA上的数据传输有效,传输时高位在前,低位在后,每个字节长度限制为位,而每次传送的字节总数没有限制.满足启动条件后的第一个字节应为地址域.每一个字节有一个应答位.起停条件:启动条件,在SCL信号保持高电平时SDA信号由高电平变为低电平;停止条件,要求在SCL 信号保持高电平时SDA 信号由低电平变为高电平.4,简述AT91FR40162 处理器的特点.AR91FR40162 采用ARM7TDMI 处理器核,内部集成了256KB 的片内SRAM 和1024K 字的16位Flash存储器,完全可编程的外部总线接口, 8个优先级且可以独立屏蔽的向量中断控制器,32个可编程的I/O 接口线,3通道16位定时/计数器,2个同步/异步收发器及可编程的看门狗定时器,能完成全静态操作,具有先进的省电特性.第四章嵌入式处理器指令系统1,填空题(1) 在源操作数为立即数时,应在前加#作为前缀,在#后加0x 或&表示十六进制数,在#后加%表示二进制数,#后加0d 或默认表示十进制数.(2) 根据堆栈指针指向的数据位置不同,堆栈可分为满堆栈和空堆栈.(3) 用一条指令完成人条件加法运算,并更新CPSR中的条件码,R1+R2->R3 ADDS R3,R1,R2.(4) 在程序执行过程中,是通过寄存器R15 控制程序的运行的.(5) 转移指令的跳转范围是-32MB-32MB.2,选择题(2) 堆栈随着存储器地址的增大而向上增长,基址寄存指向存贮有效数据的最高地址或者说指向第一个要读出的数据位置,是(A)堆栈.A,满递增B,空递增C,满递减D,空递减⑶在指令LDR R0,[R1,#4]!执行后,R1中的值为(C).A,R1 不变B,R1=R1+1 C,R1=R1+4 D,R1=43, 说明下列指令完成的功能(1) ADD R0,R1,R3,LSL #2 ;R0=R1+4R2(2) ANDNES RO,R1,#OxOF ;if (CPSR 寄存器中Z=0) R1的高28位清零后送寄存器R0并更新CPSR寄存器,else执行下一条指令.(3) LDRB R0,[R1,R2,LSR#2];把存储器地址为(R1+R2>>2)的字节数据加载到R0,R0的高24位清零.(4) ADCHI R1,R2,R3; if(CPSR 寄存器中Z=0并且C=1)执行R仁R2+R3加法操作,else执行下一条指令.(5) E0R RO,RO,R3,ROR R4; R3寄存器中的内容根据R4寄存器中的内容循环右移后与R0寄存器进行逻辑异或操作后,其结果存在R0 寄存器内.(7) MLA R0,R1,R2,R3; R0=R1 R2+R3 MLA 是32位乘加指令,运算结果的高32位自动丢掉.(8) LDR R1,[R0,-R5,LSL #4];将存储器地址为R0-16R5的字数据加载到寄存器R1中•4, 用汇编语言实现下列功能的程序段,令R1=a,R2=b.(1) if(a!=b)&a-b>5)) a=a+bCMP R1,R2BEQ NextADD R3,R2,#5CMP R1,R3BLS NextADD R1,R1,R2Next B Next(2) while(a!=0){b=b+b*2;a--;}AREA TestWhile,CODE,READONL Ya equ 5b equ 1ENTRYMOV R1,#aMOV R2,#bLOOPCTL CMP R1,#0ADDNE R2,R2,R2,LSL#1SUBNES R1,R1,#1BNE LOOPCTLEND⑶从a所指向的地址,拷贝20个32位数据到b所指向的地址AREA DataCopy,CODE,READONL YENTRYLDR R0,=SrcDataLDR R1,=DstDataMOV R2,#20LOOPCTL LDR R3,[R0],#4STR R3,[R1],#4SUBS R2,R2,#1BNE LOOPCTLWait B WaitAREA DataDef, DATA,READWRITESrcData DCD 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20DstData SPACE 4*10END6,试比较TST 与ANDS,CMP 与SUBS,MOV 与MVN 指令的区别.(1) TST 指令把两个操作数进行按位的与操作,并根据运算结果更新CPSR 中的条件标志位的值.该指令通常用来检测是否设置了特定的位,一般操作数 1 是要测试的数据,而操作数2是一个位掩码.ANDS 指令用于在两个操作数上进行逻辑与运算,并把结果放到目的寄存器中,操作数1 应是一个寄存器,操作数 2 可以是一个寄存器,被移位的寄存器,或是1个立即数.该指令常用于设置操作数 1 的某些位.TST和ANDS两条指令都影响CPSR寄存器;TST指令不改变参与运算的数据,而ANDS指令对目的寄存器进行更新.(2) CMP指令用于把2个操作数进行比较,同时更新CPSR中条件标志位的值•该指令进行一次减法运算,但不保存运算结果,只更改条件标志位.标志位表示的是操作数 1 和操作数 2 的关系(大,小,相等)•SUBS 指令用于把操作数1 送去操作数2,并将结果存放到目的寄存器中•操作数1 应是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或是一个立即数•指令影响CPSR值• CMP 和SUBS 指令都影响CPSR 寄存器;CMP 指令不保存运算结果,而SUBS 指令可以保存运算结果,并且减数和被减数的值也不发生变化•(3) MOV 指令将一个寄存器,被移位的寄存器或一个立即数的值装入目的寄存器内,可以指定相同的寄存器实现NOP 的效果,还可以移位一个寄存器•MVN 指令与MOV 指令的不同之处是在传送数据之前先按位取反,即把一个被取反的值传送到目的寄存器中•8,写一段ARM汇编程序:循环累加队列中的所有数据,直到碰到零值位置,结果放在R4•源程序末尾队列如下:Array:DCD 0x11DCD 0x22DCD 0x33DCD 0R0 指向队列头,ADR R0,ARRAY •使用命令LDR R1,[R0],#4来装载,累加至R4,循环直到R1为0,用死循环来停止•程序:AREA Cond_Sum,CODE,READONL YENTRYLDR R0,=ArrayMOV R4,#0LooPCtl LDR R1,[R0],#4CMP R1,#0ADDNE R4,R4,R1BNE LooPCtlWait B WaitAREA SrcData,CODE,READONL YArray DCD 0x11DCD 0x22DCD 0x33DCD 0END9,写一个汇编程序,求一个含64个带符号的16位数组组成的队列的平方和•程序:AREA SquareSum,CODE,READONL YENTRYLDR R0,=ArrayMOV R3,#4MOV R4,#0LooPCtl LDRH R1,[R0],#2MLA R4,R1,R1,R4SUBS R3,R3,#1BNE LooPCtlNOPAREA SrcData,CODE,READONL YArray DCD 0x00010002DCD 0x00030004END第五章嵌入式系统程序设计基础4, 简要说明EXPORT和IMPORT的使用方法.答:EXPORT伪指令用于在程序中声明一个全局的标号,该标号可在其它的文件中引用.EXPORT可用GLOBAL 代替•标号在程序中区分大小写.[WEAK]选项声明其它的同名标号优先于该标号被引用.IMPORT伪指令用于通知编译器要使用的标号在其它的源文件中定义,但要在当前源文件中引用,而且无论当前源文件中是否引用该标号,该标号均会被加入到当前源文件的符号表中.5, 分析说明下段程序完成什么功能AREA ChangeState,CODE,READONL YCODE32LDR R0,=Start+1BX R0CODE16Start MOV R1,#1END解:程序功能实现程序的跳转并从ARM状态切换到Thumb状态.6, 设计一段程序完成数据块的复制,数据从源数据区snum|复制到目标数据区dnum .复制时,以8个字为单位进行.对于最后所剩不足8个字的数据,以字为单位进行复制.程序:AREA BlockDataCopy,CODE,READONL Ynum EQU 20ENTRYStart LDR R0,=snumLDR R1,=dnumMOV R2,#numMOV R13,#400BlockCopy MOVS R3,R2,LSR#3BEQ CopyWordsSTMFD R13!,{R4-R11}OctCopy LDMIA R0!,{R4-R11}STMIA R1!,{R4-R11}SUBS R3,R3,#1BNE OctCopyLDMFD R13!,{R4-R11}CopyWords ANDS R2,R2,#7BEQ StopWordsCopy LDR R3,[R0],#4STR R3,[R0],#4SUBS R2,R2,#1BNE WordsCopyStop B StopAREA BlockData, DATA,READWRITEsnum DCD 1,2,3,4,5,6,7,8,9,10,11DCD 12,13,14,15,16,17,18,19,20dnum SPACE 20*4END7, 利用跳转表的思想编写一个汇编程序,实现3 个不同的子当R0 分别为0,1,2 时完成跳转到程序.程序:AREA JumpTable,CODE,READONL Ynum EQU 3ENTRYStart MOV R0,#1MOV R1,#3MOV R2,#2BL JumpTblCtlStop B StopJumpTblCtl CMP R0,#numMOVHS PC,LRADR R3,JumpTblEntryLDR PC,[R3,R0,LSL#2]JumpTblEntry DCD Subroutine1DCD Subroutine2DCD Subroutine3Subroutine1 MOV R3,#0x55MOV PC,LRSubroutine2 MOV R4,#0xAAMOV PC,LRSubroutine3 MOV R5,#0x5AMOV PC,LREND第六章嵌入式操作系统1, 简述卩CLinux的特点,说明其主要应用的环境.答:卩CLinux主要是为控制领域定做的LINUX版本其设计思想就是对标准LINUX内核进行裁剪,去除虚拟管理部分代码,并且对内存分配进行优化,以达到提高系统运行效率的目的. 特点:(1) 包含通用LINUX API 函数.(2) 内核体积小于512KB(3) 内核及文件系统体积小于900KB(4) 具有完整的TCP/IP 协议栈(5) 支持多种文件系统.2, 简述CLinux的移植过程.答:(1)配置内核(2) 编译内核(3) 下载,运行,调试内核第七章嵌入式系统的BootLoader1, 简述Boot Loader 与嵌入式系统的关系.Boot Loader 是在操作系统内核或用户应用程序运行之前运行的一段小程序.其作用为:初始化硬件设备,建立内存空间的映射图,将系统的软件件环境带到一个合适的状态,为最终调用操作系统内核或用户应用程序准备好正确的环境.2, Boot Loader 的主要功能有哪些答:初始化硬件设备,检测系统内存映射,将内核映像和根文件系统从Flash 传到RAM 空间,并为内核设置启动参数,最后调用内核.3, Boot Loader 分为几个阶段,各阶段主要完成什么功能答:Boot Loader通常分为2个阶段.阶段1完成基本硬件的初始化加载阶段2的RAM空间, 复制阶段2到RAM,设置堆栈指针,跳转到阶段2的C程序入口点.在阶段2初始化阶段2要使用的硬件设备,检测系统内存映射,加载内核映像和根文件系统映像,调用内核.第八章嵌入式系统设计1, 简述嵌入式系统设计的一般步骤.答:⑴需求分析;⑵体系结构设计;⑶硬件,软件,执行机构设计;⑷系统集成⑸系统测试2, 简述软,硬件协同设计的过程.⑴需求分析;⑵软,硬件协同设计;⑶软,硬件实现;⑷软,硬件协同测试和验证。

(完整word版)嵌入式系统原理与应用习题答案

(完整word版)嵌入式系统原理与应用习题答案

版权说明本文件中出现的任何文字叙述、文件格式、插图、照片、方法、过程等内容,除另有特别注明,版权均属本人所有。

----WangYiwei由于我正在学习“嵌入式系统原理与应用——基于ARM微处理器和Linux操作系统”这门课程,网络上找不到课后习题答案。

因此本人通过认真地做习题,不懂百度,查阅相关书籍等途径,整理了一份答案,可供各位参考。

注意:答案并不一定完全正确,有异议的答案欢迎提出来大家一起探讨。

1.8 练习题P141.选择题(1)A说明:嵌入式系统的发展趋势表现在以下几方面:1.产品种类不断丰富,应用范围不断普及2.产品性能不断提高3.产品功耗不断降低,体积不断缩小4.网络化、智能化程度不断提高5.软件成为影响价格的主要因素(2)D说明:常见的嵌入式操作系统: VxWorks,Windows CE、uC/OS-II和嵌入式Linux。

(3)A说明:VxWorks是美国WindRiver公司于1983年开发的一种32位嵌入式实时操作系统。

2.填空题(1)嵌入式计算机(2)微处理器外围电路外部设备(3)板级支持包实时操作系统应用编程接口应用程序(4)嵌入式处理器微控制器数字信号处理器3.简答题(1)简述嵌入式系统的定义和特点答:定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。

特点:专用性强、实时性好、可裁剪性好、可靠性高和功耗低等。

(2)简述计算机系统的发展历程第一阶段大致在20世纪70年代前后,可以看成是嵌入式系统的萌芽阶段;第二阶段是以嵌入式微处理器为基础,以简单操作系统为核心的嵌入式系统;第三阶段是以嵌入式操作系统为标志的嵌入式系统,也是嵌入式应用开始普及的阶段;第四阶段是以基于Internet为标志的嵌入式系统,这是一个正在迅速发展的阶段。

(3)简述MCU和DSP的区别MCU是微控制器,DSP是数字信号处理器。

MCU相当于小型的电脑,内部集成的CPU、ROM、RAM、I/O总线,所以集成度高是它的特点。

嵌入式课后答案

嵌入式课后答案

1.什么是嵌入式系统?特点是什么?嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,对功能、可靠性、成本、体积、功耗、有特殊要求的专用计算机系统。

特点:1.嵌入式2.专用性3.计算机系统 4.硬件高性能配置5.软件固态化存储6.软件代码高质量、高可靠性7.实时性8.集成性2.嵌入式系统的发展经历了哪几个阶段1.以单芯片为核心的可编程控制器形式的系统。

2.以嵌入式CPU为基础、以简单操作系统为核心的嵌入式系统 3.以嵌入式操作系统为标志的嵌入式系统 4.以互联网为标志的嵌入式系统3.简述嵌入式处理器的分类和各自的主要特点(1)嵌入式微控制器和嵌入式微处理器相比,微控制器的单片化使应用系统的体积大大减小,从而使功耗和成本大幅度下降、可靠性提高。

(2)嵌入式微处理器和工业控制计算机相比,MPU组成的系统具有体积小、重量轻、成本低、可靠性高的优点,但在其电路板上必须包括ROM、RAM、总线接口、各种外设等器件,从而降低了系统的可靠性,技术保密性也较差。

(3)嵌入式数字信号处理器具有很高的编译效率和指令执行速度(4)嵌入式片上系统SOC最大的特点是成功实现了软硬件无缝结合,直接在处理器片内嵌入操作系统的代码模块。

(5)嵌入式双核处理器和嵌入式多核处理器克服了传统处理器通过提升工作效率来提升处理器性能而导致耗电量和发热量越来越大的缺点,提高CPU性能4.简述嵌入式软件的结构及各组成部分的主要特点。

1.板级支持包:它具有操作系统相关性、硬件相关性的特点2.嵌入式操作系统:(1)可装卸性(2)强实时性。

(3)统一的接口(4)操作方便,简单,友好的图形GUI。

(5)提供强大的网络功能(6)强稳定性,弱交互性(7)操作系统和应用软件固化在ROM中(8)更好的硬件适应性。

3.中间件:便于用户开发应用软件程序,同时也使应用程序具有跨平台的特性,4.应用软件:用来达到用户预期目标的计算机软件,减少对系统资源的消耗,降低硬件成本。

嵌入式课后习题答案

嵌入式课后习题答案
3、ARM微处理器选型时应注意:
1、ARM微处理器内核的选择
2、系统的工作频率
3、芯片内存储器的容量
4、片内外围电路的选择
第四章
一、填空题。
1、程序段(Section)、代码段(Code Section)、数据段(Data Section)
2、:、@
3、符号定义伪指令(Symbol Definition)、数据定义伪指令(Data Definition)、汇编控制伪指令(Assembly Control)、宏指令
Linux给个人计算机带来了能够与UNIX系统相比的速度、效率和灵活性,使个人计算机所具有的潜力得到了充分发挥。Linux与Windows工作方式存在一些根本的区别,这些区别只有在用户对两者都很熟悉之后才能体会到,但它们却是Linux思想的核心。
2、目前主流的图形界面环境有KDE和GNOME两种图形环境。
arch:arch目录包括了所有和体系结构相关的核心代码。include:include目录包括编译核心所需要的大部分头文件,例如与平台无关的头文件在include/linux子目录下;init:init目录包含核心的初始化代码(不是系统的引导代码),有main.c和Version.c两个文件;mm:mm目录包含了所有的内存管理代码。与具体硬件体系结构相关的内存管理代码位于arch/*/mm目录下;drivers:drivers目录中是系统中所有的设备驱动程序。它又进一步划分成几类设备驱动,每一种有对应的子目录,如声卡的驱动对应于drivers/sound;ipc:ipc目录包含了核心进程间的通信代码;modules:modules目录存放了已建好的、可动态加载的模块;fs:fs目录存放Linux支持的文件系统代码。不同的文件系统有不同的子目录对应,如ext3文件系统对应的就是ext3子目录;Kernel:Kernel内核管理的核心代码放在这里。同时与处理器结构相关代码都放在arch/*/kernel目录下;net:net目录里是核心的网络部分代码,其每个子目录对应于网络的一个方面;lib:lib目录包含了核心的库代码,不过与处理器结构相关的库代码被放在arch/*/lib/目录下;scripts:scripts目录包含用于配置核心的脚本文件;documentation:documentation目录下是一些文档,是对每个目录作用的具体说明。

嵌入式课后答案整理

嵌入式课后答案整理

嵌入式课后答案整理其次章(1)S3C2410A AHB总线中衔接了哪些控制器?APB总线上衔接了哪些部件?答:AHB:存储器控制器;NandFash 控制器;中断控制器;LCD 控制器;USB主控制器;时钟与电源管理。

APB:通用异步收发器;通用I/O端口(GPIO);定时器/脉冲调制;实时时钟(RTC);看门狗定时器;A/D转换器与触摸屏;IIC (Itergrated Circuit,内部集成电路)总线接口;SPI(串行外设接口);MMC/SD/SDIO主控制器;USB设备控制器。

(2)S3C2410A中使用的CPU内核是那个公司的产品?什么型号?答:ARM公司的ARM920T内核。

(3)S3C2410A的存储器控制器可以支持哪些类型的存储器芯片?答:bank0-bank7支持ROM/SRAM,其中bank6-bank7也支持SDRAM。

(4)S3C2410A中LCD控制器使用什么存储器作为显示存储器?答:LCD控制器支持STN LCD显示以及TFT LCD显示,显示缓冲区使用系统存储器(内存),支持专用LCD DMA将显示缓冲区数据传送到LCD控制器缓冲区。

(5)4通道DMA支持存储器到存储器的数据传输吗?支持I/O到I/O的数据传输吗?支持I/O 到存储器的数据传输吗?答:支持;支持;支持。

(6)简述AHB、APB总线的含义。

答:AHB是一种片上总线,用于衔接时钟频率和高性能的系统模块,支持突发传输、支持刘顺县操作,也支持单个数据传输,全部的时序都以单一时钟的前沿为基准操作。

APB也是一种片上总线,为低性能、慢速外设提供了较为容易的接口,不支持流水线操作。

(7)S3C2410A主时钟频率最高达到多少MHz?答:266MHz。

(8)S3C2410A内有几通道A/D转换器?转换器是多少位的?答:8通道;10位。

(9)S3C2410A支持多少个中断源?支持多少个外部中断源?答:55个;24个外部中断源。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二章(1)S3C2410A AHB总线中连接了哪些控制器?APB总线上连接了哪些部件?答:AHB:存储器控制器;NandFash 控制器;中断控制器;LCD控制器;USB主控制器;时钟与电源管理。

APB:通用异步收发器;通用I/O端口(GPIO);定时器/脉冲调制;实时时钟(RTC);看门狗定时器;A/D转换器与触摸屏;IIC(Itergrated Circuit,内部集成电路)总线接口;SPI(串行外设接口);MMC/SD/SDIO主控制器;USB设备控制器。

(2)S3C2410A中使用的CPU内核是那个公司的产品?什么型号?答:ARM公司的ARM920T内核。

(3)S3C2410A的存储器控制器可以支持哪些类型的存储器芯片?答:bank0-bank7支持ROM/SRAM,其中bank6-bank7也支持SDRAM。

(4)S3C2410A中LCD控制器使用什么存储器作为显示存储器?答:LCD控制器支持STN LCD显示以及TFT LCD显示,显示缓冲区使用系统存储器(内存),支持专用LCD DMA将显示缓冲区数据传送到LCD控制器缓冲区。

(5)4通道DMA支持存储器到存储器的数据传输吗?支持I/O到I/O的数据传输吗?支持I/O 到存储器的数据传输吗?答:支持;支持;支持。

(6)简述AHB、APB总线的含义。

答:AHB是一种片上总线,用于连接时钟频率和高性能的系统模块,支持突发传输、支持刘顺县操作,也支持单个数据传输,所有的时序都以单一时钟的前沿为基准操作。

APB也是一种片上总线,为低性能、慢速外设提供了较为简单的接口,不支持流水线操作。

(7)S3C2410A主时钟频率最高达到多少MHz?答:266MHz。

(8)S3C2410A内有几通道A/D转换器?转换器是多少位的?答:8通道;10位。

(9)S3C2410A支持多少个中断源?支持多少个外部中断源?答:55个;24个外部中断源。

(10)S3C2410A存储器寻址空间有多大?每个bank空间有多大?支持几个banks?答:1GB;128MB;8个。

(11)S3C2410A微处理器支持几种数据总线宽度?bank0和其他banks各支持几种数据总线宽度?答:3种;bank0支持可编程的16/32位数据总线宽度;bank1支持可编程的8/16/32位数据总线宽度。

(12)S3C2410A支持存储器与I/O地址统一编址,还是独立编址?答:统一编址。

(13)特殊功能寄存器已经集成在S3C2410A片内了,还是需要在片外另加存储器芯片?答:内部。

(14)ARM920T核使用了几级流水线结构?答:五级。

(15)指令和数据cache是分开的,还是共用的?容量是多少KB?答:分开的;单独的16KB指令cache,单独的16KB数据cache。

(16)ARM920T有几种指令集?各有什么特点?答:ARM920T有两种指令集,32位的ARM和16位的Thumb指令集。

特点:ARM指令集:所有的指令都是32位固定长度,便于译码和流水线实现,并且在内存中以4字节边界地址对齐保存;只有LOAD-STORE类型的指令才可以访问内存;使用了桶形移位器,可以在一个指令周期内完成移位操作和ALU操作。

Thumb指令集:Thumb指令集虽然是一个16位的指令集,但是能够在32位的ARM920T处理器上运行。

Thumb指令集执行效率比传统的16位结构的处理器更有效,也比32位结构的处理器有更高的代码密度。

Thumb指令集是32位ARM指令集中最常用的指令功能上的一个子集。

Thumb指令集有效果相同的32位ARM指令对应。

(17)ARM920T有几种操作状态?如何转换?每种状态各有什么特点?答:两种状态,ARM状态,Thumb状态;使用ARM指令集的BX指令,并且BX指令指定寄存器bit[]=1,能够从ARM状态进入Thumb状态。

使用Thumb指令集的BX指令指定寄存器的bit[0]=0,能够从Thumb状态进入ARM状态。

特点:ARM状态,在这种状态执行32位长度的、字边界对齐的ARM指令。

Thumb状态,在这种状态执行16位长度的、半字边界对齐的Thumb指令。

简述存储器格式中大端,小端格式有何不同?答:大端格式字寻址使用的地址,是数据最高字节对应的字节地址。

小端格式字寻址使用的地址,是数据最字节对应的字节地址。

19、ARM920T支持哪几种数据类型?答:字,32位;半字,16位;字节,8位。

20、ARM920T支持哪几种操作方式?答:ARM920T支持7种操作方式,用户、快速中断请求、中断请求、管理程序、终止、系统、未定义。

21、特权方式包含哪几种操作方式?答:快速中断请求、中断请求、管理程序、终止、系统、未定义。

22、ARM状态下不同的操作方式分别可以使用那些寄存器?Thumb状态下不同的操作方式分别可以使用那些寄存器?答:ARM状态下System and User:r0到r14,r15(PC)FIQ:r0到r7,r8-fiq到r14-fiq,r15(PC)Supervisor:r0到r12,r13-svc,r14-svc,r15(PC)Abort:r0到r12,r13-abt,r14-abt,r15(PC)IRQ:r0到r12,r13-irq,r14-irq,r15(PC)Undefined:r0到r12,r13-und,r14-und,r15(PC)Thumb状态下System and User:r0到r7,SP,SR,PC;FIQ:r0到r7,SP-fiq,LR-fiq,PC;Supervisor:r0到r7,SP-svc ,LR-svc,PC;23、简述LR,PC、SPSR、CPSR和SP寄存器的用法?•答:LR:寄存器r14用作子程序连接寄存器。

当一条分支并且连接指令(BL)被执行时,寄存器r14收到r15的一个拷贝。

在其他时间,r14能被看作通用寄存器。

PC:在ARM状态下,r15的bit[1:0]是无定义且必须被忽略的,而r15的bit[31:2]含有程序计数值。

在Thumb状态下,r15的bit[0]是无定义且必须被忽略的,而r15的bit[31:1]含有程序计数值。

CPSR和SPSR与ARM状态下的CPSR和SPSR是相同的;SP映射到ARM状态下的r13 24、什么叫高寄存器组?低寄存器组?答:Thumb状态下,寄存器r0到r7称为低寄存器组,寄存器r8到r15称为高寄存器组。

25、简述程序状态器的格式和为一位的含义?答:程序状态寄存器格式有bit[31:28] 条件码标志,bit[31]N负于或低于 bit[30]Z 零bit[29]C 进位/溢位/扩展 bit[28]v 溢出 bit[27:8]保留 bit[7:0]控制位 bit[7]IRQ禁止 bit[6]FIQ禁止bit[5]状态位bit[4:0]方式位26、简述异常进入和退出需要做哪些处理?答:在对应的LR中保存下一条指令的地址。

•当异常是从ARM状态进入,处理器复制下一条指令的地址到LR,这时地址是PC+4或PC+8,与不同的异常有关。

•当异常从Thumb状态进入,处理器写当前的PC值到LR,这时地址是PC+2或PC+4,与不同的异常有关。

•异常处理不必确定进入异常前的状态。

例如由SWI进入异常,MOVS PC,r14_svc总是返回到下一条指令,而不管SWI是在ARM或Thumb状态下被执行。

退出:当异常处理完时,异常处理程序必须:•⑴参考表2.4,对应不同类型的异常,直接传送LR到PC或从LR中减去一个偏移量送到PC。

•⑵复制SPSR到CPSR。

•⑶清除在进入异常时被设置的中断禁止标志。

•将SPSR值恢复到CPSR的同时,自动地将T位的值恢复成进入异常前的值。

27、简述终止的一般含义?答:中止处理程序必须:①确定中止原因,使请求的数据可用。

②用LDR Rn,[r14_abt,#-8]指令,取回引起中止的指令,确定那条指令是否指定了回写基址寄存器,如果是这样,中止处理程序还必须:从这条指令确定对基址寄存器回写的偏移量是多少;当中止处理程序返回时,使用相反的偏移量重装到基址寄存器。

28、简述未定义指令的用途?答:当ARM7TDMI处理器遇到一条指令,这条指令即不是ARM7TDMI处理器的指令,又不是系统内任何协处理器能处理的指令,ARM7TDMI产生未定义指令陷阱。

29、说出各异常优先级的次序?答:复位最高,数据中断次之,然后是快速中断请求,中断请求,指令预取中止,未定义指令和软件中断最低30、说出各异常的向量地址?答:复位的向量地址为0x00000000,未定义指令为0x00000004,软件中断0x00000008,预取中止0x0000000C,数据中止0x00000010,保留0x00000014,中断请求0x00000018,快速中断请求0x0000001C31、S3C2410A有多少个引脚?内核使用电压时多少伏?S3C2410A片内的寄存器和I/O使用电压是多少伏?答:S3C2410A有272个引脚,内核1.8V用于S3C2410A-20;内核2V用于S3C2410A-26;S3C2410A片内的寄存器和I/O使用电压是3.3V32、S3C2410A Nand Flash控制器支持从Nand Flash引导系统吗?答:支持33、S3C2410A LCD控制器支持哪两种不同类型的液晶显示器?答:LCD控制器支持STN LCD显示以及TFT LCD显示34、S3C2410A支持USB主控制器吗?支持USB设备控制器吗?答:支持2个端口的USB主(Host)控制器·兼容OHCI Rev 1.0·兼容USB V 1.1·支持低速和全速设备第三章1、简述ARM指令集的主要能力答:(1)条件执行(2)寄存器访问(3)在线式桶形移位器的访问2、简述程序计数器pc、连接寄存器1r、堆栈指针sp、CPSR和SPSR的用法答:程序计数器pc也成R15寄存器,在ARM状态下,岁每条指令以1个字作为地址增量;在Thumb状态,以2字节作为地址增量。

连接寄存器1r :寄存器14作为子程序连接寄存器。

当一条分支并且连接指令(BL)被执行时,寄存器14收到R15的一个拷贝。

在其他时间,R14被看做通用寄存器。

堆栈指针sp :寄存器R13习惯用于作堆栈指针,总是指向栈顶元素。

CPSR和SPSR :保存最近执行过的ALU操作的信息;控制允许或禁止中断;设置处理器操作方式。

3、简述处理器如何从ARM状态转换到Thum状态的答:分支并且转换状态指令BX,在指令中制定了一个Rn寄存器,将Rn内容拷贝到PC,同时使PC[0]=0.如果 Rn[0]=1,将处理器状态转换成Thumb状态,把目标地址处的代码解释为Thumb代码;如果Rn[0]=0,将处理器状态转换成ARM状态,把目标地址处的代码解释为ARM代码。

相关文档
最新文档