




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7章中断系统和中断控制器8259A、7.1中断的基本概念7.1.1中断和中断源中断: CPU执行程序时,发生了某个事件,因此CPU中正在执行的程序(通常称为主程序) 转发该事件的处理程序(通常称为中断服务程序),在处理完成后,返回原程序的断点,继续执行的进程。 中断来源:发生中断的原因或发出中断请求的来源。 中断源的类型:1 .一般的输入输出设备2 .数据通道3 .实时时钟4 .故障信号5 .软件中断根据中断源和CPU的相对关系分为内部中断和外部中断。 中断分类:根据:中断源和CPU的相对关系。 1 .内部中断2 .外部中断。 CPU中断系统必须具备当前的中断和返回的功能。 可以实现优先排序
2、,确定优先处理的中断源。 优先级高的中断源中断优先级低的中断处理。 7.1.2中断处理过程、中断处理过程:中断请求中断队列中断响应中断服务中断返回,1 .中断请求:中断源向CPU发出中断请求。 中断源随机输出中断请求信号,CPU在当前的指令周期结束时检测有无中断请求。 发出中断请求的条件:外部设备准备好,外围设备的中断请求没有被系统评价阻止。 2 .中断队列和中断响应,概念: CPU在接收到中断请求后,从停止当前程序到转移到中断服务程序入口的过程称为中断响应。 条件:1)中断是开放的2)CPU在当前命令结束后,响应中断。 操作过程:1)中断断开2 )保护断点,3 )保护现场,4 )形成中断服务
3、的人口地址。 响应序列8086/8088中断处理进程中断处理子例程的配置示意图图1不允许中断的中断服务程序流程图图2不允许中断的中断服务程序流程图中断返回, 4 .执行中断处理中断服务程序,保护现场,恢复中断源服务,恢复现场,恢复中断,保护现场,释放中断,释放中断,释放中断,断开源服务,恢复现场,恢复中断,图1中不允许中断的中断服务图2中实现允许中断的中断服务程序的流程图、中断服务程序的入口、中断服务程序的入口、流程图、7.1.3中断优先级管理、中断优先级的判别方法:1.软件决定中断优先级,接口电路、软件查询应用检查读取各中断源中断请求触发状态TEST AL、80H的a设备中是否有中断请求JN
4、Z ASEV,转移到a设备,中断服务的TEST AL、40H; 检查b设备中是否有中断请求JNZ BSEV,检查向b设备中断服务TEST AL,01H在h设备中是否有中断请求JNZ- HSEV,转移到h设备中断服务,特征:软件查询、查询的顺序是缺点:中断源多的情况下,询问时间长,中断应答慢。 2、硬件确定中断优先级,中断优先级代码电路链优先级队列电路专用硬件电路等。 7.2 8086/8088的中断系统,8086/8088功能强大,管理高效,具有简单灵活的中断系统,最多可以处理256种中断源,采用矢量中断方法,间接访问256种中断8086/8088有内部中断和外部中断两种中断。7.2.1 80
5、86/8088的中断指令,8086/8088提供了三个中断操作指令:1.中断指令格式,INT n或INT n=0255,中断类型代码。 2 .溢出中断指令INTO 3.中断返回指令IRET,7.2.2 8086/8088的中断分类被分类为外部中断和内部中断两种,如图7-5所示,1 .软件中断(内部中断)为类型:除法错误中断0型中断,超过了商品能显示的最大值。 2 .降级:调试方法。如果TF=1,当执行指令时,类型1的中断由CPU自动产生单步中断。调试调试程序用、中断类型号3。 在程序的任何地方都设置。 本质:将中断点指令INT 3插入程序。 4 .溢出中断溢出中断服务程序(型号4 ),3 .中
6、断点中断:定义: CPU执行软中断指令INTn后马上发生中断,调用对应的中断服务程序完成中断功能分类:1.基本的输入输出系统BIOS为系统的主要I/O设备提供控制2 .作为系统功能用户调用磁盘操作系统(DOS )提供的功能。 3 .用户自己定义的软件中断。 5. INTn指令中断、2 .硬件中断(外部中断)、通过NMI和INTR端子导入。 NMI用于处理系统的重大故障。 停电事故的处理:备份数据,启动备用电源。 优先顺序:内部中断、NMI、INTR、单步中断。 注:除了单步中断以外,不能阻止内部中断。 7.2.3中断向量,中断向量:中断处理子例程的入口地址,每个中断类型一个中断向量。 中断向量
7、表: 8086/8088微机系统规定所有的中断向量都集中在存储器的底部,构成合计1024个单元、地址00000H003FFH的所谓的中断向量表。 注意:中断类型代码只能确定存储中断向量的地址,而不能确定中断向量本身和中断服务程序的功能。 中断向量表、专用的5个(0#4# )系统中统一规定的中断类型。 保留的27个(5#31# )是为了系统开发而保留的中断类型。 用户能定义的224个(32#225# )已知类型的中断矢量的取得中断类型编号4该中断矢量是表中的开头单元的地址。 查找四个连续的存储单元,获得IP和CS,中断向量的结构,中断向量(中断服务程序的条目地址)表中的地址=中断类型号4,中断向
8、量表,24H*4=90H,00 在0000:0092H、0000:0093H、00H、46H、A4H、3BH、IP、46 00H、3B A4H、CS、3BA4:4600H,中断处理子程序中,示例n=24H,中断处理进程为中断请求1 .当出现内部中断或在NMI /INTR端子中存在有效的中断请求信号并且IF=1时,中断响应条件可以在CPU执行当前命令之后响应所述中断。 7.2.4 8086/8088的中断处理过程,特殊情况:在以下情况下,CPU执行当前指令后无法立即响应中断。 在下一个命令完成之前不允许中断应答。 1)cpu执行了块指令(LOCK )的情况下,2 )设定段寄存器的内容的指令和下一
9、个指令之间不允许中断。 3 )等待命令,在反复执行串行操作命令的过程中可以应答中断,但必须在基本操作完成后。 2 .中断处理序列、中断处理序列按照中断优先级从高到低的顺序来响应中断源。 8086/8088系统的中断处理步骤如下:1)除法错误中断、溢出中断、INT n。 2 )非屏蔽中断NMI。 3 )可以阻止中断INTR。 4 )降级。 中断处理过程,3 .获取中断类型代码,1 )专用中断,即除法错误、单步中断、非屏蔽中断、中断点中断和滋出中断分别由8086/8088CPU的硬件逻辑电路自动中断2 )因为2)INT n指令的第2个字节是中断类型码,所以软件中断指令从指令直接获取中断类型码。 3
10、 )外部可屏蔽中断在外部硬件电路进行中断响应时向CPU提供中断类型代码。 中断控制器8259A具有在中断响应时提供中断类型代码的功能。7.3中断控制器、大纲可编程中断控制器8259a (理解8259a的内部结构和功能、操作方式、级联使用,简要介绍8259a控制语),7.3.1 8259A的主要功能,1 )每8259a一级8中断2 )各级中断被屏蔽或允许。3 )在中断响应周期提供中断源的中断类型代码并且CPU查找相应的中断向量。 4 )允许多级中断。 5 )设置多种优先级管理方式、屏蔽功能。 6) 8259A是可编程芯片,用户可以根据程序选择不同的工作方式,灵活方便。 7 )具有中断查询方式功能
11、,CPU以查询方式与各外围设备进行1/O操作。 如图7-8所示,7.3.2 8259A的结构和引脚功能、8259A的结构框图由8个基本部分构成,1 .中断请求寄存器IRR 2.优先级判别器PR 3 .中断服务寄存器ISR 4 .中断掩码寄存器IMR 5 .数据总线写控制逻辑7 .级联缓冲器/比较器8 .控制逻辑,2,8259A的中断处理过程,以下将以8259 a单独使用为例描述该中断处理过程。 1、1条或多条中断请求线IR0 IR7变高时,设定对应的IRR位。 2、PR在判断中断优先级和中断掩码寄存器的状态后,在某个中断优先级最高、允许中断的状态下,向CPU发送高电平的信号INT,请求中断服务
12、。 另外,在8259A的动作模式中,8259A有几个动作模式,这些动作模式能够通过初始化命令语(ICW1ICW4)和操作命令语(OCW1OCW4)来设定。 1、导入中断请求的方式、边缘触发方式。 上述跳跃边向8259A请求中断,即使上升到跳跃边也始终保持高电平,不会发生中断。 电平触发方式。 在高电平申请中断,但应答中断后必须立即清除高电平,避免引起第二次中断。 的双曲馀弦值。 虽然外围设备通过8259A请求中断,但是8259A不使用INT信号向CPU请求中断,并且CPU使用软件来标识中断源并提供服务。 2 .系统总线的连接方式,在大系统中,数据总线需要总线缓冲区。 8259A连接该带总线缓冲
13、器的系统总线的方式称为缓冲方式。 在小型系统中,8259A不需要总线缓冲区,直接连接到数据总线。 在8259A中,将不具有总线缓冲器而直接连接到系统总线的方式称为非缓冲方式。 3 .屏蔽中断源的方式、通常的屏蔽方式。 操作命令字OCW1用于屏蔽寄存器IMR的一位或几位1,以屏蔽一个或几个中断源的中断请求。 要释放某个中断源的中断请求,请将IMR的对应位置设为0。 特殊屏蔽方式。 在某些情况下,您可能会被要求在运行一个中断服务程序时,允许响应另一个优先级低于该程序的中断请求。 在这种情况下,可以采用特殊的掩码方式。 可以通过OCW3的D6D5=11进行设定。 4、优先顺序排列的方式、全嵌套方式。
14、 在这种方式中,中断优先级按07的顺序排队,只有中断级别高的中断源才能中断中断级别低的中断服务程序。 的双曲馀弦值。 这与完全的嵌套方式基本相同,但在特殊的完全嵌套方式中,执行一个级别的中断服务程序后,可以响应兄弟的中断请求,对兄弟的中断请求实现特殊的嵌套(使用8259A级联时,一个从切片的8 特殊的完整嵌套方法用于多个级联。 的双曲馀弦值。 以此方式,优先级不是恒定的,并且在一个设备中断了服务之后优先级会自动降到最低。 其初始优先顺序被规定为IR0、IR1、IR7。 该方式在系统中多个中断源的优先级相等时使用。 优先级特殊循环方式。 该方式和优先级自动循环方式的唯一不同在于,不在初始优先级顺
15、序固定IR0变为最高后开始循环,而是程序将ir0ir7的任一个指定为最高优先级,然后按顺序自动循环来决定优先级。 5 .结束中断的处理方式,自动中断结束方式。 中断服务程序在中断返回之前,即使不发出中断结束命令,也自动清除与该中断源对应的ISR位(实际上CPU发出第二次信号时,8259会自动清除ISR的对应位此方法用于没有嵌套多个中断的系统。 的双曲馀弦值。 在中断服务程序返回之前,要清除ISR的当前服务位,必须发出中断结束命令。 另外,八二五九a的初始化命令,当八二五九a初始化编程时,四个初始化命令ICW (初始化命令),即ICW1ICW4; 在8259A运行期间,有OCW (操作命令wor
16、d )、OCW1OCW3三个操作命令语。 因为在8259A只有端口地址、A0=、0偶数地址端口、1奇数地址端口,所以在8259A的读/写动作时,控制字、写入的端口地址、写入的顺序、相关标志位、1. ICW1、(IRi触发) 是否对ICW4进行写入),ltim:iri的触发方式,1高电平触发, SNGL :是否使用单体,是否使用0级联,=,ic4 :是否写入ic4,1后写入的IC w4,0不写入=、例:在某8086微机系统中,使用单体8259A,中断请求信号为上升触发,需要设置ICW4,端口地址为20H,21H其初始化指令语ICW1为00010011=13H,设置ICW1的指令为:mo 2. I
17、CW2,(中断类型号的高位5位),(中断类型号的低位3位发生在8259A自动编码中),例如:在某PC上8个可屏蔽中断(IR0 IR7 )的类型号为08H 0FH,A0=1,端口地址为21H时,ICW2为: 0 设置ICW2的命令是: MOV AL、08H OUT 21H、AL、3. ICW3 (级联时,主站从站的级联引脚),ICW1中SNGL=,1不写入ICW3,0是ICW3,(1)写入主机的IC w3 (2)在写入从站片的ICW3,例如某8086微机系统中,若在主机片8259A的IR2、IR6管脚上分别连接从站片8259A,则主机、从站片的ICW3初始化命令语如下设定:主机44H主片的ICW3将从片、OUT 21H、表示AL已连接到IR6、IR2的ICW3写入到奇
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年举办婚礼活动的策划方案
- 2025年1月幼儿园工作方案
- 汽车使用与维护 课件 项目三 进排气系统的维护
- 高三上学期《战胜拖延拒绝躺平》主题班会课件
- PHP程序设计项目化教程课件 项目5 文本内容过滤器-数据处理
- 2025年电动绕接器项目可行性研究报告
- 2025年甲基苯骈三氮唑项目可行性研究报告
- 2025年瓷盆去水器项目可行性研究报告
- 2025年玻璃纤维墙体网格布项目可行性研究报告
- 2025年环保节能型汽油添加剂项目可行性研究报告
- 【9数一模】2025年安徽省合肥市蜀山区九年级中考一模数学试卷(含答案)
- 2025年无锡市锡山环保能源集团招聘笔试参考题库含答案解析
- 2024年江西省高考化学试卷(真题+答案)
- 田径运动会各种记录表格
- 报价单(报价单模板)
- GB∕T 11071-2018 区熔锗锭-行业标准
- 产品和服务战略
- 远离手机班会课件
- 一页纸的劳动合同范本(5篇)
- 2019最新中小学校安全管理制度汇编
- 内审不符合项报告
评论
0/150
提交评论