文档库 最新最全的文档下载
当前位置:文档库 › 基于ARM的嵌入式Linux系统异常和中断的实现及优化

基于ARM的嵌入式Linux系统异常和中断的实现及优化

基于ARM的嵌入式Linux系统异常和中断的实现及优化
基于ARM的嵌入式Linux系统异常和中断的实现及优化

ARM体系结构详解之ARM异常处理

ARM处理器异常处理 所谓异常就是正常的用户程序被暂时中止,处理器就进入异常模式,例如响应一个来自外设的中断,或者当前程序非法访问内存地址都会进入相应异常模式。 1.1异常分类 (1)复位异常 当CPU刚上电时或按下reset重启键之后进入该异常,该异常在管理模式下处理。 (2)一般/快速中断请求 CPU和外部设备是分别独立的硬件执行单元,CPU对全部设备进行管理和资源调度处理,CPU要想知道外部设备的运行状态,要么CPU定时的去查看外部设备特定寄存器,要么让外部设备在出现需要CPU干涉处理时“打断”CPU,让它来处理外部设备的请求,毫无疑问第二种方式更合理,可以让CPU“专心”去工作,这里的“打断”操作就叫做中断请求,根据请求的紧急情况,中断请求分一般中断和快速中断,快速中断具有最高中断优先级和最小的中断延迟,通常用于处理高速数据传输及通道的中数据恢复处理,如DMA等,绝大部分外设使用一般中断请求。 (3)预取指令中止异常 该异常发生在CPU流水线取指阶段,如果目标指令地址是非法地址进入该异常,该异常在中止异常模式下处理。 (4)未定义指令异常 该异常发生在流水线技术里的译码阶段,如果当前指令不能被识别为有效指令,产生未定义指令异常,该异常在未定义异常模式下处理。 (5)软件中断指令(swi)异常 该异常是应用程序自己调用时产生的,用于用户程序申请访问硬件资源时,例如:printf()打印函数,要将用户数据打印到显示器上,用户程序要想实现打印必须申请使用显示器,而用户程序又没有外设硬件的使用权,只能通过使用软件中断指令切换到内核态,通过操作系统内核代码来访问外设硬件,内核态是工作在特权模式下,操作系统在特权模式下完成将用户数据打印到显示器上。这样做的目的无非是为了保护操作系统的安全和硬件资源的合理使用,该异常在管理模式下处理。 (6)数据中止访问异常 该异常发生在要访问数据地址不存在或者为非法地址时,该异常在中止异常模式下处理。 1.1.22异常发生的硬件操作 在异常发生后,ARM内核会自动做以下工作: l保存执行状态:将CPSR复制到发生的异常模式下SPSR中; l模式切换:将CPSR模式位强制设置为与异常类型相对应的值,同时处理器进入到

微型计算机系统期末习题答案

8086微型计算机系统考试题目答案 一、填空题(每空1分,共20分) 1、微型计算机硬件系统可分成为 CPU 、存储器和 I/O接口三大模块,模块之间通过总线连接而成。在系统与输入/输出设备之间,必须通过I/O接口相连接。 2、目前计算机系统主要有两种体系结构,它们分别是冯.诺依曼和哈弗,有更高运行效率的是哈弗。 3、已知X=68,Y=-12,若用8位二进制数表示,则[X+Y]补=50H,此时,CF=_0__;[X-Y]补= 38H/56D, OF=_0__。 4、8086 CPU的基本总线周期包含了 4个T状态。 5、I/O端口地址有两种编址方式,它们分别是独立编址和存储统一编址;接口电路中,输入端口必须具有缓冲功能,而输出端口必须具有锁存功能。 6、硬件中断可分为可屏蔽中断_和__ 非屏蔽中断两种。 7、8086/8088 CPU响应可屏蔽中断的条件是_IF=1 。 8、通用微型计算机的CPU由 _微处理器、存储器以及I/O接口电路 _组成,8086CPU按照结构有_EU和BIU _2个独立的处理部件组成。 9、计算机最常用的数据编码是补码,若机器字长为8位,则十进制数-128的补码是10000000B ; 若有带符号数X=01H,Y=81H,则由计算机作8位减法运算X-Y后,累加器中的数是10000000B ,借位标志CF= 1 、符号标示SF=__1___、溢出标志OF=__ 1__。由此可判断结果真值应为-128 10. 8086/8088 CPU在RESET信号到来后其CS和IP的值分别为_ FFFFH和0000H 。 11. CPU与外设传送数据时,输入/输出控制方式有_ 无条件方式 _,_ 查询方式 _,中断方式和__ DMA方式。 12. 8086 CPU响应一个可屏蔽中断请求时,将向外设发送两个中断响应脉冲,通过数据总线读入中断类型码。 13. INTEL 8253采用BCD码计数时,其最大计数值为__ 0000H ,此时的计数初值为__10000D 二、选择题 1.判断两个无符号数加法运算是否溢出的标志是_D__ A. ZF ; B. SF; C. CF; D. OF 2.8086CPU在计算物理地址时,应将段地址____C___。 A.左移1位; B.右移1位; C.左移4位; D.右移4位 3.INTEL 8088/8086 CPU 由____D_组成。 A 通用寄存器、专用寄存器和ALU; B.ALU、FR及8个16位通用寄存器 C CS、ES、SS、DS及IP、指令队列; D EU和BIU 4.下列4种描述中正确的是__B _。 A.汇编语言只由指令语句构成。 B.汇编语言语句包括指令语句和伪指令语句和宏指令语句。 C.指令语句和伪指令语句都能经汇编程序翻译成机器代码。 D.指令语句和伪指令语句都不能经汇编程序翻译成机器代码。 5. 已知内存单元(20510H)=31H,(20511H)=32H,(30510H)=42H,(30511H)=43H,且AX = 3A7BH,DS=2000H, SS=3000H, BP = 0500H,则执行MOV AL, [BP+10H]后AX= D。 A. 3A31H B. 3231H C. 427BH D. 3A42H 6.一微机系统采用一片8259A,若8259A设置为普通全嵌套、非缓冲、非自动中断结束等方式,并将ICW2设置为08H,

