还剩21页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
1.嵌入式系统是以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统
2.在嵌入式系统设计过程中,需求分析包括功能性需求分析和非功能性需求分析
3.ARM字数据存储格式有大端格式和小端格式
4.总线按照传输关系分类可分为主从结构和对等结构
5.RS-232C的帧格式由四部分组成,包括起始位、数据位、奇偶校验位和停止位
6.USB低速设备应该在D-线上接一个上拉电阻,全速设备应该在D+线上接一个上拉电阻
7.I/O接口电路数据传送方式有查询、中断、DMA、I/O通道和I/O处理机方式实时系统的关键问题是保证系统的实时性;实时操作系统就是指具有实时性、能支持实时系统工作的操作系统实时操作系统的评价指标有任务调度算法、上下文切换时间、确定性、最小内存开销和最大中断禁止时间
1.下面哪个系统属于嵌入式系统(D)A、“天河一号”计算机系统B、联想T400笔记本计算机C、联想S10上网本D、联想OPhone手机
2.软硬件协同设计方法与传统设计方法的最大不同之处在于(B)A、软硬件分开描述B、软硬件统一描述C、协同测试D、协同验证
3.下面关于哈佛结构描述正确的是(A)A、程序存储空间与数据存储空间分离B、存储空间与IO空间分离C、程序存储空间与数据存储空间合并D、存储空间与IO空间合并
4.下面哪一种工作模式不属于ARM特权模式(A)A、用户模式B、系统模式C、软中断模式D、FIQ模式
5.ARM7TDMI的工作状态包括(D)A、测试状态和运行状态B、挂起状态和就绪状态C、就绪状态和运行状态D、ARM状态和Thumb状态
6.指令“LDMIAR0!{R1R2R3R4}”的寻址方式为(C)A、立即寻址B、寄存器间接寻址C、多寄存器寻址D、堆栈寻址
7.USB接口移动硬盘最合适的传输类型为(B)A、控制传输B、批量传输C、中断传输D、等时传输
8.下面哪一种功能单元不属于I/O接口电路(D)A、USB控制器B、UART控制器C、以太网控制器D、LED
9.下面哪个操作系统是嵌入式操作系统(B)A、Red-hatLinuxB、µCLinuxC、UbuntuLinuxD、SUSELinux
10.使用Host-Target联合开发嵌入式应用,(B)不是必须的A、宿主机B、银河麒麟操作系统C、目标机D、交叉编译器简答题
1.简述嵌入式处理器的特点(列出五个特点以上)答低档处理器多采用哈佛结构,高档处理器多采用冯·诺伊曼结构;品种规格
2.系列化;对实时多任务有很强的支持能力;可靠性高、功耗低、集成度高、性价比高(每个特点1分)
3.什么是CMOS电平?有何特点?答发送端高电平
0.9Vdd,低电平
0.1Vdd;(2分)接收端高电平
0.7Vdd,低电平
0.3Vdd(2分)特点噪声容限大,负载能力强(1分)
4.什么是信号的建立时间?什么是信号的保持时间?答建立时间在时钟信号边沿到来之前,数据信号必须提前一段时间保持稳定有效(
2.5分)保持时间在时钟信号边沿到来之后,数据信号必须在随后的一段时间内保持稳定有效(
2.5分)
5.什么是非抢先式实时操作系统?有何优缺点?它的实时性如何决定?答对于基于优先级的实时操作系统而言,非抢先式实时操作系统是指某个任务运行后,就把CPU控制权完全交给了该任务,直到它主动将CPU控制权还回来(2分)优点实时性比不使用实时操作系统的好,程序设计相对简单,可调用不可重入函数(任务间不嵌套)(1分)缺点如果最长任务的执行时间不能确定,系统的实时性就不能确定(1分)实时性取决于最长任务的执行时间(1分)
6.简述优先级倒置产生的条件、现象以及解决方案答条件基于优先级抢先式的任务调度、资源共享(1分)现象低优先级任务L和高优先级任务H共享资源,在任务L占有共享资源之后,任务H就绪,但这时任务H必须等待任务L完成对共享资源的操作在任务L完成对共享资源的操作之前,任务M也已就绪并将抢先任务L运行在任务M运行时,系统中具有最高优先级的任务H仍然保持挂起状态(3分)解决方案优先级继承、优先级顶置(1分)
7.右下图为USB批量IN传输事务流程图,请根据右下图用文字叙述其工作过程(包括4+2个分支并说明分支出现的原因)INNAK空闲令牌段Token数据段Data握手段Handshake空闲主机发出设备发出DATA0/1ACKSTALL答令牌段(2分)主机发出令牌包,寻址从机数据段(4分)从机如果接收令牌包出错,无响应;从机端点不存在,回送STALL;从机端点数据未准备好,回送NAK;从机端点数据准备好,回送数据包握手段(4分)主机如果接收数据包出错,无响应;主机如果接收数据包正确,回送ACK请用C语言编写一个简单框架程序(个别地方也可文字叙述),要求体现前后台系统的编程思想(任务就是一个函数,直接调用,无需实现,但至少三个任务),并分析前后台系统的优缺点以及它的实时性如何决定答后台程序voidmainvoid{Init//初始化while1(1分){ifeventFlag1(1分)task1;elseifeventFlag2(1分)task2;elseifeventFlag3(1分)task3;}}前台程序__irqvoidHandleFlag1void(1分){清中断请求标志;eventFlag1=true;}__irqvoidHandleFlag2void(1分){清中断请求标志;eventFlag2=true;}__irqvoidHandleFlag3void(1分){清中断请求标志;eventFlag3=true;}优点系统结构简单,几乎不需要额外的存储开销(1分)缺点所有的任务具有相同的优先级别,任务响应时间不可预测;后台程序是一个无限循环的结构,一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其他任务得不到机会被处理,从而造成整个系统的崩溃(1分)实时性取决于所有其它任务的执行时间之和(1分)形形色色的嵌入式系统默默无闻地生活在我们的身边,为我们的学习生活增加了无穷的乐趣请列举你所熟悉的五个嵌入式应用系统,并对每个嵌入式系统作简单的分析(指出它为什么是嵌入式系统)答答案众多(评分标准每一个应用2分,其中题目1分,简要分析1分) U盘(2分);MP3播放器(2分);手机(2分);蓝牙耳机(2分);GPS导航仪(2分)等等简要分析略
8.从模块结构来看,嵌入式系统由三大部分组成,分别是硬件、软件和开发平台
9.嵌入式系统的设计过程包括需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试ARM系列微处理器支持的边界对齐格式有字节对齐、半字对齐和字对齐
10.RAM存储器有两种,分别是SRMA和DRAM总线由传输信息的物理介质和管理信息传输的协议组成采用RS232C实现最简单的双机互联,至少需要如下信号线TXD、RXD和GNDUSB通信总线中的事务可能由令牌包、数据包和握手包组成
11.I/O接口编址方式有两种,分别是统一编址和独立编址
12.在宿主机上使用编译器软件将嵌入式应用、嵌入式操作系统编译成为可以在目标机上运行代码的过程,称为交叉编译,而采用的编译器称为交叉编译器
13.嵌入式操作系统的内核构成包括系统初始化、多任务管理和内存管理
14.下面哪个系统不属于嵌入式系统(D)A、MP3播放器B、GPS接收机C、“银河玉衡”核心路由器D、“天河一号”计算机系统
15.在嵌入式系统设计中,嵌入式处理器选型是在进行(C)时完成A、需求分析B、系统集成C、体系结构设计D、软硬件设计
16.下面哪一类嵌入式处理器最适合于用于工业控制(B)A、嵌入式微处理器B、微控制器C、DSPD、以上都不合适
17.关于ARM子程序和Thumb子程序互相调用描述正确的是(B)A、系统初始化之后,ARM处理器只能工作在一种状态,不存在互相调用B、只要遵循一定调用的规则,Thumb子程序和ARM子程序就可以互相调用C、只要遵循一定调用的规则,仅能Thumb子程序调用ARM子程序D、只要遵循一定调用的规则,仅能ARM子程序调用Thumb子程序
18.关于ARM处理器的异常的描述不正确的是(C)A、复位属于异常B、除数为零会引起异常C、所有异常都要返回D、外部中断会引起异常
19.下面总线不属于对等结构的是(A)A、PCIB、IEEE1394C、令牌网D、以太网
20.USB总线采用的通信方式为(A)A、轮询方式B、中断方式C、DMA方式D、I/O通道方式
21.嵌入式系统最常用的数据传送方式是(B)A、查询B、中断C、DMAD、I/O处理机22,µClinux与标准Linux最大的区别在于(B)A、文件系统B、内存管理C、任务调度算法D、应用开发模式
23.嵌入式操作系统一般通过(A)手段来解决代码体积与嵌入式应用多样性嵌入式操作系统一般通过(A)手段来解决代码体积与嵌入式应用多样性的问题A、使用可定制的操作系统B、将操作系统分布在多个处理器上运行C、增大嵌入式设备的存储容量D、使用压缩软件对操作系统进行压缩
24.谈一谈嵌入式系统的发展趋势(列出五个趋势以上)答产品种类不断丰富;应用范围不断普及;性能不断提高;功耗不断降低,体积不断缩小;网络化、智能化程度不断提高;软件成为影响价格的主要因素(每个趋势1分)
25.简述嵌入式微处理器的特点答嵌入式微处理器的特点通用微处理器的增强,一般为32位(1分)构成一般CPU、存储器、I/O接口三者分离;(1分)性能一般为100~2000MIPS;(1分)存储器Flash一般为1~16MB,SDRAM一般为2~64MB;(1分)一般加载复杂嵌入式操作系统VxWorks、WinCE、µClinux等(1分)
26.什么是访存时序配合?答存控发出的信号要满足存储器的时序要求(
2.5分);存储器返回的信号要满足存控的时序要求(
2.5分)
27.请指出USB总线的四种传输类型,并指出每一种传输类型的基本特点答四种传输类型控制传输、批量传输、中断传输和等时传输(1分)控制传输双向,纠错,查询、配置设备信息;(1分)批量传输单向,纠错,大块无结构数据,延迟不定;(1分)中断传输单向,纠错,小块无结构数据,延迟确定;(1分)等时传输单向,无纠错,大块无结构数据,延迟确定(1分)
28.什么是前后台系统?有何优缺点?它的实时性如何决定?答前后台系统分为前台程序和后台程序前台程序也称中断级程序,通过中断来处理事件,在中断服务子程序中,一般对中断做一些简单的处理,然后给出事件发生的标志,待后台程序来处理;后台程序也称任务级程序,一个死循环,循环查询各种标志位,如果标志位置位,就执行相应的任务程序(2分)优点系统结构简单,几乎不需要额外的存储开销(1分)缺点所有的任务具有相同的优先级别,任务响应时间不可预测;后台程序是一个无限循环的结构,一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其他任务得不到机会被处理,从而造成整个系统的崩溃(1分)实时性取决于所有其它任务的执行时间之和(1分)
29.简述嵌入式操作系统和实时操作系统的关系答“嵌入式”并不意味着“实时”,例如µClinux、EmbeddedLinux为嵌入式操作系统但非实时操作系统(2分);“实时”并不意味着“嵌入式”,例如OpenVMS(工作站、小型机)为实时操作系统但非嵌入式操作系统(2分);不过实际上,目前的嵌入式操作系统(EOS)基本上是实时操作系统(RTOS)(1分)下图为单周期存储器读时序图clk为时钟信号,上升沿有效;rd为读信号,高电平有效问如果主设备要求的建立时间,保持时间,则此系统的最高时钟频率为多少?能否满足保持时间的要求?(要求写出计算过程)参考功能描述最小值最大值单位t0rd延迟时间510nst1rd持续时间60nst2rd有效到数据输出30nst3rd无效到data持续时间510nst0clkaddrdataAArdt3t1t2t0答满足存储器读rd时序要求,则时钟周期要保证主设备有足够的建立时间,则时钟周期要保证主设备有足够的保持时间最高时钟频率为分析下述S3C44B0x的示例程序#includeS3C44B0X.hvolatileunsignedlongtimeval;//当前时刻voidmainvoid{init_timer;//InitializeTimerwhile1{pPIO-PDATE=0xFD;//TurnLED1Onwait1000;//Wait1000mspPIO-PDATE=0xFB;//TurnLED2Onwait1000;//Wait1000ms}}//初始化Timer5以及开定时中断voidinit_timervoid{……}//1ms产生一次定时中断__irqvoidHandlerTIMER5void{timeval++;pIC-I_ISPC=INT_TIMER5;}//等待函数,以毫秒为单位voidwaitunsignedlongtime{……}问
①语句“while1{……}”的作用是什么?
②关键词“__irq”的作用是什么?
③语句“pIC-I_ISPC=INT_TIMER5;”的作用是什么?
④子程序HandlerTIMER5并未被调用,它是如何执行的?
⑤此程序的功能是什么?答
①语句“while1{……}”的作用是死循环、等待中断、LED显示;(2分)
②关键词“__irq”的作用是指明该函数为IRQ中断服务子程序;(2分)
③语句“pIC-I_ISPC=INT_TIMER5;”的作用是清除中断请求标志;(2分)
④中断源发出中断请求,CPU响应中断并查询中断源得到中断向量表入口地址,到中断向量表相应入口地址取指令执行,该处为跳转指令,执行跳转指令跳转到子程序HandlerTIMER5处执行;(2分)
⑤此程序的功能是双灯闪烁(2分)
3、PC机不是嵌入式系统,但是PC机中却包含了大量的嵌入式系统列举其中包含的嵌入式应用系统(至少三个),并对每个嵌入式应用系统作简单的介绍和分析答答案众多(评分标准每一个应用3分,叙述详细最多加1分)键盘、鼠标、光驱、显示器等,介绍及分析略ARM处理器状态ARM微处理器的工作状态一般有两种,并可在两种状态之间切换第一种为ARM状态,此时处理器执行32位的字对齐的ARM指令;第二种为Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且,处理器工作状态的转变并不影响处理器的工作模式和相应寄存器中的内容但ARM微处理器在开始执行代码时,应该处于ARM状态ARM处理器状态进入Thumb状态当操作数寄存器的状态位(位0)为1时,可以采用执行BX指令的方法,使微处理器从ARM状态切换到Thumb状态此外,当处理器处于Thumb状态时发生异常(如IRQ、FIQ、Undef、Abort、SWI等),则异常处理返回时,自动切换到Thumb状态进入ARM状态当操作数寄存器的状态位为0时,执行BX指令时可以使微处理器从Thumb状态切换到ARM状态此外,在处理器进行异常处理时,把PC指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以使处理器切换到ARM状态ARM处理器模式ARM微处理器支持7种运行模式,分别为用户模式usr ARM处理器正常的程序执行状态快速中断模式fiq用于高速数据传输或通道处理外部中断模式irq用于通用的中断处理管理模式svc操作系统使用的保护模式数据访问终止模式abt当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护系统模式sys运行具有特权的操作系统任务定义指令中止模式und当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真ARM处理器模式ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的除用户模式以外,其余的所有6种模式称之为非用户模式,或特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及需要访问受保护的系统资源等情况ARM寄存器ARM处理器共有37个寄存器其中包括31个通用寄存器,包括程序计数器PC在内这些寄存器都是32位寄存器以及6个32位状态寄存器关于寄存器这里就不详细介绍了,有兴趣的人可以上网找找,很多这方面的资料异常处理当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行处理器允许多个异常同时发生,它们将会按固定的优先级进行处理当一个异常出现以后,ARM微处理器会执行以下几步操作进入异常处理的基本步骤将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行将CPSR复制到相应的SPSR中根据异常类型,强制设置CPSR的运行模式位强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处如果异常发生时,处理器处于Thumb状态,则当异常向量地址加载入PC时,处理器自动切换到ARM状态ARM微处理器对异常的响应过程用伪码可以描述为R14_=ReturnLinkSPSR_=CPSRCPSR[4:0]=ExceptionModeNumberCPSR
[5]=0;当运行于ARM工作状态时If==ResetorFIQthen;当响应FIQ异常时,禁止新的FIQ异常CPSR
[6]=1PSR
1、以下说法不正确的是
(2)A、任务可以有类型说明B、任务可以返回一个数值C、任务可以有形参变量D、任务是一个无限循环2下列描述不属于RISC计算机的特点的是
(3)A.流水线每周期前进一步B.更多通用寄存器C.指令长度不固定,执行需要多个周期D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输3存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为
(4)A、0x21B、0x68C、0x65D、0x024μCOS-II中对关键代码段由于希望在执行的过程中不被中断干扰,通常采用关中断的方式,以下X86汇编代码正确而且不会改变关中断之前的中断开关状态的是
(4)A.先CLI、执行关键代码、再STIB.先STI、执行关键代码、再CLIC.先POPF、CLI、执行关键代码、再PUSHFD.先PUSHF、CLI、执行关键代码、再POPF5RS232-C串口通信中,表示逻辑1的电平是
(4)A、0vB、
3.3vC、+5v~+15vD、-5v~-15v6ARM汇编语句“ADDR0R2R3LSL#1”的作用是()A.R0=R2+R31B.R0=R21+R3C.R3=R0+R21D.R31=R0+R27IRQ中断的入口地址是()FIQ的入口地址为0x0000001CA、0x00000000B、0x00000008C、0x00000018D、0x000000148S3C2420XI/O口常用的控制器是()
(1)端口控制寄存器(GPACON-GPHCON)
(2)端口数据寄存器(GPADAT-GPHDAT)
(3)外部中断控制寄存器(EXTINTN)
(4)以上都是9实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信息,或建立某个条件后再向前执行,这种制约性合作关系被成为()A.同步B.互斥C.调度D.执行10和PC系统机相比嵌入式系统不具备以下哪个特点()A、系统内核小B、专用性强C、可执行多任务D、系统精简
11、ADDR0,R1,#3属于()寻址方式A.立即寻址B.多寄存器寻址C.寄存器直接寻址D.相对寻址
12、GET伪指令的含义是()A.包含一个外部文件B.定义程序的入口C.定义一个宏D.声明一个变量
13、存储一个32位数0x876165到2000H~2003H四个字节单元中,若以小端模式存储,则2000H存储单元的内容为()A、0x00B、0x87C、0x65D、0x
6114、μCOS-II操作系统不属于()A、RTOSB、占先式实时操作系统C、非占先式实时操作系统D、嵌入式实时操作系统
15、若R1=2000H,2000H=0x86,2008H=0x39,则执行指令LDRR0,[R1,#8]!后R0的值为()A.0x2000B.0x86C.0x2008D.0x
3916、寄存器R13除了可以做通用寄存器外,还可以做()A、程序计数器B、链接寄存器C、栈指针寄存器D、基址寄存器
17、FIQ中断的入口地址是()A、0x0000001CB、0x00000008C、0x00000018D、0x
0000001418、ARM指令集和Thumb指令集分别是()位的A.8位,16位B.16位,32位C.16位,16位D.32位,16位
19、ARM寄存器组有()个寄存器A、7B、32C、6D、
3720、若R1=2000H,2000H=0x28,2008H=0x87,则执行指令LDRR0,[R1,#8]!后R0的值为()A.0x2000B.0x28C.0x2008D.0x
8721、寄存器R15除了可以做通用寄存器外,还可以做()A.程序计数器B.链接寄存器C.堆栈指针寄存器D.基址寄存器
22、嵌入式系统有硬件和软件部分构成,以下()不属于嵌入式系统软件A.系统软件B.驱动C.FPGA编程软件D.嵌入式中间件
26、假设R1=0x31,R2=0x2则执行指令ADDR0R1R2LSL#3后,R0的值是()A.0x33B.0x34C.0x39D.0x
3823、和PC机系统相比下列哪个不是嵌入式系统独具的特点()A、系统内核小B、专用性强C、可执行多任务D、系统精简
24、Unicode编码与()编码方式兼容A、ASCII码B、GBKC、GB2312D、区位码
25、Cache用于存放主存数据的部分拷贝,主存单元地址与Cache单元地址之间的转换用()完成A.硬件B.软件C.用户D.程序员26在μC/OS-II系统中,OSTimeTick()函数只被以下()函数或过程所调用A.OSTickISRB.OSShedC.OSCtxSwD.OSIntCtxSw27每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是()A.嵌入式Linux提供了完善的网络技术支持;B.CLinux是专门为没有MMU的ARM芯片开发的;C.C/OS-Ⅱ操作系统是一种实时操作系统(RTOS);D.WinCE提供完全开放的源代码28下列关于存储管理单元(MMU)说法错误的是()A.MMU提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私有存储空间中运行B.在带MMU的操作系统控制下,运行的任务必须知道其他与之无关的任务的存储需求情况,这就简化了各个任务的设计C.MMU提供了一些资源以允许使用虚拟存储器D.MMU作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实际的物理地址,即在物理主存中的地址29下列CPSR寄存器标志位的作用说法错误的是()A.N负数B.Z:零C.C:进位D.V:借位30S3C2410X处理器为用户进行应用设计提供了支持多主总线的IIC接口处理器提供符合IIC协议的设备连接的串行连接线为()A.SCL和RTXB.RTX和RCXC.SCL和SDAD.SDA和RCX31RQ中断的优先级别是()A.1B.2C.3D.432LDRR2,[R3#128]的寻址方式是()A.寄存器寻址B.寄存器移位C.变址寻址D.间接寻址33S3C2410有()个USB接口A.1B.2C.3D.434ARM处理器的工作模式有()种A.5B.6C.7D.8选择题参考1
一、选择题
1.ARM属于()[A]RISC架构 [B]CISC架构
2.ARM指令集是( )位宽,Thumb指令集是( )位宽的[A]8位 [B]16位[C]32位[D]64位
3.ARM指令集是()字节对齐,Thumb指令集是()字节对齐的[E]1 [F]2[G]3[H]
44.复位后,ARM处理器处于()模式,()状态[A]User [B]SVC[C]System[D]ARM[E]Thumb
5.ARM处理器总共()个寄存器,System模式下使用()个寄存器,SVC模式下使用()个寄存器[A]17个 [B]18个[C]32个[D]36个[E]37个
6.ARM处理器中优先级别最高的异常为(),()异常可以用来响应中断[A]FIQ [B]SWI[C]IRQ[D]SVC[E]RESET
7.ARM数据处理指令中有效的立即数是(ACEGH)[A]0X00AB0000 [B]0X0000FFFF[C]0XF000000F[D]0X08000012[E]0X00001F80[F]0XFFFFFFFF[G]0[H]0XFF
0000008.ATPCS规定中,推荐子函数参数最大为()个[A]1 [B]2[C]3[D]
49.ATPCS规定中,栈是()[A]满加 [B]满减[C]空加[D]空减
10.在用ARM汇编编程是,其寄存器有多个别名,通常PC是指(),LR是指(),SP是指()[A]R12 [B]R13[C]R14[D]R
1511.CPSR寄存器中反映处理器状态的位是()[A]J位 [B]I位[C]F位[D]T位
12.下面属于ARM子程序调用指令的是()[A]B [B]BX[C]BL[D]MOV
13.ARM7属于()结构,ARM9属于()结构[A]冯.诺依曼[B]哈佛
14.ARM7是()级流水线,ARM9是()级流水线[A]1 [B]3[C]5[D]
715.ARM中可以访问状态寄存器的指令是(),能够访问内存的指令是()[A]MOV [B]LDR[C]MCR[D]MRS
16.异步串口中数据位可以是(ABCD)[A]5 [B]6[C]7[D]
817.I2C协议中有几根线(B)[A]1 [B]2[C]3[D]
418.I2C协议中设备地址模式有(AC)[A]7位地址模式 [B]8位地址模式[C]10位地址模式[D]4地址模式
19.S3C2410采用的是(D)核心[A]ARM7TDMI [B]ARM9TDMI[C]ARM926EJ-S[D]ARM920T
20.在串行异步通讯中,发送端串口的TxD要和接收端串口的(B)相连接[A]TxD [B]RxD[C]nCTS[D]nRTS
21.在嵌入式系统设计中可以通过(B)来测量电池电压,可以用(C)来驱动喇叭发声[A]DAC [B]ADC[C]PWM[D]Timer[E]RTC
22.MMU的作用有(AB)[A]内存保护 [B]地址转换[C]加快存取速度[D]安全保密[E]内存分配
23.以下属于DMA特点的有(BC)[A]占用CPU [B]占用总线[C]不占用CPU[D]不占用总线
24.下面的设备中属于闪存的设备有(AD)[A]K9F1208U0M[B]MAX3232[C]HY57V561620[D]Am29LV160D
25.I2C传输是(B)方式传输[A]单工 [B]半双工[C]全双工
二、简答题
1.简述ARM发生异常时,ARM核心会自动做哪些事情?从异常返回时,我们要做哪些事情?当异常产生时ARMcore:拷贝CPSR到SPSR_mode设置适当的CPSR位改变处理器状态进入ARM状态改变处理器模式进入相应的异常模式设置中断禁止位禁止相应中断如果需要保存返回地址到LR_mode设置PC为相应的异常向量返回时异常处理需要:从SPSR_mode恢复CPSR从LR_mode恢复PCNote:这些操作只能在ARM态执行.
2.用ARM汇编指令写出实现64位加法和64位减法的代码段,使用的寄存器请自行分配假定低32位数存放在r0和r1里面,高32位数存放在r2和r3里面加法ADDSr0r0r1//加S是因为要让这个操作影响标志位ADCr2r2r3//ADC是带进位的加法,如果上一条指令产生进位则一起加进来减法SUBSr0r0r1//加S是因为要让这个操作影响标志位SBCr2r2r3//SBC是带进位的减法指令
3.请列举ARM处理器的模式和异常,并说明各个发生异常时ARM处理器所处的模式异常ResetDataAbortFIQIRQPrefetchAbortSWIUndefinedinstruction处理器模式User:非特权模式,大部分任务执行在这种模式FIQ:当一个高优先级(fast中断产生时将会进入这种模式IRQ:当一个低优先级(normal中断产生时将会进入这种模式Supervisor:当复位或软中断指令执行时将会进入这种模式Abort:当存取异常时将会进入这种模式Undef:当执行未定义指令时会进入这种模式System:使用和User模式相同寄存器集的特权模式
4.FIQ的什么特点使得它处理的速度比IRQ快?1)FIQ优先级比IRQ高,不会被中断2)FIQ有自己的专属寄存器r8~r12,不用对通用寄存器入栈保护,可以加快速度3)FIQ位于异常向量表的末尾0x1c,故无需跳转,可以在这里直接放置异常处理函数
5.什么指令可以放在中断向量表?跳转指令,给PC赋值的指令B,LDR,MOV
6.ARM处理器中断向量表位于存储器的什么位置?默认0x0也可以配置成0Xffff
00007.下列ARM指令将做什么aLDRHr0[r1#6]bLDRr0=0x999a将r1寄存器的值加上6,然后把以这个值为地址的内存单元里的值取半字(低16位)赋给r0b将立即数0x999赋给r0,注意这是一个伪指令
8.SWP指令的优势是什么用来实现什么功能?功能在寄存器和存储器之间,由一次存储器读和一次存储器写组成的原子操作完成一个字节或字的交换可以用来实现信号量
9.S3C2410支持几种引导方式(或者说是内存映射方式)?简述Nand引导方式S3C2410硬件做的事情1)norflash启动方式2)nandflash启动方式从Nandflash启动时,S3C2410首先会执行固化在片上ROM中的一段小程序,这段程序负责将nandflash前2K的代码搬移到片上RAM,然后将PC指针指向0x0地址(注意这个时候片上RAM被映射到0x0的起始地址)
10.简述static和volatile关键字的含义和作用c语言中static关键字有两个作用,一是文件作用域,二是函数作用域文件作用域关键字static的作用是,以static申明的全局变量、函数不得被其他文件所引用static另外一个用途是函数内部静态变量,只会被初始化一次,而且变量存储在全局数据段中而不是函数栈中,所以其生命期会一直持续到程序退出一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份选择题参考21.BKPT是()A加法指令B断点中断指令C软中断指令D测试指令2.ARM处理器的寄存器中,分组寄存器是指()AR13BR8~R14CR0~R7DR143.ARM9流水线级数()A3B5C8D94.在嵌入式系统设计中可以通过()来测量电池电压,ATimer BPWMCADCDDAC5.ARM920T是一种高性能单片系统处理器,它是多少位的()A8B16C32D646.用于对数字变量赋值的伪操作是()ASETSBSETLCSETAD都不是7.程序状态寄存器(CPSR)中的第6位,也即F位为()A模式位B状态位C中断使能位D快速中断使能位
8、ARM的存储器系统中系统访问寄存器组的速度是()A最快B中C最慢D不可预测9.在串行异步通讯中,发送端串口的TxD要和接收端串口的()相连接A nRTS BnCTSCRxDDTxD11.MOVR2,#0x1007LDRR0,[R2]#4执行上述两条指令后,R2寄存器的值为()A0x1007B0x10a1C0x10a0D不能确定12.ARM处理器的寄存器中,未分组寄存器有()A1B4C8D1613.Thumb指令集是()字节对齐的A1B2C3D415.带返回的跳转,没有状态切换的跳转指令是()ABBBXCBLDBLX16.对寄存器R3的内容乘以4的正确指令是()AMOVR3,R3,LSR#2BLSLR3,#4CMOVR3,R3,LSL#2DLSRR3,#417.用于定义一个结构化的内存表的数据域伪操作是()AFIELDBMAPCSPACEDDCD18.MSRR1,CPSR指令的功能是()A将CPSR状态寄存器读出,保存到R1中B将SPSR状态寄存器读出,保存到R1中C将R1的值赋给CPSR状态寄存器读D将R1的值赋给SPSR状态寄存器读20.S3C2410的PWM定时器中仅供内部使用没有输出引脚的是()A定时器2B定时器3C定时器4D定时器521.用ARM汇编代码实现以下C程序段不要求程序格式,只需写出主要语句ifx100x=1;elsey=1;填空题每空2分,共40分得分评阅人嵌入式系统的设计可以分成三个阶段分析、设计和实现目前使用的嵌入式操作系统主要有WindowsCE/WindowsMobileLinux、uCos、和SymbianXScale微处理器使用的是ARM公司ARMV5TE版内核和指令集微处理器有两种总线架构,使用数据和指令使用同一接口的是冯诺依曼,分开的指令和数据接口、取指和数据访问可以并行进行的是哈佛结构ARM微处理器有七种工作模式,它们分为两类非特权模式、特权模式其中用户模式属于非特权模式ARM核有两个指令集,分别是ARM、ThumbARM微处理器复位后,PC(R15)的地址通常是0X0,初始的工作模式是管理模式
8、在ARM体系构架中对复杂的内存管理是通过系统控制协处理器cp15和MMU(存储管理部件)来进行的当系统发生DataAbort(数据)异常和PrefetchAbort(指令领取)异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页面,以保证程序正常执行
9、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是GNU工具链,ARM公司提供的工具链是ADS工具链
二、指令和程序测试题共24分写一条ARM指令,完成操作r1=r2*4(4分)MOVR1R2LSL#3初始值R2=5,R3=4,R4=3,执行指令SUBSR2,R3,R4,LSR#2后,寄存器R2,R3的值分别是多少?(4分)R2=3R3=
43、有如下程序段,画出程序流程图,并回答执行程序以后R0的值是多少(8分)numEQU2startMOVr0#1MOVr1#6MOVr2#3BLarithfuncstopBstoparithfuncCMPr0#numMOVHSpclrADRr3JumpTableLDRpc[r3r0LSL#2]JumpTableDCD.WORDDoA;注意使用ADS开发工具用伪指令DCDDCD.WORDDoS;使用GNU开发工具用伪指令.WORDDoAADDr0r1r2MOVpclrDoSSUBr0r1r2MOVpclrEND答R0为0执行DoA,R0为0执行DoS,流程图略R0=
54、有程序段如下,实现下面流程图,试补充编写ARM汇编代码(8分)����start�r0=r1�r0r1�r1=r1-r0�stopr0=r0-r1�YESNOYESNO程序Start CMPr0,r1SUBLTr1r1r0SUBGTr0r0r1BNEstart问答题(每题6分,共36分得分评阅人嵌入式开发环境主要包括哪些组件?答嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括宿主机目标机(评估电路板)基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境嵌入式操作系统
2、ARM核中什么寄存器用于存储PC?R13通常用来存储什么?R14通常用来存储什么答R15用于程序计数寄存器PC,R13通常用来做堆栈指针寄存器,R14通常用来做链接寄存器,保存函数调用的返回地址
3、BootLoader在嵌入式系统中主要起什么作用?完成哪些主要的工作?答BootLoader是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序通过BootLoader,初始化硬件设备,建立内存和I/O空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境
4、简述嵌入式系统的概念、组成及特点答嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成其特点有嵌入式系统通常是面向特定应用的嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中嵌入式系统本身不具备自举开发能力
5、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?在Windows主机上使用什么软件建立连接?在Linux主机上使用什么软件建立连接?答RS-232,以太网口、并口在Windows主机上使用超级终端软件在Linux主机上使用Minicom软件
6、进行基于ARM核的嵌入式系统软件开发时,调用如下函数intdo_somethingintarg1void*arg2chararg3int*arg4则这四个参数通过什么方式从调用程序传入被调函数?答基于ARM核的嵌入式系统软件开发时,调用函数和子程序通过R0——R3四个寄存器传递参数,超过四个参数使用堆栈传递因此arg1通过R0传入,arg2通过R1传入,arg3通过R2传入,arg4通过R3传入
7、简述再进行基于ARM核的嵌入式系统软件开发时,调用如下函数的规则约定程序段MOVr0#15MOVr1#9start;补充代码stopBstopEND。