您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 中断机制 >

80x86系列微机中断机制的计算思维教学pdf

发布时间:2019-07-05 03:52 来源:未知 编辑:admin

  1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

  第5期 计算机教育 30 Et Education 2014年3月10 Computer ◆计算机硬件教学 文章编号:1672—5913(2014)05-0030-06 中图分类号:G642 80X86系列微机中断机制的计算思维教学 罗兵,邹逢兴 (国防科技大学机电工程与自动化学院,湖南长沙410073) 摘要:针对计算机硬件技术基础教学中的“中断机制”章节,说明如何培养学生的计算思维能力。 首先从机理层面分析中断的检测、响应、处理过程,指出多中断源管理存在的两种情况:同时性与嵌 套性,并提出优先级的一致性原则,分析查询式中断优先级判决方法中有可能存在的错误嵌套的现象 及产生的原因,给出改进方法,并将此方法用于中断控制器8259A内部结构的讲解,结合逻辑建模的 方法,提出ISR实现嵌套管理的观点。 关键词:计算机硬件技术基础;计算思维;中断机制 0引言 (1)对于查询式中断优先级判决的教学,容 易忽视高优先级有可能嵌套低优先级的不正常情 目前,为培养创新人才,贯彻国家创新人 况,反映了对中断机制的理解不够深入。 才培养战略,由教育部高等教育司推动的“以计 (2)对于8259A可编程中断控制器的教学, 算思维能力培养为核心的大学计算机基础课程改 难以从原理层面讲清楚ISR的作用机理,导致学 革”正在各高校悄然开始,并要求“把计算思维 生不容易理解在中断结束前对ISR相应操作的缘 能力培养作为计算机基础教学的核心任务”,“加 由,更无从谈起自觉做到。 强以计算思维能力培养为核心的大学计算机基础 本文首先从机理层面深入分析中断的检测、 课程体系和教学内容改革”[1-2]o 响应、处理过程,提出多中断源管理存在的两 计算机硬件技术基础又称微机原理与接口技 种情况:同时性与嵌套性,并且需要满足优先级 术,已经成为大学工科专业,尤其以电为主专业 的一致性原则,进一步分析查询式中断优先级判 的主要技术基础课程,长期以来在教学实践中容 易受“狭义工具论【3】’’影响,或多或少存在职业 决存在嵌套错误的现象与产生原因,提出改进方 化教育倾向,表现为将重点集中在通用接口芯片 法,将此方法用于中断控制器8259A内部结构 的外特性与如何应用上,而对原理的普遍性讲述 的讲解,并结合逻辑建模的方法,从原理层面阐 不够突出【4】,问题的抽象程度不够深入。 述嵌套管理的机理。最后采用简单的实验验证了 其中,中断机制是该课程的主要知识单元之 ISR参与优先级嵌套性管理的作用。 一,在这一知识单元的教学中,通常会存在一些 与此同时,在上述每一步教学中都进行了计 具体问题[s-s],例如: 算思维属性分析,主要强调了各自的抽象表达。 第一作者简介:罗兵,男,副教授,研究方向为组合导航,.cn。 万方数据 第5期 计算机硬件教学 1 80X86系歹lI处理器的中断机理教学 INTR引脚电平还受中断屏蔽触发器的控制。其 屏蔽功能属于CPU外部芯片的功能。 在中断机理的教学中,一般的教学内容安排 ③CPU内部是开放的,对应IF=I判断框。 是先讲有关中断的基本概念,包括CPU响应外 ④没有更高优先级别的中断请求正在被响应 部中断的条件,然后讲8259A可编程中断控制 或正发出、正挂起。在框图中无法体现,只是一 器,最后讲解80X86系列处理器的中断机制。其 个理想目标。 中,CPU响应外部中断的条件为: ⑤CPU在现行指令结束后,对应了框图第 ①置位中断请求触发器。 一个判断框。 ②中断屏蔽触发器处于非屏蔽状态。 剩下唯一需要解释的就是第④条,属于多中 ③CPU内部是开放的。 断管理的概念。当CPU具有多中断管理功能时, ④没有更高优先级别的中断请求正在被响应 这一条是正确的;当CPU不具备多中断管理功 或正发出、正挂起。 能时,这一条是需要中断管理控制器实现的,如 ⑤CPU在现行指令结束后。 80X86系列处理器依赖8259A。 如果仅仅是上述文字,缺少图的配合,学生 这里仅分析计算思维属性的两大本质:抽象 感觉难以深入了解。在教学实践中笔者采取了将 后续内容适当提前的做法,将80X86系列处理器 产生机理抽象描述为:只要CPU外部有持续的 的中断机制中的“中断/异常的检测、响应、处 中断请求,同时CPU内部是开放的,就会产生 理过程(如图1所示)”融入“CPU响应中断的 中断。即只要满足上述①③两条就产生中断,其 条件”教学。 结果是有任意嵌套的可能,因为根本没有嵌套管 理的任何措施。自动化描述为:每一条指令结束 后(第⑤条)就进行中断条件检查,满足条件就 响应。 中断控制器进行多中断管理时,这个基本结论在 后面的分析中都适用。 2中断优先级管理 关于优先级,一般解释如下:当多个中断源 同时申请中断时,CPU同一时刻只能响应一个中 图1 中断/异常的检测、响应、处理过程 断源的申请,应按各中断源的轻重缓急程度来确 定它们的优先级别。优先级高的中断先响应。 这样以图1为背景逐一讲解上述5个条件, 当存在多个中断源时,必然存在一个嵌套问 就非常有针对性,逻辑关系清楚。重新讲解如 题,一般解释如下:中断嵌套是指在优先级已定 下: 的情况下,低优先级的中断服务程序可以被高优 ①置位了中断请求触发器,对应了CPU的 先级的中断源所中断,等高优先级的中断服务程 INTR引脚电平有效。 序结束后,再返回去执行被中断的低优先级中断 ②中断屏蔽触发器处于非屏蔽状态,CPU的 服务程序。 万方数据 计算机教育 32 Education 2014 Computer 这里分析计算思维属性的两大本质:抽象与 断请求的服务判决方法。对于查询式,多采用图 自动化。 2所示的查询式中断结构和图3所示的中断处理 抽象描述为:①中断优先级管理存在两个方 流程。 面的内容,同时性与嵌套性。同时性问题是指在 多个中断源同时请求中断时CPU响应哪一个? 嵌套问题是指在已经响应或正在响应一个中断 时,CPU遇到另外一个中断请求是如何管理的? ②优先级的~致性原则:同时陛与嵌套性行为过 程所表现出的优先级应该一致,即如果出现任意 嵌套,则不满足这一原则。 I.….….一.….….一.一.J 图2查询式中断结构 自动化描述为:针对外部中断([NTR)而 言,80X86系列处理器不具备多中断管理的功能, 中断处理程序 因此,同时性与嵌套性问题都需要中断控制器 管理。 然而中断控制器是设计出来的,因此中断控 制器设计得是否完善决定了是否满足优先级的一 致性原则,即一个有缺陷的设计不一定能够满足 优先级的一致性原则。 例如,80X86系列处理器通过外部中断 (INTR)扩展了两个中断源,仅通过硬件逻辑设 计了同时请求时响应高优先级中断源的功能,则 会出现CPU在已经响应一个高优先级中断的情 况下,无条件响应第二个低优先级中断的可能。 最简单的解释还是因为80X86系列处理器根本没 中断返凹 有嵌套管理的任何措施,其嵌套结果展示出了相 图3中断处理流程 反的优先级。 假设7#I/O在中断处理流程中最先查询,便 此例说明仅仅设计优先级的同时陛,而根本 认为70I/O的中断优先级最高,0#I/O的中断优先 不考虑优先级的嵌套性是不够的,需要满足优先 级最低。一般教学时仅分析到此为止,没有进一 级的一致性原则。 步分析中断的嵌套情况。由于优先级管理存在两 个方面的问题:同时眭与嵌套性,因此还需要分 3查询式中断优先级判决教学 析后者是否满足优先级的一致性原则? 在有多中断源的微机系统中,凡存在多个中 在实践中假设先由7#I/O发出中断请求,然 断源合用一根中断请求线的情况,都有一个多中 后在执行7#I/O服务程序过程中存在60I/O设备 断请求的服务判决问题,也必然会存在优先级管 发出的中断请求,最后根据前述的中断机制进行 理的两个方面的问题:同时性与嵌套性,然而是 嵌套分析,过程如下: 否满足优先级的一致性原则仍然需要深入分析。 虽然正在执行7#I/O服务程序,但是按照图 通常有程序查询式和中断向量式两种多中 1所示判断流程,当前满足再次进入中断的条件, 万方数据 第5期 计算机硬件教学 33 因此再次进入中断。为防止74I/O重复进入自身O服务程序,ISR7有效。此时存在6#I/O设备发 中断,合理假设7I/O设备的中断请求已经撤销。 出的中断请求INT。,由于被IsR7控制,因此此 这样再次进入中断处理流程后的第一个判断框会 中断请求无法通过,结果是INTR,无效,自然阻 选择往下执行,碰到第二个判断框。由于6I/O止了嵌套的发生。只有当78I/O服务程序结束后 设备刚刚发出中断请求,因此就顺理成章地进入 在适当的时候通过某种方式使得ISR,清零,才 了6I/O服务程序。其结果就是高优先级的7I/O会响应6I/O设备发出的中断请求。 设备中断程序被打断,转而执行低优先级的64I/ 至此,既完善了查询式中断管理的功能,也 O设备中断程序。 为后续理解8259A,尤其是中断服务状态寄存器 这显然有悖于CPU响应中断的条件之④一 ISR打好了铺垫。 没有更高优先级别的中断请求正在被响应或正发 出、正挂起。再次说明了优先级的一致性原则仅 4 中断控制器8259A的逻辑建模教学 仅是一个设计目标,需要相应的硬件支持。 为了实现正确的优先级管理,引入了ISR状 辑建模如图6所示。先简单分析其对多中断源 态寄存器参与优先级的嵌套性管理,如图4所示。 的管理过程。8259A存在8个中断输入源IRO~ IR7,其中任何一根线上升为高电平时,中断请 求寄存器IRR中相应的位IRRi就置为“1”。当 存在多个中断源同时请求时,优先级分析器PR 根据IR0至IR7优先级依次降低的原则选出其中 优先级最高的中断,并由8259A的INT引脚向 CPU发出中断请求。如果CPU处于开中断状态, 则在当前指令执行完后用/INTA信号作为响应。 高优先级的中断服务寄存器ISR的相应位ISRi 图4引入ISR管理的查询式中断结构 置位“1”,而相应的IRR位清零。如果8259A 工作在非AEOI模式,则由中断处理程序发出控 制命令清除ISR中的相应位。 ISR实际是8259A中的中断服务状态寄存器, 然后参与优先级管理逻辑。假设每一个中断请求 锁存器的输出状态是INTi,一方面通过三态接 入总线备查,另一方面通过优先级逻辑后再进行 “或非”汇总,形成单一的中断请求触发源INT。 优先级逻辑的逻辑建模如下: INTR7=INT7 INTRf/ISR7&INT6 INTRo=/ISR7&/ISR6&/ISR5&/ISR4&/ISR3&/ ISRE&/ISRl&INTo 再对上述过程进行分析,假设正在执行74I/ 图58259A内部结构 万方数据 计算机教育 Education Computer 优先级分折器 屏蔽寄存器 果表示了当前的最高优先级的编号,需要3bit。 ●卜 中 气菌 断 其中中断请求的传递控制过程可以简化成如下: IRP0=rRM0 ●●一 Ⅱ瑚0=雌0&Ⅱm0 ●●一 请 ⅡtR2 ●卜_ 求 IRPl爿mM0&ERMl ⅢMl=n皿1&IRRl ●●—一 IRPO=IRMO 寄 吸P2=,ⅡtM0&/gtM1&IRM2 IRM2=Ⅱ恹2&IRR2 存 mR7 ●●一 ●}一 嚣 IRPl朝I己M0&IRMl 中断艉务寄存器 参与的控翩逻辑 ●●—一 ●●一 n盯0=mP0 & ●}一INTl=以SRO&ERPl nqT2-爿ISR0&/ISRl&IRP2 II己M4&/IRM5&/IRM6&IRM7 ●}一 此模型阐述了多中断优先级管理的同时性 图6 8259A的逻辑建模 问题。 我们在不改变中断控制器8259A优先级的 4.4中断服务寄存器参与的控制逻辑简化模型 情况下,其简化的逻辑建模如下。 假设中断服务寄存器为8bit的D触发器模 4.1 中断请求寄存器模型 假设为8bit的D触发器模型,各自的置位控制,使当前最高优先级的ISR位置位。清零复 端为IR0的上升沿,复位端为/INTA与优先级分 位端比较复杂,存在两种情况:AEOI与非AEOI 析器的组合信号,/INTA使当前最高优先级的D 模式。当处于AEOI模式时,则在第二个/INTA 触发器清零。寄存器的输出信号为IRR0~IRR7。 脉冲信号结束时,将被响应的中断源在ISR中 4.2中断屏蔽寄存器参与的控制逻辑建模 的对应为清零;否则当处于非AEOI模式时,需 要通过操作命令字OCW2实现。通过ISR寄存 假设中断屏蔽寄存器为8bit的D触发器模 器控制输入信号IRP0~IRP7后的输出信号为 型,其值为IMR0~IMR7,内容通过总线的每一位分别控制IRR0~IRR7,经 INT0=IRP0 过控制后的输出信号是IRM0~IRM7: INTl=/ISRo&IRPl IRM0=IMR0&IRR0 IRMI=IMRl&IRRl ISR5&/ISR6&IItP7 IRM7=IMR7&IRR7 此模型说明了“CPU响应中断的条件”的第 此模型阐述了多中断优先级管理的嵌套性 问题。 ②条,即中断屏蔽触发器处于非屏蔽状态。 4.3优先级分析器参与的控制逻辑简化模型 4.5中断请求信号汇总模型 优先级分析器模型应该包括两个方面:一是 外界的中断请求信号IR0~IR7经过上述各 级控制后形成INT0~INT7的信号,然后按照 针对输入信号IRM0~IRM7的控制结果,应该是 “或”逻辑汇总。 8bit的IRP0~IRP7输出,反映了中断请求信号 的传递过程。当然8bit的IRP0~IRP7输出中应INT=INT01NTl 该只有lbit有效,称之为最高优先级的中断源胜NT7 出。二是针对胜出的其中lbit进行编码,编码结 其中“l”表示逻辑“或”。 万方数据 第5期 计算机硬件教学 4.6优先级管理分析 高优先级的定时器中断程序。 传统的中断服务程序在中断返回前先发出中 中断优先级管理包括同时性问题与嵌套问 断结束的EOI命令,其结果是实现了正常的嵌套 题。同时性问题由优先级分析器控制,决定在多 功能,即只能够是低优先级的中断程序嵌套高优 个中断源同时请求中断时响应哪一个,嵌套问题 先级的中断程序。基于上述的分析,简单的改动 则由中断服务寄存器ISR参与控制。 就是在高优先级的定时器中断程序的最开始就发 从上可以看出,当存在高优先级程序正在被 出中断结束的EOI命令;然后紧接着发出开中断 执行与服务时,其对应的ISRi位为“1”,就阻 命令,就可以实现高优先级的串行口中断程序嵌 止了所有低优先级中断源的上行请求过程,其表 套低优先级的定时器中断程序;最后经过实验验 现为对应的INTi始终为“0”;当中断程序发出 证此方法的正确性。 控制命令清除ISR中的相应位ISRi后,低优先 级的中断源方可向上传递请求,其表现为对应的 6结语 INTi不再为“0”。因此中断服务寄存器ISR实 质上实现了优先级嵌套管理功能。 引入逻辑建模方法在中断机制的教学后, 使学生对中断机制以及多中断管理的理解更加 鉴于此,教材中多处出现需要通过操作命令 清楚。 字OCW2实现清除ISR中的相应位就不难理解 (1)对于没有多中断管理功能的CPU,只要 了。如果不清除,则高优先级的中断结束后,低 满足文中①、③两个条件就可以进入中断,而不 中断源信号永远无法得到响应。 管当前是否正在执行中断程序。 5高优先级嵌套低优先级的简单实现方法 (2)中断优先级管理包括同时性问题与嵌套 .及实验验证 问题。同时性问题由优先级分析器控制,嵌套问 题则由中断服务寄存器ISR控制。同时性优先级 实验系统中存在两个中断源:定时器中断与 与嵌套性优先级需要一致。 串行口中断。定时器中断在单板计算机的硬件上 (3)采用了逻辑建模方法分析了8259A的内 连接到了IRQ0,串行口中断在硬件上连接到了部结构,有助于理解8259A在多中断管理方面的 IRQ3,中断管理控制器8259A的默认中断优先 原理。 级是IRQ0高于IRQ3,即定时器中断优先级高于同时也表明,在以计算思维能力培养作为计 串行口中断。鉴于8259A中断管理控制器的优先算机基础教学的核心任务时,坚持深入原理、侧 级设置偏复杂,本文试图在不改变原有优先级设 重原理的普遍性教学,容易引导学生正确地分析 置的情况下实现低优先级的串行口中断程序嵌套 问题,而不易被表象所迷惑。 参考文献: [1]冯博琴.对于计算思维能力培养“落地”I1题的探讨[J】.中国大学教学,2012(9):6-9. 【2】何钦铭,陆汉权,冯博琴.计算机基础教学的核心任务是计算思维能力的培养[J】.中国大学教学,2010(9):5-9. [3】陈国良,董荣胜.计算思维与大学计算机基础教育明.中国大学教学,2011(1):7-11. [4】田辉,徐惠民.突出原理普遍性解决理论与实际脱节问题:微机原理与接口技术教学如何突出原理的普遍性【J】.中国大学教 学,2011(1):42出. 【5]邹逢兴,陈立刚.计算机硬件技术基础口川.2J;ft.北京:高等教育出版社,2006:274-300. [6】何桥.计算机硬件技术基础【M】.2版.北京:电子工业出版社,2009:154-161. [7】孙德文,蒋建伟.计算机硬件技术(下)[M】.北京.高等教育出版社,2006:32—35. 【8]马世伟,杨帮华,刘廷章,等.计算机硬件技术基础[M】.北京:清华大学出版社,2009:122. (见习编辑:刘丽丽;编辑:郭田珍) 万方数据

  “原创力文档”前称为“文档投稿赚钱网”,本网站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】

http://rotorooterpa.com/zhongduanjizhi/208.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有