嵌入式ARM期末考试试卷及参考答案

第一学期期末试题——嵌入式ARM(B卷) 题号一二三四五六总分 分数 说明:本试卷共四大题,试卷满分100分,考试时间120分钟。 一、填空题(请将答案填入题后括号中:共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:处理器、()、输入/输出和软件,一般 软件亦分为()和应用软件两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为(),嵌入式DSP,()以及片 上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、()、()、I/O 资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和(),其中实时系统亦 可分为()和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(),内核 的基本服务是()。 6、嵌入式开发一般采用()方式,其中宿主机一般是指()。 7、哈佛体系结构数据空间和地址空间(),ARM920T采用()的内核架构。 8. ARM7TDMI采用()级流水线结构,ARM920TDMI采用()级流水线。 9 .按操作系统的分类可知,DOS操作系统属于顺序执行操作系统,UNIX操作系统属于()操 作系统,VXWORKS属于()操作系统。 10、ARM7TDMI中,T表示支持16位THUMB指令集,D表示(),M表示内嵌乘法器 MULTIPLIER,I表示(),支持在线断点和调试。 二、选择题(请将答案填入题后括号中:共10小题,每小题2分,满分20分。 1、下面哪种操作系统不属于商用操作系统。 ( A. WINDOWS XP B. LINUX C. VXWORKS D. WINCE 2. 下面哪点不是嵌入式操作系统的特点。 ( A. 内核精简 B. 专用性强 C. 功能强大 D. 高实时性 3. 下面哪种不属于嵌入式系统的调试方法。 (

ARM中的中断要点

一、S5PV210中中断的特点 1、特点 ? Supports 93 vectored IRQ interrupts ? Fixed hardware interrupts priority levels ? Programmable interrupt priority levels ? Supports Hardware interrupt priority level masking ? Programmable interrupt priority level masking ? Generates IRQ and FIQ ? Generates Software interrupt 2、FIQ与IRQ的区别 1)FIQ和IRQ并不是中断源,而是中断的类型,我们可以将一个中断源设置成FIQ也可以设置成IRQ。2)FIQ是快速中断,IRQ是一般中断,FIQ的响应时间比IRQ短。 3)FIQ的优先级高于IRQ。 4)FIQ的分组寄存器(R8~R14)比IRQ(R13~R14)多。当在FIQ产生的时候,R8~R14不需要保存,响应的速度会快。 3、S5PV210的中断源

二、原理图分析

三、如何以中断的方式来检测按键:GPH2_2(EINT18) 、GPH2_3(EINT19) 按键的检测:轮询:将GPIO配置成输入……. 中断:将GPIO配置成外部中断……. 1、GPIO的配置,将一个GPIO配置成外部中断 2、外部中断的触发方式 (高电平、低电平、上升沿、下降沿)

3、外部中断的开关寄存器 0 = Enables Interrupt 打开中断 1 = Masked 关闭中断 4、外部中断判断寄存器 0 = Not occur 外部中断没有发生 1 = Occur interrupt 触发了中断

ARM嵌入式期末考试题库精心整理版

1、智能物联网工程师群,免费共享100G学习资料 2、 3、qq群号码:538435543 4、 5、欢迎大家加入交流经验,互相学习分享 6、cortex-A8 中只有CP14和CP15 两种协处理器。CP14用来测试(test),CP15用作系 统控制. 7、cortex-A8中协处理器CP15是协助处理器做管理工作,属于A8内部。 8、cortex-A8的通用寄存器和状态寄存器属于A8内部的32位存储器。 9、跳转指令BL只能实现前后32M的小范围的跳转,使用“LDR PC,..”伪指令可以实 现大范围的跳转。大范围4G 10、汇编中用#注释(F)。@ 错误,是@符号注释 11、根据ATPCS标准,子程序间通过寄存器R0、R1、R2、R3来传递参数,如果参数 多余4个,则多出的部分用堆栈传递,返回值用R0传递。 12、寄存器R13用作数据栈指针,记作SP。 13、寄存器R14称为链接寄存器,记作LR,它用于保存子程序的返回地址。 14、寄存器R15是程序计数器,记作PC,不能用作其它用途。 15、汇编的优点是效率高,体积小。(对) 16、S5PV210内部对模块的管理是分区域管理的,分为那几个区域()、()、 ()。 不清楚答案,查询得知,S5PV210由ARM内核、系统外围设备、存储器子系统、多媒体加速、电源管理、连接性模块等模块组成,p42 17、S5PV210内部有三条总线,他们是APB总线,频率100兆以下、AHB总线,200-100 兆、AXI总线。 18、S5PV210的AHB总线的工作频率范围是200M~100M。 19、S5PV210的APB总线的工作频率范围是100M以下。 20、CortexA8的工作频率高达(1GHZ),定时器的PLCK的值是(66MHZ)。 21、S5PV210内部有( 5 )个定时器,其中有PWM引脚的有定时器(T0 T1 T2 T3 ),有死区功能的有定时器(T0 T1 )。 22、占空比就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比。 23、可以通过改变高低电平的时间改变占空比,也可以通过修改时钟周期的时间改变占 空比。(F)前面话对,后面话错 24、ARM 处理器有两个级别的中断请求,他们分别是(fiq )和(irq )。ARM上实现内存管理的单元叫(MMU )。 25、ARM的全称是(Advanced RISC Machine) 目前常用的嵌入式外围设备按功能可以分为(存储设备)、(通信设备)和(显示设备)。硬件设备=嵌入式处理器+外围设备 外围设备是完成存储通信调试显示等辅助功能的其他部件。目前常用,存储设备(ram,sram,flash),通信设备(rs232接口,),显示设备(显示屏)。 26、嵌入式linux操作系统属于免费的操作系统。 27、ARM 有3种含义,它是(一个公司名词),是(一类微处理器通 称),还是(一种技术)的名称。 28、ARM支持(大端)和(小端)两种内存模式。

微型计算机原理作业第六章习题与思考题

第六章习题与思考题 典型例题解析 例6-1 试述PC微机中断系统的分类与特点。 答:PC微机系统中断包括硬件(外部)中断和软件(内部)中断两大类。硬件中断包括不可屏蔽中断NMI和可屏蔽中断INTR。它们都由外部硬件产生。软件中断包括软件中断INT nH和CPU内部特殊中断,它们由内部中断指令或执行程序过程中出现异常产生的。软件中断又有DOS中断和BIOS中断之分。 硬件中断的特点是: (1)硬中断是外部事件而引起的中断,因此,硬件中断具有随机性和突发性。 (2)在硬件中断响应周期,CPU需要发中断回答信号(非屏蔽硬件中断不发中断回答信号)。 (3)硬件中断的中断号由中断控制器提供(非屏蔽硬件中断的中断号由系统指定为02H) (4)硬件中断一般是可屏蔽的(非屏蔽硬件中断是不可屏蔽的)。 软件中断的特点是: (1)软件中断是执行中断指令而产生的,无需外部施加中断请求信号。在程序需要调用某个中断服务程序时,只要安排一条相应中断指令,就可转去执行所需要的中断程序,因此,中断的发生不是随机的,而是由程序安排好的。 (2)在软件中断响应周期,CPU不需要发中断回答信号。 (3)软件中断的中断类型号是在指令中直接给出,因此,不需要使用中断控制器。 (4)软件中断是不可屏蔽的。 例6-2 试述可编程控制器8259A的作用。 答:可编程控制器8259A在协助CPU处理中断事务中所起的作用主要是: (1)接受和扩充外部设备的中断请求。外设的中断请求,并非直接送到CPU,而是通过8259A接受进来,再由它向CPU提出中断请求。一片8259A可授受8个中断请求,经过级联可扩展到8片8259A,能接受64个中断请求。 (2)进行中断优先级排队。外设的中断优先级排队,并不是CPU安排,而是由8259A安排的。即由8259A中断请求输入引脚(IR)的编号决定的。连到IR0上的外设中断优先级最高,连到IR7上的外设中断优先级最低。 (3)向CPU提供中断类型号。其过程是先在8259A初始化时,将中断源的中断类型号写入8259A的ICW2,当CPU响应中断,进入中断响应周期,用中断回答信号INTA2,再从8259A读取这个中断类型号。 例6-3 试述中断向量表的作用及构成。 答:中断向量也即中断服务程序入口地址,系统中所有的中断服务程序入口地址集中起来放到存储器的某一区域内,这个存放中断向量的存储区就叫中断矢量表。中断向量表提供了每一个中断服务程序唯一的确定的入口地址,该入口地址包括4个字节,低2个字节的内容为中断服务程序的偏移地址IP,高2个字节的内容为中断服务程序的段基值CS。.把系统中所有的中断向量集中起来存入到存储器的某一存储区内,这个存放中断向量的存储区就叫中断向量表或中断服务程序入口地址表(中断服务程序首址表)。实模式下,规定把存储器的0000~3FFH共1024个地址单元作为中断向量存储区。

《ARM嵌入式系统基础教程》期末试题

《ARM嵌入式系统基础教程》期末试题 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:处理器、(存储器)、输入/输出和软件,一般软件亦分为(操作系统)和应用软件两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为(嵌入式微控制器),嵌入式DSP,(嵌入式微处理器)以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、(进程间通信)、(内存管理)、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和(分时操作系统),其中实时系统亦可分为(硬实时操作系统)和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务调度)。 6、嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)。 7、哈佛体系结构数据空间和地址空间(分开),ARM920T采用(哈佛体系)的内核架构。 8. ARM7TDMI采用(3)级流水线结构,ARM920TDMI采用(5)级流水线。 9 .按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌入式)操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可调试),M表示内嵌乘法器Multiplier,I表示(嵌入式ICE),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、下面哪种操作系统不属于商用操作系统。 (B) A. windows xp B. Linux C. VxWorks D. WinCE 2. 下面哪点不是嵌入式操作系统的特点。 (C) A. 内核精简 B. 专用性强 C. 功能强大 D. 高实时性 3. 下面哪种不属于嵌入式系统的调试方法。 (D) A. 模拟调试 B. 软件调试 C. BDM/JTAG调试 D. 单独调试 4. 在嵌入式ARM处理器中,下面哪种中断方式优先级最高。 (A) A. Reset B. 数据中止 C. FIQ D.

