最新计算机组成原理第八章 第3讲 程序中断方式
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
器 IM(Interrupt Mask)中断屏蔽触发器
8.3.2程序中断方式的基本接口
⑨表①示表中示断④⑤⑦由服⑥表表表程务表示示示序程(示当允如启②③序1在设许果0动表表通)一备中“外示示过表条动断⑧中设接数输示指作标表断,口据入C令结志示屏将P向由指执束E转U蔽该I外外令行为或发向”外设设把末“缓出该标设发传接尾1冲控设志接”出送口C时寄制备I口MP启到中,存信的U的为动接数接器号检中“信口据口数C查断忙0将号的缓”向据中服”时接;缓冲C填断务标,P口冲寄满请程U志C中寄存时求发P序B的存器U,线出S入在B器的置设,中口S一;数“备断和;条据1向请R”指读D,接求标令至“口信志执C准送号P复行备出;U位结就中一。束绪的”寄标存志器R;D 控后将制受中信理断号外请,设求将的线数中的据断请“请求准求信备,号就向接绪外收”设到标发“志出中R响D断应置请中“求断1””信;标号志并IR关;闭中断;
中断处理流程,并假访设问存执储行器T一m 条指令 的时间也为TM。如果三个设备同时发出中断
请求,那么依次分别处理设访备问存A储、器T设m 备B、设
备C的时间如下:
0、指令周期 1、链式查询Tdc
tA = 2TM + TDC + TS + TA + TR
2、保护现场Ts 3、恢复现场Tr
tB = 2TM + 2TDC + TS + TB + TR
tC = 2TM + 3TDC + TS + TC + TR
处理三个设备所需的总时间为:T=tA+tB+tC
T是达到中断饱和的最小时间,即中断极限频 率为:f=1/T
8.3.5中断控制器
8259中断控制器是一个集成电路芯片,它将中断 接口与优先级判断等功能汇集于一身,常用于微 型机系统。其内部结构如图8.11所示。
8.3.3单级中断
所有中断源属于同一级,离CPU越近,优 先级越高。
要点:在执行某个中断请求的过程中,不 允许其他中断源再打断中断服务程序。即 使其优先级别更高。
单级中断示意图8.7类似于第六章的链式查 询方式。
8.3.3单级中断
中断响应:
8.3.3单级中断
中断源的识别:串行排队链法(菊花链查询方式)
(2)若CPU现执行设备B的中断服务程序, IM2,IM1,IM0的状态是什么?如果CPU 执行设 备D的中断服务程序,IM2,IM1, IM0的状态又是什么?
答:当前执行B的中断: IM2,IM1,IM0为111 当前执行D的中断: IM2,IM1,IM0为011
(3)每一级的IM能否对某个优先级的个别设 备单独进行屏蔽?如果不能,采取什么办法 可达到目的?
答:不能,因为共用IM。 通过设置允许中断触发器为0,禁止该设备发
出中断,对其屏蔽。
(4)假如设备C一提出中断请求,CPU立即 进行响应,如何调整才能满足此要求?
答:增加更高一级(第3级)的中断请求逻 辑,将C单独放置于第3级中。
例2(略):参见例1所示的系统,只考虑A,B, C三个设备组成的单级中断结构,它要求CPU在 执行完当前指令时对中断请求进行服务。假设: (1)CPU“中断批准”机构在响应一个新的中断之 前,先要让被中断的程序的一条指令一定要执行 完毕;(2)TDC为查询链中每个设备的延迟时间; (3)TA,TB,TC分别为设备A,B,C的服务程序 所需的执行时间; (4)TS,TR为保存现场和恢复 现场所需的时间;(5)主存工作周期为TM。 试问: 就这个中断请求环境来说,系统在什么情况下达 到中断饱和?
• IR1,IR2,IR3为中断请求信号 • IS1,IS2,IS3为中断选中信号 • INTI为中断排队输入 • INTO为中断排队输出
中断源识别之后获取中断向量
• 当CPU响应中断时,由硬件直接产生一个固定的地 址(即向量地址)
• 由向量地址指出每个中断源设备的中断服务程序入口, 这种方法通常称为向量中断。
计算机组成原理第八章 第3讲 程序中断方式
8.3 程序中断方式
8.3.1中断的概念、功能 8.3.2程序中断方式的基本接口 8.3.3单级中断 8.3.4多级中断 8.3.5Pentium中断机制
8.3.1中断的概念、功能
不再接 中断
硬件 实现
软件 实现
可再接 中断
8.3.1中断的概念、功能
8.3.4多级中断
8.3.4多级中断
• 多级中断源的识别
中断优先排队电路 中断向量产生电路
举例
例1、参见图8.9所示的二维中断系统。请 问: (1)在中断情况下,CPU和设备的优先 级如何考虑?请按降序排列各设备的中断优 先级。
答:在中断情况下,CPU的优先级最低。 各设备的优先次序是: A→B→C→D→E→F→G→H→I→CPU。
中断处理过程注意几个问题:
响应中断时机:外界中断请求是随机的,但 CPU只有在当前指令执行完毕后,才转至公操 作
断点保护问题(PC,寄存器内容和状态的保 存)
中断屏蔽:开中断和关中断问题。 中断是由软硬件结合起来实现的
8.3.2程序中断方式的基本I/O接口
数据缓冲寄存器 BS外设接口忙(BuSy)标志 RD外设准备就绪(ReaDy)标志 EI(Enable Interrupt中断允许触发器) IR(Interrupt Request)中断请求触发
8.3.4多级中断
概念:多级中断系统是指计算机系统中有相当多 的中断源,根据各中断事件的轻重缓急程度不 同而分成若干级别,每一中断级分配给一个优 先权。
多级指的是优先权级别有多个 每级有一个中断优先权 优先权高的中断级别级可以打断低的级别
• 如图8.9示
8.3.4多级中断
-多级中断可分为一维多级中断和二维多级中断 一维多级中断:每一级中断中有一个中断源。 二维多级中断:每一级中断中有多个中断源
-说明:
• 中断响应时,确定哪一级中断和中断源采用硬件实现。采 用了独立请求方式和链式查询方式相结合的方式。多级中 断可以嵌套,但同一级的中断不允许嵌套
• 使用多级堆栈保存现场(包括IM) • 一个系统有n级中断,则CPU中有n个IR,n个IM,某级中
断被响应后,则关闭本级和低于本级的IM
8.3.2程序中断方式的基本接口
⑨表①示表中示断④⑤⑦由服⑥表表表程务表示示示序程(示当允如启②③序1在设许果0动表表通)一备中“外示示过表条动断⑧中设接数输示指作标表断,口据入C令结志示屏将P向由指执束E转U蔽该I外外令行为或发向”外设设把末“缓出该标设发传接尾1冲控设志接”出送口C时寄制备I口MP启到中,存信的U的为动接数接器号检中“信口据口数C查断忙0将号的缓”向据中服”时接;缓冲C填断务标,P口冲寄满请程U志C中寄存时求发P序B的存器U,线出S入在B器的置设,中口S一;数“备断和;条据1向请R”指读D,接求标令至“口信志执C准送号P复行备出;U位结就中一。束绪的”寄标存志器R;D 控后将制受中信理断号外请,设求将的线数中的据断请“请求准求信备,号就向接绪外收”设到标发“志出中R响D断应置请中“求断1””信;标号志并IR关;闭中断;
中断处理流程,并假访设问存执储行器T一m 条指令 的时间也为TM。如果三个设备同时发出中断
请求,那么依次分别处理设访备问存A储、器T设m 备B、设
备C的时间如下:
0、指令周期 1、链式查询Tdc
tA = 2TM + TDC + TS + TA + TR
2、保护现场Ts 3、恢复现场Tr
tB = 2TM + 2TDC + TS + TB + TR
tC = 2TM + 3TDC + TS + TC + TR
处理三个设备所需的总时间为:T=tA+tB+tC
T是达到中断饱和的最小时间,即中断极限频 率为:f=1/T
8.3.5中断控制器
8259中断控制器是一个集成电路芯片,它将中断 接口与优先级判断等功能汇集于一身,常用于微 型机系统。其内部结构如图8.11所示。
8.3.3单级中断
所有中断源属于同一级,离CPU越近,优 先级越高。
要点:在执行某个中断请求的过程中,不 允许其他中断源再打断中断服务程序。即 使其优先级别更高。
单级中断示意图8.7类似于第六章的链式查 询方式。
8.3.3单级中断
中断响应:
8.3.3单级中断
中断源的识别:串行排队链法(菊花链查询方式)
(2)若CPU现执行设备B的中断服务程序, IM2,IM1,IM0的状态是什么?如果CPU 执行设 备D的中断服务程序,IM2,IM1, IM0的状态又是什么?
答:当前执行B的中断: IM2,IM1,IM0为111 当前执行D的中断: IM2,IM1,IM0为011
(3)每一级的IM能否对某个优先级的个别设 备单独进行屏蔽?如果不能,采取什么办法 可达到目的?
答:不能,因为共用IM。 通过设置允许中断触发器为0,禁止该设备发
出中断,对其屏蔽。
(4)假如设备C一提出中断请求,CPU立即 进行响应,如何调整才能满足此要求?
答:增加更高一级(第3级)的中断请求逻 辑,将C单独放置于第3级中。
例2(略):参见例1所示的系统,只考虑A,B, C三个设备组成的单级中断结构,它要求CPU在 执行完当前指令时对中断请求进行服务。假设: (1)CPU“中断批准”机构在响应一个新的中断之 前,先要让被中断的程序的一条指令一定要执行 完毕;(2)TDC为查询链中每个设备的延迟时间; (3)TA,TB,TC分别为设备A,B,C的服务程序 所需的执行时间; (4)TS,TR为保存现场和恢复 现场所需的时间;(5)主存工作周期为TM。 试问: 就这个中断请求环境来说,系统在什么情况下达 到中断饱和?
• IR1,IR2,IR3为中断请求信号 • IS1,IS2,IS3为中断选中信号 • INTI为中断排队输入 • INTO为中断排队输出
中断源识别之后获取中断向量
• 当CPU响应中断时,由硬件直接产生一个固定的地 址(即向量地址)
• 由向量地址指出每个中断源设备的中断服务程序入口, 这种方法通常称为向量中断。
计算机组成原理第八章 第3讲 程序中断方式
8.3 程序中断方式
8.3.1中断的概念、功能 8.3.2程序中断方式的基本接口 8.3.3单级中断 8.3.4多级中断 8.3.5Pentium中断机制
8.3.1中断的概念、功能
不再接 中断
硬件 实现
软件 实现
可再接 中断
8.3.1中断的概念、功能
8.3.4多级中断
8.3.4多级中断
• 多级中断源的识别
中断优先排队电路 中断向量产生电路
举例
例1、参见图8.9所示的二维中断系统。请 问: (1)在中断情况下,CPU和设备的优先 级如何考虑?请按降序排列各设备的中断优 先级。
答:在中断情况下,CPU的优先级最低。 各设备的优先次序是: A→B→C→D→E→F→G→H→I→CPU。
中断处理过程注意几个问题:
响应中断时机:外界中断请求是随机的,但 CPU只有在当前指令执行完毕后,才转至公操 作
断点保护问题(PC,寄存器内容和状态的保 存)
中断屏蔽:开中断和关中断问题。 中断是由软硬件结合起来实现的
8.3.2程序中断方式的基本I/O接口
数据缓冲寄存器 BS外设接口忙(BuSy)标志 RD外设准备就绪(ReaDy)标志 EI(Enable Interrupt中断允许触发器) IR(Interrupt Request)中断请求触发
8.3.4多级中断
概念:多级中断系统是指计算机系统中有相当多 的中断源,根据各中断事件的轻重缓急程度不 同而分成若干级别,每一中断级分配给一个优 先权。
多级指的是优先权级别有多个 每级有一个中断优先权 优先权高的中断级别级可以打断低的级别
• 如图8.9示
8.3.4多级中断
-多级中断可分为一维多级中断和二维多级中断 一维多级中断:每一级中断中有一个中断源。 二维多级中断:每一级中断中有多个中断源
-说明:
• 中断响应时,确定哪一级中断和中断源采用硬件实现。采 用了独立请求方式和链式查询方式相结合的方式。多级中 断可以嵌套,但同一级的中断不允许嵌套
• 使用多级堆栈保存现场(包括IM) • 一个系统有n级中断,则CPU中有n个IR,n个IM,某级中
断被响应后,则关闭本级和低于本级的IM