实验5 ARM中断编程

实验五 ARM中断编程 一、实验目的 1.学习键盘驱动原理。 2.掌握中断的使用方法。 二、实验内容 通过ARM的外部中断进行键盘的扫描,利用中断服务程序编写键盘的驱动,在超级终端上显示相应的键值。UART接收中断,以中断方式(而不是查询方式)实现串口数据的接收 三、预备知识 1.掌握在ADS1.2集成开发环境中编写和调试程序的基本过程。 2.会使用UltraEdit编辑C语言源程序。 3.了解ARM中断服务程序的框架结构。 4.了解编译后的映象文件的下载方法。 四、键盘驱动程序的原理 1.简单键盘扫描 通常在一个键盘中使用了一个瞬时接触开关,并且用如图1所示的简单电路,微处理器可以容易地检测到闭合。当开关打开时,通过处理器的I/O口的一个上拉电阻提供逻辑1;当开关闭合时,处理器的I/O口的输入将被拉低得到逻辑0。可遗憾的是,开关并不完善,因为当它们被按下或者被释放时,并不能够产生一个明确的1或者0。尽管触点可能看起来稳定而且很快地闭合,但与微处理器快速的运行速度相比,这种动作是比较慢的。当触点闭合时,其弹起就像一个球。弹起效果将产生如图2所示的好几个脉冲。弹起的持续时间通常将维持在5ms~30ms之间。如果需要多个键,则可以将每个开关连接到微处理器上它自己的输入端口。然而,当开关的数目增加时,这种方法将很快使用完所有的输入端口。为此我将用到矩阵键盘。 图1 简单键盘电路

图2 键盘抖动 2. 复杂矩阵键盘扫描 键盘上陈列这些开关最有效的方法(当需要5个以上的键时)就形成了一个如图3所示的二维矩阵。当行和列的数目一样多时,也就是方型的矩阵,将产生一个最优化的布列方式(I/O 端被连接的时候)。一个瞬时接触开关(按钮)放置在每一行与线一列的交叉点。矩阵所需的键的数目显然根据应用程序而不同。每一行由一个输出端口的一位驱动,而每一列由一个电阻器上拉且供给输入端口一位。 图3 矩阵键盘 键盘扫描过程就是让微处理器按有规律的时间间隔查看键盘矩阵,以确定是否有键被按下。一旦处理器判定有一个键按下,键盘扫描软件将过滤掉抖动并且判定哪个键被按下。每个键被分配一个称为扫描码的唯一标识符。应用程序利用该扫描码,根据按下的键来判定应该采取什么行动。换句话说,扫描码将告诉应用程序按下哪个键。

arm嵌入式期末考试试题()

一、选择题(共5) 1、下面哪个不是嵌入式操作系统的特点。( C ) A.内核精简 B.专用性强 C.功能强大 D.高实时性 2、ARM指令集合Thumb指令集分别是(D )位的。 A.8,16 B.16,32 C.16,16 D.32,16 3、FIQ中断的入口地址是( A ) A.0x0000001C B.0x00000008 C.0x00000018 D.0x00000014 4、ADD R0,R1,#6,执行该指令时属于( A)寻址方式。 A.立即寻址 B.多寄存器寻址 C.寄存器直接寻址 D.相对寻址 5、寄存器R13除了可以用作通用寄存器之外,还可以作为( B ) A.程序计数器 B.堆栈指针寄存器 C.链寄存器 D.基址寄存器 6、是(B) A.78 56 34 12 B.12 34 56 78 C.87 65 43 21 D.21 43 65 87 二、填空题(共5个) 1、嵌入式系统体系结构一般具有冯.诺依曼和哈佛两种基本形式,且ARM7采用冯.诺依曼体系结构。 2、从编程角度看,ARM微处理器一般有ARM和Thumb两种工作状态。 3、ARM9处理器使用了程序存储器和数据存储器分开独立编址的哈佛结构,并采用5级指令流水线,5级流水线操作分别是取指、译码、执指、缓冲和写回。 4、ARM微处理器支持字节、半字、字三种数据类型,数据的位数分别为8位、16位、32位,其中字必须以4字节为边界对齐,半字必须以2字节为边界对齐。 5、复位异常的优先级最高,因此在任何情况下,只要进入该状态系统无条件地将PC 指向0x00000000处,以执行系统第一条指令。 三、判断题(共5个) 1、ARM7采用3级指令流水线,即取指令、译码和执行指令。(√)

ARM异常中断机制.

ARM9(以S3C2410为例)中断机制 一、ARM异常机制介绍 ARM9处理器有7种工作模式。分别是(除了用户模式其他都是异常模式 用户模式(usr:ARM处理器正常的程序执行状态。 快速中断模式(fiq:用于高速数据传输或通道处理。 外部中断模式(irq:用于通用的中断处理。 管理模式(svc:操作系统使用的保护模式。 数据访问终止模式(abt:当数据或指令预取终止时进入该模式。 系统模式(sys:运行具有特权的操作系统任务。 未定义指令中止模式(und:当未定义的指令执行时进入该模式。 每种模式通过5位二进制编码进行标示: 用户模式10000 快速中断模式10001 外部中断模式10010 管理模式10011 数据访问终止模式10111 未定义指令中止模式11011 系统模式11111 模式编码存放在CPSR(程序当前状态寄存器,记录当前工作模式的编码的值)中的[4:0]。

快速中断模式、外部中断模式、数据访问终止模式、未定义指令中止模式、管理模式称为异常模式。 异常类型具体含义 复位当处理器的复位电平有效时,产生复位异常,程序跳转到复位异常处理程序处执行。 未定义指令遇到不能处理的指令时,产生未定义指令异常。 软件中断该异常由执行SWI指令产生,可用于用户模式下的程序调用特权操作指令。可使用该异常机制实现系统功能调用。 指令预取中止若处理器预取指令的地址不存在,或该地址不允许当前指令访问,存储器会向处理器发出中止信号,但当预取的指令被执行时,才会产生指令预取中止异常。 数据中止若处理器数据访问指令的地址不存在,或该地址不允许当前指令访问时,产生数据中止异常。 IRQ(外部中断请求)当处理器的外部中断请求引脚有效,且CPSR中的I 位为0时,产生IRQ异常。系统的外设可通过该异常请求中断服务。 FIQ(快速中断请求)当处理器的快速中断请求引脚有效,且CPSR中的F 位为0时,产生FIQ异常。 当多个异常发生时,处理器根据优先级进行处理。优先级

嵌入式ARM期末考试试卷A

期末试题——嵌入式ARM(A卷) 说明:本试卷共四大题,试卷满分100分,考试时间120分钟。 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:分别是(处理器)、存储器、输入/输出和软件,一般软件亦分为操作系统相关和(应用软件)两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(嵌入式DSP处理器),(嵌入式微处理器)以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有(进程管理)、进程间通信、(内存管理)、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为(实时操作系统)和分时操作系统,其中实时系统亦可分为(硬实时系统)和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务切换)。 6、嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)。 7、哈佛体系结构数据空间和地址空间(分开),ARM7TDMI采用(冯诺依曼体系)的内核架构。 8. ARM7TDMI采用( 3 )级流水线结构,ARM920TDMI采用( 5 )级流水线。 9 .按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌入式)操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可调试),M表示内嵌乘法器Multiplier,I表示(嵌入式ICE),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。( D ) (A) 处理器的编译器能够产生可重入代码(B)在程序中可以找开或者关闭中断 (C) 处理器支持中断,并且能产生定时中断(D)有大量的存储空间 2、下面哪种操作系统最方便移植到嵌入式设备中。( D ) (A) DOS (B)unix (C) Windows xp (D)linux 3、下面哪个选项不是SUB设备的特点。( B ) (A) 串行通信方式(B)不可热拨插 (C) 分HOST、DEVICE和HUB (D)通信速率比RS232快 4、下面哪种嵌入式操作系统很少用于手机终端设备上。( C ) (A) Symbian (B)WinCE (C) uc/os (D)linux 5、以下哪项关于SRAM和DRAM的区别是不对。( A )

ARM的中断原理

ARM的中断原理(转) 1.中断概述 CPU与外设的数据传输方式通常有以下3种方式:查询方式、中断方式、DMA方式。 所谓查询方式是指,CPU不到查询外设的状态,如果外设准备就绪则开始进行数据传输;如果外设还没有准备好,CPU将进入循环等待状态。很显然这样浪费了大量的CPU时间,降低了CPU的利用率。 所谓中断方式是指,当外设准备好与CPU进行数据传输时,外设首先向CPU发出中断请求,CPU 接收到中断请求并在一定条件下,暂时停止原来的程序并执行中断服务处理程序,执行完毕以后再返回原来的程序继续执行。由此可见,采用中断方式避免了CPU把大量的时间花费在查询外设状态的操作上,从而大大提高了CPU的执行效率。 1.中断概述 CPU与外设的数据传输方式通常有以下3种方式:查询方式、中断方式、DMA方式。 所谓查询方式是指,CPU不到查询外设的状态,如果外设准备就绪则开始进行数据传输;如果外设还没有准备好,CPU将进入循环等待状态。很显然这样浪费了大量的CPU时间,降低了CPU的利用率。 所谓中断方式是指,当外设准备好与CPU进行数据传输时,外设首先向CPU发出中断请求,CPU 接收到中断请求并在一定条件下,暂时停止原来的程序并执行中断服务处理程序,执行完毕以后再返回原来的程序继续执行。由此可见,采用中断方式避免了CPU把大量的时间花费在查询外设状态的操作上,从而大大提高了CPU的执行效率。 ARM系统包括两类中断:一类是IRQ中断,另一类是FIQ中断。IRQ是普通中断,FIQ是快速中断,在进行大批量的复制、数据传输等工作时,常使用FIQ中断。FIQ的优先级高于IRQ。 在ARM系统中,支持7类异常,包括:复位、未定义指令、软中断、预取中止、数据中止、IRQ和FIQ,每种异常对应于不同的处理器模式。一旦发生异常,首先要进行模式切换,然后程序将转到该异常对应的固定存储地址执行。这个固定的地址称为异常向量。异常向量中保存的通常为异常处理程序的地址。ARM的异常向量如下: 异常模式正常地址高向量地址 复位管理 0x00000000 0xFFFF0000 未定义指令未定义 0x00000004 0xFFFF 0004 软中断管理 0x00000008 0xFFFF 0008 预取指中止中止0x0000000C 0xFFFF 000C 数据中止中止0x00000010 0xFFFF0010 IRQ IRQ 0x00000018 0xFFFF0018

ARM-Linux下的GPIO中断程序.

ARM-Linux下的GPIO中断程序 [日期:2011-03-22] 来源:Linux社区作者:cskywit 今日为了调试ARM板上的GPIO引脚中断效果,以便在后续项目使用ARM与ZLG7290按键LED中断芯片连接中随意选择空闲的GPIO引脚来作为ZLG7290的中断信号线,特意编写了一个小的Linux GPIO中断驱动程序下载到开发板上做实验。经验证,这种软件中断方式也还差强人意。下面贴出自己编写的不成熟的代码,见笑(<-_->)。 实验的硬件电路为ARM GPIO的PB17连接一个共阴LED,PB18与PB19连接,PB18由中断驱动设置为低电平触发,PB19由GPIO驱动程序控制,上层应用程序通过驱动控制PB19高低电平变化,从而引发PB18发生中断,中断程序中控制PB17的LED亮和灭。 Linux中断驱动部分: /* * PB18_IRQTest.c * This is a test program for sam9260, using PB19(J5_18 pin) input a signal to PB18(J5_16 pin), * PB18 receive this signal as IRQ and make the LED linking on PB17((J5_14 pin)) turn on or turn off * * @Author: Cun Tian Rui * @Date :March.18.2011 */ #include #include #include #include #include #include #include #include #include #include #include #include #include

嵌入式系统期末考试题库及答案

《嵌入式系统》试题库 一、填空题 1、嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。 3、从层次角度来看,嵌入式系统由四大部分组成,分别是:应用软件层、操作系统层、板级支持包(或硬件抽象层)和硬件层。 4、嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。 5、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试。 6、需求分析包括:功能性需求分析和非功能性需求分析。 7、确定输入信号是数字信号还是模拟信号属于功能性需求。 8、确定系统的物理尺寸和重量属于非功能性需求。 9、在嵌入式系统的设计过程中,其中规格说明解决“做什么”。 10、在嵌入式系统的设计过程中,其中体系结构设计解决“如何做”。 11、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。 12、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段完成。 13、在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。 14、在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。 15、在嵌入式系统的设计过程中,完成版图设计应在构件设计阶段完成。 16、在嵌入式系统的设计过程中,完成软件设计应在构件设计阶段完成。 17、反映嵌入式系统设计人员的水平能力主要在于总体设计(需求分析、规格说明和体系结构设计)和系统调试。 18、设计流程指的是设计过程中所经历的过程步骤。 19、设计重用技术主要分为基于 IP 核的模块级重用和基于平台的系统级重用。 20、软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验证几个阶段组成。 21、嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和

arm中断返回地址详细分析.

在ARM体系中,通常有以下3种方式控制程序的执行流程: 1、在正常执行过程中,每执行一条ARM指令,程序计数器PC的值加4个字节;每执行一条Thumb 指令,程序计数器PC加2个字节。整个过程是顺序执行的; 2、跳转B指令执行跳转操作;BL指令在执行跳转的同时,保存子程序返回地址;BX指令,执行跳转的同时,根据目标地址的最低位,可以将程序状态切换到Thumb状态;BLX指令执行上述3个操作; 3、当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行。在进入异常中断处理程序时,要保存被中断的程序的执行现场,在从异常中断处理程序退出时,要恢复被中断的程序的执行现场。当异常中断处理程序执行完成后,程序返回到发生中断的指令的下一条指令处执行。 异常中断种类、异常中断向量地址和异常中断优先级别见下表: ARM运行的几种处理器模式如上表所示。其中,应用程序通常运行在用户模式下! 为了说明异常中断执行过程,先了解各处理器模式下的寄存器组,如下表: 重点:ARM处理器对异常中断的响应过程: ㈠、保存当前程序状态寄存器CPSR到对应异常中断的处理器模式下的SPSR中; ㈡、设置当前程序状态寄存器CPSR的处理器模式位M(4:0)为对应的处理器模式,并禁止IRQ 中断(设置I位=1);当进入的是FIQ模式时,禁止FIQ中断(设置F位=1); ㈢、将对应异常中断的处理器模式下的LR设置成返回地址; ㈣、将程序计数器PC值,设置成该异常中断向量地址,从而跳转到相应的异常中断处理程序处执行。 上述处理器对异常中断的响应过程可以用伪代码描述如下: R14=return Link SPSR=CPSR CPSR[4:0]=exception mde number CPSR[5] = 0 //所有异常均在ARM状态下处理(本句出自《基于ARM的嵌入式系统开发与实例》P32) if(==Reset or FIQ )then CPSR[6]=1 //禁止FIQ中断 CPSR[7] =1 //禁止IRQ中断 PC = exception vetor address 程序将自动跳转到对应异常中断的处理程序中。 上述过程,完全由处理器自动完成,所以,当发生一种异常中断时,寄存器R14 、CPSR、SPSR 和PC的值将是上述的结果!结果如下图所示: 下面是引用别人的文章: ARM处理器中主要有7个异常(2个中断异常): 1、复位异常;在以ARM为核的单片机中,常把下列事件作为引起复位的原因。 ? 上电复位:在上电后,复位使内部达到预定的状态,特别是程序跳到初始入口; ? 复位引脚上的复位脉冲:这是由外部其他控制信号引起的; ? 对系统电源检测发现过压或欠压; ? 时钟异常复位。 ARM处理器复位后,处理器硬件将进行以下操作: ? 强制进入管理模式;0b10011 ? 强制进入ARM状态;T=0 ? 跳转到绝对地址PC=0x00000000处执行;

ARM技术中英文缩写解说

ARM技术中英文缩写解说 中一些常见英文缩写解释 MSB:最高有效位; LSB:最低有效位; AHB:先进的高性能总线; VPB:连接片内外设功能的VLSI外设总线; EMC:外部存储器控制器; MAM:存储器加速模块; VIC:向量中断控制器; SPI:全双工串行接口; CAN:控制器局域网,一种串行通讯协议; PWM:脉宽调制器; ETM:嵌入式跟踪宏; CPSR:当前程序状态寄存器; SPSR:程序保护状态寄存器; 使用注意事项: 答:当改变 MAM 定时值时,必须先通过向 MAMCR 写入 0 来关闭 MAM,然后将新值写入 MAMTIM。最后,将需要的操作模式的对应值写入MAMCR,再次打开MAM。 对于低于 20MHz 的系统时钟,MAMTIM 设定为 001。对于 20MHz 到 40MHz 之间的系统时钟,建议将Flash 访问时间设定为2cclk,而在高于40MHz的系统时钟下,建议使用3cclk。 使用注意事项 答:如果在片内RAM当中运行代码并且应用程序需要调用中断,那么必须将中断向量重新映射到Flash地址0x0。这样做是因为所有的异常向量都位于地址0x0及以上。通过将寄存器MEMMAP(位于系统控制模块当中)配置为用户RAM模式来实现这一点。用户代码被连接以便使中断向量表装载到0x4000 0000。 4. ARM启动代码设计 答:ARM启动代码直接面对处理器内核和硬件控制器进行编程,一般使用汇编语言。启动代码一般包括:中断向量表 初始化存储器系统 初始化堆栈初始化有特殊要求的端口、设备 初始化用户程序执行环境 改变处理器模式 呼叫主应用程序 和 FIQ 之间的区别 答:IRQ和FIQ是ARM处理器的两种编程模式。IRQ是指中断模式,FIR是指快速中断模式。对于 FIQ 你必须尽快处理你的事情并离开这个模式。IRQ 可以被 FIQ 所中断,但 IRQ 不能中断 FIQ。为了使 FIQ 更快,所以这种模式有更多的影子寄存器。FIQ 不能调用 SWI(软件中断)。FIQ 还必须禁用中断。如果一个 FIQ 例程必须重新启用中断,则它太慢了,并应该是 IRQ 而不是 FIQ。

微型计算机原理习题及解答

微机原理习题 1、微处理器、微型计算机和微型计算机系统三者之间有什么不同 答: 微型计算机系统:包括微型计算机的硬件系统和必要的系统软件。 微型计算机的硬件系统包括:微型计算机和外围设备。 微型计算机:主要是由微处理器(MPU)、存储器(ROM、RAM)、I/O接口、系统总线组成。 微处理器(MPU):是用微电子技术将中央处理器(CPU)集成在一块芯片中制 成的超大规模集成电路(IC),从逻辑的角度看,其内部 主要包括:运算器(或称算术逻辑单元(ALU))、控制 器和一定数量的寄存器组成。 2、控制总线传输的信号大致有哪几种 答:控制总线用来传输控制信号,协调各部件之间的工作;控制总线是双向的; 控制总线包括CPU送往存储器和输入/输出接口电路的控制信号,如读信号、写信号和中断响应信号等;控制总线还包括其他部件送到CPU的信号,比如,时钟信号、中断请求信号和准备就绪信号等。 3、微型计算机采用总线结构有什么优点 答:采用总线结构的优越性主要表现在两个方面:①简化系统的设计,使CPU、RAM、ROM、I/O接口的设计简单化、标准化,使复杂的硬件系统变为面向总线的单一关系。②方便系统的硬件扩充——一个部件只要符合总线标准,就可以连接到采用这种总线标准的系统中。

4、简述8086 CPU的逻辑结构。 答:从逻辑功能上,8086分为两部分:总线接口部件BIU(Bus Interface Unit); 执行部件EU(Execution Unit)。其中,总线接口部件包括:地址加法器、段寄存器组、IP指针、指令队列缓冲器、和输入输出控制电路;执行部件包括:运算器、通用寄存器组、标志寄存器、和执行部分的控制电路。 5、 8086/8088 和传统的计算机相比在执行指令方面有什么不同这样的设计思 想有什么优点 答:传统的计算机都是按照下面3个步骤循环工作的: ①从指令指针所指的内存单元中取一条指令送到指令寄存器。 ②对指令进行译码,而指令指针进行增值,以指向下一条指令的地址。 ③执行指令。如果所执行的是转移指令、调用指令或者返回指令,则重 新设置指令指针的值,以指向下一条要执行的指令。 而8086/8088指令的执行是流水线方式,取指令和执行指令是并行工作的,工作效率大大提高,从而大大提高了CPU的执行速度。6、总线周期的含义是什么 8086/8088的基本总线周期由几个时钟组成如一个CPU 的时钟频率为10MHz,那么,它的一个时钟周期为多少一个基本总线周期为多少 答:为了取得指令或进行数据的传送,CPU的总线接口部件需要执行一系列的操作,这些操作所经历的时间叫一个总线周期。在8086/8088中,一个最基本的总线周期由4个时钟周期组成,分别称为4个状态,即T1状态、T2状态、T3状态和T4状态。时钟周期是CPU的时序基本时间计量单位,它由计算机主频决定。如果8086的主频为10MHz,1个时钟周期就是100ns;1个最基本的总线周期是400ns 。7、在对存储器和I/O设备读写时,要用到IOR、IOW、

ARM嵌入式系统期末考试试卷

选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机2.在Makefile中的命令必须要以( A )键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式(B)。 A.Ext B.FAT32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一(D)。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一(C)。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.下面哪一种工作模式不属于ARM特权模式( A )。 A.用户模式B.系统模式C.软中断模式D.FIQ模式2.ARM7TDMI的工作状态包括(D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态3.下面哪个Linux操作系统是嵌入式操作系统(B)。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,(B)不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一( A )。 A.寄存器段B.代码段 C.堆栈段D.数据段

1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1)手机,(2)机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。)2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFAT,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。 6.Linux下的一个进程在内存里包括三部分的数据,它们是:(18) 代码段,(19)堆栈段,(20)数据段。 1.目前使用的嵌入式操作系统主要有哪几种(1) Linux,(2) Windows CE,(3) uc/OS II,(4)Android。(或VxWorks,Palm OS ,QNX,Symbian等) 2.如果按用途划分,嵌入式微处理器可分为哪类(5)嵌入式微控制器(MCU),又称为单片机,(6)嵌入式微处理器(EMPU)_,(7) 嵌入式DSP处理器,(8)嵌入式片上系统(SOC)。 3.ARM核有两个指令集,分别是:(9)ARM指令集和(10)Thumb指令集。 4.Makefile里主要包括的语法规则有哪些:(11) 显式规则,(12) 隐晦规则,(13) 变量定义,(14) 文件指示,(15) 注释。 5.大多数Bootloader都包含两种不同的操作模式,分别是:(16) 启动加载模式,(17)下载模式。 6.Linux内核的配置系统由三部分组成,它们分别是:(18)Makefile,(19) 配置文件(config.in),(20)配置工具。 RISC:reduced instruction set computer,精简指令集计算机MCU:Micro Controller Unit,微控制单元 DSP:Digital Signal Processor,数字信号处理器ROM:read-only memory,只读存储器 SWI:Software Interrupt PC:程序计数器 IRQ:外部中断请求NFS:Network 网络文件系统 SOC:System On Chip,片上系统CPSR:当前程序状态寄存器ICE:In Circuit Emulator,实时在线仿真器MMU:Memory Management Unit,内存管理单元 FIQ:快速中断请求VFS:虚拟文件系统 IPC:Inter-Process Communication内部进程间通信I R:指令寄存器 1、嵌入式开发环境主要包括哪些组件? 答:嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括

相关文档
相关文档 最新文档