《8计算机组成原理(第八章).ppt》由会员分享,可在线阅读,更多相关《8计算机组成原理(第八章).ppt(86页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第八章第八章 输入输出系统输入输出系统n计算机硬件可细分为运算器、控制器、存储器,输入设备和输计算机硬件可细分为运算器、控制器、存储器,输入设备和输出设备,又可粗略地分为出设备,又可粗略地分为“CPU、存储器、输入输出设备、存储器、输入输出设备”三三部分。这三部分之间的连接方式和信息交换方式关系到计算机部分。这三部分之间的连接方式和信息交换方式关系到计算机基本功能的实现,是计算机输入输出系统所要解决的主要问题。基本功能的实现,是计算机输入输出系统所要解决的主要问题。n计算机的输入输出系统简称为计算机的输入输出系统简称为I/O系统。一个计算机系统的综系统。一个计算机系统的综合能力、可扩展性、兼容
2、性和性能价格比,都与合能力、可扩展性、兼容性和性能价格比,都与I/O系统有密系统有密切的关系。切的关系。I/O系统是计算机系统中最具有多样性和复杂性的系统是计算机系统中最具有多样性和复杂性的部分。部分。1本章的主要内容本章的主要内容主要内容:主要内容:n总线技术总线技术n主机与外设的连接主机与外设的连接n程序查询方式程序查询方式n中断系统和程序中断方式中断系统和程序中断方式nDMA方式及其接口方式及其接口n通道控制方式通道控制方式2一、总线技术一、总线技术以总线连接外设、主存储器、以总线连接外设、主存储器、CPU等计算机部等计算机部件,是计算机系统中普遍采用的方式。总线在件,是计算机系统中普遍
3、采用的方式。总线在计算机系统中是一个非常重要的概念。计算机系统中是一个非常重要的概念。31、总线定义、总线定义n所谓总线是一组能为多个功能部件分时共享的信息传输线路,所谓总线是一组能为多个功能部件分时共享的信息传输线路,借助该传输线路,计算机在各功能部件之间实现地址、数据和借助该传输线路,计算机在各功能部件之间实现地址、数据和控制信息的交换。总线包含地址总线、数据总线和控制总线。控制信息的交换。总线包含地址总线、数据总线和控制总线。n学习总线概念应搞清楚两点,一要搞清楚学习总线概念应搞清楚两点,一要搞清楚“一组信息传输线路一组信息传输线路”,二要搞清楚,二要搞清楚“分时共享分时共享”。n例如,
4、铁路线类似于总线,坐车的人相当于要传送的信息。大例如,铁路线类似于总线,坐车的人相当于要传送的信息。大家都能坐火车出行是共享;满员时必须选择乘坐下一车次便是家都能坐火车出行是共享;满员时必须选择乘坐下一车次便是分时。总线的工作机制也是分时共享,任何时间只允许两个部分时。总线的工作机制也是分时共享,任何时间只允许两个部件或设备通过总线交换信息。件或设备通过总线交换信息。n总线实体就是一组传输线路和相应的控制逻辑。控制逻辑的实总线实体就是一组传输线路和相应的控制逻辑。控制逻辑的实现可以是现可以是CPU内部的控制逻辑,也可以是总线控制器。内部的控制逻辑,也可以是总线控制器。4分时共享的实现分时共享的
5、实现n如何实现分时呢?解决的思路是让不参与通信的设备与总线在逻如何实现分时呢?解决的思路是让不参与通信的设备与总线在逻辑上断开,从而避免干扰正在输送数据的两个部件的正常工作。辑上断开,从而避免干扰正在输送数据的两个部件的正常工作。n总线的控制逻辑主要由三态门实现。三态门有总线的控制逻辑主要由三态门实现。三态门有3种状态:种状态:0、1、高、高阻态。三态门有阻态。三态门有3只引脚:输入端、输出端、控制端(只引脚:输入端、输出端、控制端(G、G).n当控制端有效时,三态门才打开,输出端反映输入端的状态;否当控制端有效时,三态门才打开,输出端反映输入端的状态;否则三态门处于关闭状态,输出端呈现高阻态
6、,也就是在逻辑上被则三态门处于关闭状态,输出端呈现高阻态,也就是在逻辑上被断开,输入端不影响输出端。断开,输入端不影响输出端。52、总线分类、总线分类 从不同的角度出发,总线有不同的分类方法。按计算机系统的层次从不同的角度出发,总线有不同的分类方法。按计算机系统的层次结构,总线分可为:结构,总线分可为:nCPU内部总线:内部总线:CPU内部连接各寄存器和运算部件之间的互联内部连接各寄存器和运算部件之间的互联线。由于线。由于CPU的集成化,这组总线从外部是看不见的。的集成化,这组总线从外部是看不见的。n系统总线系统总线:连接计算机系统各功能部件,如:连接计算机系统各功能部件,如CPU、存储器、存
7、储器、I/O接口之间的总线。系统总线是可见的。接口之间的总线。系统总线是可见的。n外总线:计算机之间、计算机与其它设备之间的连接线称为外外总线:计算机之间、计算机与其它设备之间的连接线称为外总线。在很多情况下,这些连线不是计算机专用的,主要用于总线。在很多情况下,这些连线不是计算机专用的,主要用于其它设备上。其它设备上。总线按时序控制方式可分为同步总线、异步总线、准同步总线;按总线按时序控制方式可分为同步总线、异步总线、准同步总线;按数据传送格式可分为串行总线、并行总线。这里不再讨论。数据传送格式可分为串行总线、并行总线。这里不再讨论。63、总线标准、总线标准标准化是一种趋势,总线也不例外,目
8、前总线基本实现标准化。标准化是一种趋势,总线也不例外,目前总线基本实现标准化。总线一般按以下四大特征进行规范。总线一般按以下四大特征进行规范。n物理特性:物理特性规定,总线这种插件尺寸有多大?引脚物理特性:物理特性规定,总线这种插件尺寸有多大?引脚数有多少?引脚的相对位置如何?数有多少?引脚的相对位置如何?n功能特性:功能特性规定,总线的每一根信号线作什么用。功能特性:功能特性规定,总线的每一根信号线作什么用。n电气特性:电气特性规定,每一个信号线电平的高低、信号电气特性:电气特性规定,每一个信号线电平的高低、信号的传递方向等。的传递方向等。n时间特性:时间特性规定,信号线完成每一个动作的起止
9、时时间特性:时间特性规定,信号线完成每一个动作的起止时间,即什么时间有效、能延续多长时间等。间,即什么时间有效、能延续多长时间等。7总线标准(续)总线标准(续)所谓总线标准就是对总线的这四个方面进行规范。制定总线所谓总线标准就是对总线的这四个方面进行规范。制定总线标准有以下几方面的好处(优点、优势)。标准有以下几方面的好处(优点、优势)。n从工程的角度考虑,能够简化硬件设计、易于扩充。从工程的角度考虑,能够简化硬件设计、易于扩充。n从用户的角度考虑,易于获得,随便从哪里买、随便买从用户的角度考虑,易于获得,随便从哪里买、随便买哪一家的都可以。哪一家的都可以。n从厂商的角度考虑,易于批量生产、降
10、低成本。从厂商的角度考虑,易于批量生产、降低成本。84、总线的信息传送方式、总线的信息传送方式n串行传送串行传送:只有一条传输线,采用脉冲传送。在串行传送时,顺序:只有一条传输线,采用脉冲传送。在串行传送时,顺序传送一个数码的所有二进制位,每次一位;先传送数码的最低位,传送一个数码的所有二进制位,每次一位;先传送数码的最低位,最后传送最高位。最后传送最高位。n并行传送并行传送:信息字有多少二进制位,就需要多少条传输线,每个二:信息字有多少二进制位,就需要多少条传输线,每个二进制位在不同的线上进行传输。并行传送一般采用电位传送,所有进制位在不同的线上进行传输。并行传送一般采用电位传送,所有位同时
11、被传送,速度要比串行传送快。位同时被传送,速度要比串行传送快。n分时传送分时传送:分时传送有两种概:分时传送有两种概念,一是采用总线复用方式,念,一是采用总线复用方式,既传送地址信息,也传送数据既传送地址信息,也传送数据信息。为此需要划分时间片,信息。为此需要划分时间片,在不同时间中完成不同的传送在不同时间中完成不同的传送任务。二是共享总线的部件分任务。二是共享总线的部件分时使用总线。时使用总线。95、系统总线、系统总线n总线是一组能为多个功能部件分时共享的信息传输线路,借总线是一组能为多个功能部件分时共享的信息传输线路,借助总线,各功能部件相互交换信息。助总线,各功能部件相互交换信息。n系统
12、总线主要连接计算机系统内部的各功能部件,如系统总线主要连接计算机系统内部的各功能部件,如CPU、存储器、存储器、I/O设备等。系统总线是可见的。例如,设备等。系统总线是可见的。例如,PC机主板机主板上的很多插槽,实际上就是系统总线的接口。上的很多插槽,实际上就是系统总线的接口。n(系统)总线设计的要素包括总线宽度、总线时序、总线仲(系统)总线设计的要素包括总线宽度、总线时序、总线仲裁等几个方面。裁等几个方面。10总线宽度总线宽度n任何总线的信号线在功能上可分为数据线、地址线、控制线。所谓任何总线的信号线在功能上可分为数据线、地址线、控制线。所谓总线宽度就是各功能组中的信号线数,关系到计算机系统
13、数据传输总线宽度就是各功能组中的信号线数,关系到计算机系统数据传输的速率、可管理内存的大小、集成度和硬件成本的问题。的速率、可管理内存的大小、集成度和硬件成本的问题。n数据线提供各部件数据传送的途径。典型的数据总线有数据线提供各部件数据传送的途径。典型的数据总线有8位、位、16位、位、32位等。数据总线的宽度决定同时传送的数据位数,增加数据总位等。数据总线的宽度决定同时传送的数据位数,增加数据总线的宽度能够提高总线带宽。线的宽度能够提高总线带宽。总线带宽总线带宽是指单位时间内总线传送的是指单位时间内总线传送的数据量,它定义了总线本身所能达到的最高传输速率。数据量,它定义了总线本身所能达到的最高
14、传输速率。n地址总线用于传送读写数据的单元地址。总线中地址线数越多,地址总线用于传送读写数据的单元地址。总线中地址线数越多,CPU可直接寻址的空间越大。可直接寻址的空间越大。n位总线可寻址位总线可寻址2n个单元。个单元。n控制线主要用来实现控制功能,如中断请求线和应答线、总线请求控制线主要用来实现控制功能,如中断请求线和应答线、总线请求线和应答线等。线和应答线等。11总线的时序总线的时序总线在进行信息交换时,必须有时间上的配合,也就是进总线在进行信息交换时,必须有时间上的配合,也就是进行时序控制。根据时序的不同,总线的时序控制方式分为行时序控制。根据时序的不同,总线的时序控制方式分为同步通信方
15、式和异步通信方式。同步通信方式和异步通信方式。12同步通信方式同步通信方式 n同步通信方式是指采用统一的时钟信号进行定时、来协调收发双同步通信方式是指采用统一的时钟信号进行定时、来协调收发双方的传送操作。一般由定宽的时标同步,完成一次数据交换。完方的传送操作。一般由定宽的时标同步,完成一次数据交换。完成一次总线操作所需的时间称为总线周期。成一次总线操作所需的时间称为总线周期。n同步通信方式适用于总同步通信方式适用于总线长度较短的场合,由线长度较短的场合,由于无法知道接收方是否于无法知道接收方是否正确接收,加上时标线正确接收,加上时标线上的干扰会引起错误同上的干扰会引起错误同步,所以可靠性较低。
16、步,所以可靠性较低。n同步通信必须按最慢的同步通信必须按最慢的部件设计时钟,总线效部件设计时钟,总线效率会降低。率会降低。13异步通信方式异步通信方式 n异步通信没有统一的时钟,也没有固定的时间间隔,完全依靠收异步通信没有统一的时钟,也没有固定的时间间隔,完全依靠收发双方相互制约的发双方相互制约的“握手握手”信号来实现定时控制,也就是定时控信号来实现定时控制,也就是定时控制建立在应答式或互锁机制基础上。制建立在应答式或互锁机制基础上。n通常把交换信息的两个部件或通常把交换信息的两个部件或设备分为主设备和从设备。获设备分为主设备和从设备。获得总线控制权的设备称为主设得总线控制权的设备称为主设备,
17、被主设备访问的设备称为备,被主设备访问的设备称为从设备。交换信息的请求由主从设备。交换信息的请求由主设备发起。在异步总线上,后设备发起。在异步总线上,后一事件的出现取决于前一事件一事件的出现取决于前一事件的出现,总线周期不固定,灵的出现,总线周期不固定,灵活性很强。活性很强。n异步通信过程见图所示。异步通信过程见图所示。14异步通信方式(续)异步通信方式(续)n根据请求和应答信号的建立和撤销是否互相依赖,异步根据请求和应答信号的建立和撤销是否互相依赖,异步通信又可分为三种:非互锁通信、半互锁通信和全互锁通信又可分为三种:非互锁通信、半互锁通信和全互锁通信,其中全互锁通信的可靠性最高。通信,其中
18、全互锁通信的可靠性最高。15总线判优和仲裁总线判优和仲裁 n总线是在争用资源的基础上进行工作的。为了解决设备同时总线是在争用资源的基础上进行工作的。为了解决设备同时竞争总线控制权,必须有总线仲裁部件,来决定下一次谁将竞争总线控制权,必须有总线仲裁部件,来决定下一次谁将成为主设备。总线控制方式就是总线判优和仲裁方式。成为主设备。总线控制方式就是总线判优和仲裁方式。n按仲裁机构的位置不同,总线控制分为集中控制和分布控制按仲裁机构的位置不同,总线控制分为集中控制和分布控制两大类。总线控制逻辑基本上集中于一个设备(如两大类。总线控制逻辑基本上集中于一个设备(如CPU),),称为集中式控制;而总线控制逻
19、辑分散在连接总线的各个部称为集中式控制;而总线控制逻辑分散在连接总线的各个部件或设备,称为分布式控制。件或设备,称为分布式控制。n集中式控制方式又分为链式查询方式、计数查询方式以及独集中式控制方式又分为链式查询方式、计数查询方式以及独立请求方式。立请求方式。16集中式控制:链式查询方式集中式控制:链式查询方式特点:特点:n连线数较少;连线数较少;n容易扩充;容易扩充;n对故障敏感;对故障敏感;n部件部件/设备离仲裁器设备离仲裁器越近优先级越高。越近优先级越高。17集中式控制:计数查询方式集中式控制:计数查询方式 特点:特点:n优先级易调整,先查优先级易调整,先查到的设备优先级高;到的设备优先级
20、高;n灵活性强;灵活性强;n查询的实质是比较计查询的实质是比较计数值和地址。数值和地址。18集中式控制:独立请求方式集中式控制:独立请求方式 特点:特点:n响应速度快;响应速度快;n优先级易调整;优先级易调整;n控制线多;控制线多;n硬件复杂。硬件复杂。19关于总线的补充说明关于总线的补充说明n实现总线控制有现成的芯片可用。例如,总线控制器实现总线控制有现成的芯片可用。例如,总线控制器8288、总线仲裁器总线仲裁器8289。n部件或设备在使用总线时,一般需要经过申请、建立、使用、部件或设备在使用总线时,一般需要经过申请、建立、使用、归还四个阶段。归还四个阶段。n总线通过接口连接各功能部件或设备
21、,换句话说,接口通过系总线通过接口连接各功能部件或设备,换句话说,接口通过系统总线与主机连接,同时又通过外部总线连接设备。统总线与主机连接,同时又通过外部总线连接设备。20二、主机与外围设备的连接二、主机与外围设备的连接输入输出系统是计算机系统的重要组成部分,是沟通计算机输入输出系统是计算机系统的重要组成部分,是沟通计算机与外部世界的桥梁。从硬件逻辑上看,输入输出系统包含系与外部世界的桥梁。从硬件逻辑上看,输入输出系统包含系统总线、接口和外围设备三部分。其中接口又包含了控制外统总线、接口和外围设备三部分。其中接口又包含了控制外设工作的绝大部分电路,一般以插件的形式插在计算机主板设工作的绝大部分
22、电路,一般以插件的形式插在计算机主板的扩展槽中;一些公共接口逻辑,如中断控制器、的扩展槽中;一些公共接口逻辑,如中断控制器、DMA控制控制器等,则常置于主板上。下面讨论主机与外设之间的接口。器等,则常置于主板上。下面讨论主机与外设之间的接口。211、输入输出接口、输入输出接口n所谓接口泛指两个相对独立的子系统之间的连接机构。所谓接口泛指两个相对独立的子系统之间的连接机构。输入输出接口,也叫输入输出接口,也叫I/O接口,是指主机和外设之间的硬接口,是指主机和外设之间的硬件连接逻辑以及信号传递协议,用来实现主机和外设之件连接逻辑以及信号传递协议,用来实现主机和外设之间的信息交换。间的信息交换。I/
23、O接口的表现形式有大家常见的接口卡接口的表现形式有大家常见的接口卡或者叫适配器。或者叫适配器。n通过接口,主机和外设可以完成包括数据信息、控制信通过接口,主机和外设可以完成包括数据信息、控制信息、和状态信息等的交换。息、和状态信息等的交换。22接口所处的位置接口所处的位置为什么必须要通过接口来实现信息的交换呢?为什么必须要通过接口来实现信息的交换呢?适配器适配器也叫接口也叫接口系统总线系统总线连接主机连接主机和接口和接口外总线外总线连接设备连接设备232、接口的功能与基本组成、接口的功能与基本组成控制功能:控制功能:接口包含大部分外设的控制电路,如启动设备等。接口包含大部分外设的控制电路,如启
24、动设备等。数据缓冲功能:数据缓冲功能:主机和外设工作速度差异很大,需要解决两者之间主机和外设工作速度差异很大,需要解决两者之间的速度匹配问题。解决的办法是设立数据缓冲寄存器。接口中数据的速度匹配问题。解决的办法是设立数据缓冲寄存器。接口中数据缓冲寄存器对缓冲寄存器对I/O数据起缓冲作用。数据起缓冲作用。数据格式变换功能:数据格式变换功能:在输入输出过程中,接口电路必须能对数据的在输入输出过程中,接口电路必须能对数据的格式进行转换,以满足主机或外设对信息形式的不同要求。例如,格式进行转换,以满足主机或外设对信息形式的不同要求。例如,串串/并转换,数并转换,数/模转换等等。模转换等等。寻址功能:寻
25、址功能:任何一个计算机系统都配备多种外设,同一种外设也可任何一个计算机系统都配备多种外设,同一种外设也可能有多台,主机随时可能与不同外设交换信息。当主机送来选择外能有多台,主机随时可能与不同外设交换信息。当主机送来选择外设的地址码时,接口必须能进行译码,从而正确识别外设。设的地址码时,接口必须能进行译码,从而正确识别外设。传递控制命令和状态信息功能:传递控制命令和状态信息功能:接口是主机命令下达和外设状态上接口是主机命令下达和外设状态上传的必由之路,只有正确完成传递控制命令和反馈状态信息,才能传的必由之路,只有正确完成传递控制命令和反馈状态信息,才能实现主机和外设的信息交换。实现主机和外设的信
26、息交换。实现时序信号的配合、驱动能力和工作电平的匹配等功能。实现时序信号的配合、驱动能力和工作电平的匹配等功能。24主机、接口、和外设之间的连接主机、接口、和外设之间的连接 n接口的基本组成包括:数据寄存器、命令接口的基本组成包括:数据寄存器、命令/状态寄存器、地址寄存状态寄存器、地址寄存器、设备识别电路、数据格式转换电路、控制电路等。器、设备识别电路、数据格式转换电路、控制电路等。n接口(接口(Interface)与端口()与端口(Port)是两个不同的的概念。)是两个不同的的概念。端口端口是是指接口电路中可以被指接口电路中可以被CPU访问的寄存器,它至少包含数据寄存器访问的寄存器,它至少包
27、含数据寄存器和命令和命令/状态寄存器。状态寄存器。端口加上相应的控制逻辑构成接口端口加上相应的控制逻辑构成接口。和主机和主机的接口的接口 和外设和外设的接口的接口 253、接口的编址、接口的编址n编址的目的是为了寻址,为了找到进行信息交换的外围设备。编址的目的是为了寻址,为了找到进行信息交换的外围设备。I/O端口端口地址是主机与外设直接通讯的地址,地址是主机与外设直接通讯的地址,I/O设备的编址方式就是端口的编设备的编址方式就是端口的编址方式。址方式。I/O设备的编址方式有两种:设备的编址方式有两种:n独立编址方式独立编址方式 独立编址方式是指独立编址方式是指I/O端口地址与存储器地址无关,单
28、独编码,端口地址与存储器地址无关,单独编码,CPU用专门设置的用专门设置的I/O指令访问端口。指令访问端口。特点:不占用存储空间,但需要专门设置特点:不占用存储空间,但需要专门设置I/O指令,且指令,且I/O指令仅限指令仅限于传输,功能较弱。如于传输,功能较弱。如8086系列机就采用独立编址方式。系列机就采用独立编址方式。n统一编址方式统一编址方式统一编址方式是把统一编址方式是把I/O端口当作存储器的单元来分配地址。不设专端口当作存储器的单元来分配地址。不设专门的门的I/O指令,使用访存指令就能实现指令,使用访存指令就能实现I/O操作。操作。特点:特点:CPU访问外设更灵活方便,但使内存容量减
29、小;进行访问外设更灵活方便,但使内存容量减小;进行I/O操操作时,执行速度比较慢。作时,执行速度比较慢。PDP-11采用统一编址方式。采用统一编址方式。264、接口的分类、接口的分类按数据传输的格式,可分为串行接口、并行接口。按数据传输的格式,可分为串行接口、并行接口。串行接口串行接口是指在主机和接口一侧并行传送信息、接口和外设则一是指在主机和接口一侧并行传送信息、接口和外设则一侧串行传送信息。一般而言,串行接口速度慢,但传输线数少,侧串行传送信息。一般而言,串行接口速度慢,但传输线数少,适用于传输距离较远的场合、以及本身串行工作的设备。适用于传输距离较远的场合、以及本身串行工作的设备。并行接
30、口并行接口是指主机和接口一侧以及接口和设备一侧都以字节或字是指主机和接口一侧以及接口和设备一侧都以字节或字并行传输。并行接口传输速度快,但传输线数多,适用于传输距并行传输。并行接口传输速度快,但传输线数多,适用于传输距离较近的场合、以及本身并行工作的设备。离较近的场合、以及本身并行工作的设备。按总线操作时序的控制方式,可分为同步接口、异步接口。按总线操作时序的控制方式,可分为同步接口、异步接口。同步接口同步接口是指与同步总线相连的接口,其信息传送由统一的时序是指与同步总线相连的接口,其信息传送由统一的时序信号同步控制。信号同步控制。异步接口异步接口则是指与异步总线相连的接口,其信息传送采用应答
31、方则是指与异步总线相连的接口,其信息传送采用应答方式控制。式控制。按主机对外设的控制方式,可分为程序查询接口、中断接口、按主机对外设的控制方式,可分为程序查询接口、中断接口、DMA接口、以及通道控制器等。这将是本章要集中讨论的问题。接口、以及通道控制器等。这将是本章要集中讨论的问题。275、外设的信息交换方式、外设的信息交换方式 在计算机系统中,在计算机系统中,CPU管理外设、实现信息交换的方式有:管理外设、实现信息交换的方式有:程序查询方式和程序中断方式适用于数据传输速率比较低的设备;程序查询方式和程序中断方式适用于数据传输速率比较低的设备;而而DMA方式、通道方式、和方式、通道方式、和PP
32、U方式适用于数据传输率比较高的设方式适用于数据传输率比较高的设备。目前,单片机和微型计算机中多采用程序查询方式、程序中断备。目前,单片机和微型计算机中多采用程序查询方式、程序中断方式和方式和DMA方式;大、中型计算机则采用通道方式和方式;大、中型计算机则采用通道方式和PPU方式。方式。低速设备低速设备高速设备高速设备28三三、程序查询方式、程序查询方式 在程序查询方式下,数据在在程序查询方式下,数据在CPU和外设之间的传送完全靠计和外设之间的传送完全靠计算机程序控制。某一设备一旦被选中,主机将不停地查询这算机程序控制。某一设备一旦被选中,主机将不停地查询这个设备,看其是否准备就绪。如果设备准备
33、就绪,就执行一个设备,看其是否准备就绪。如果设备准备就绪,就执行一次次I/O操作,否则继续循环查询。操作,否则继续循环查询。在程序查询方式下,在程序查询方式下,CPU只能等待,不能处理其它业务只能等待,不能处理其它业务。程序查询方式又分为两种情况:无条件传送和条件传送。程序查询方式又分为两种情况:无条件传送和条件传送。291、无条件传送、无条件传送n无条件传送是假设外设始终处于准备好状态,即准备好接收无条件传送是假设外设始终处于准备好状态,即准备好接收主机送来的数据、或者准备好向主机发送数据。在这种情况主机送来的数据、或者准备好向主机发送数据。在这种情况下,下,CPU无需查询外设的工作状态,无
34、需查询外设的工作状态,CPU执行执行I/O指令就可指令就可以完成需要的以完成需要的I/O操作。操作。n在实际的计算机系统中,这种情况较为少见。例如,继电器在实际的计算机系统中,这种情况较为少见。例如,继电器状态的输入,就属于这种情况。状态的输入,就属于这种情况。302、条件传送、条件传送n许多情况下,外设的工作状许多情况下,外设的工作状态是很难事先知道的,比如态是很难事先知道的,比如什么时间按下键盘的键。为什么时间按下键盘的键。为了确保外设送给了确保外设送给CPU的数据的数据不丢失、或者不丢失、或者CPU送出的数送出的数据能被外备接收,需要据能被外备接收,需要CPU在程序中不停地、反复地查在程
35、序中不停地、反复地查询外设的状态,而且在查询询外设的状态,而且在查询期间不能做其它事情,否则期间不能做其它事情,否则容易造成数据丢失。这就是容易造成数据丢失。这就是程序查询方式。程序查询方式。313、程序查询方式的接口电路、程序查询方式的接口电路n接口电路的一般原理图如下:接口电路的一般原理图如下:l数据寄存器,双向,接收数据寄存器,双向,接收CPU数据送往外设;或接数据送往外设;或接收外设数据送往收外设数据送往CPU。l命令寄存器命令寄存器,单向,接收,单向,接收CPU送来的命令,并控制送来的命令,并控制完成读写或其它操作。完成读写或其它操作。l状态寄存器:存储反映外状态寄存器:存储反映外设
36、的工作状态,这个寄存设的工作状态,这个寄存器在程序查询方式中是必器在程序查询方式中是必须要设置的,它是程序进须要设置的,它是程序进行行I/O操作的判断依据操作的判断依据。nCPU并不直接访问外设,而是通过并不直接访问外设,而是通过以上三个寄存器实现外设访问的。以上三个寄存器实现外设访问的。32程序查询方式的接口电路(续)程序查询方式的接口电路(续)n给出一个具体的输入接口电路来介绍查询程序的步骤,设该给出一个具体的输入接口电路来介绍查询程序的步骤,设该电路具有电路具有4个端口地址。个端口地址。n程序查询方式的优点是控制简单,所用硬件较少;缺点是外程序查询方式的优点是控制简单,所用硬件较少;缺点
37、是外设和主机不能并行工作,系统效率很低。设和主机不能并行工作,系统效率很低。33四、程序中断方式四、程序中断方式程序查询方式通过不断地查询外设的状态,来等待外设工作程序查询方式通过不断地查询外设的状态,来等待外设工作的完成,以牺牲的完成,以牺牲CPU的效率,达到的效率,达到CPU与外设的同步。中与外设的同步。中断方式与此不同,中断是现代计算机有效地发挥效能和提高断方式与此不同,中断是现代计算机有效地发挥效能和提高效率的一个十分重要的功能。效率的一个十分重要的功能。341、中断的基本概念、中断的基本概念n所谓中断是指所谓中断是指CPU在执行程序的过程中,出现了某些突发事件,在执行程序的过程中,出
38、现了某些突发事件,CPU必须暂停现行程序的执行,转去处理突发事件,处理完该突必须暂停现行程序的执行,转去处理突发事件,处理完该突发事件后,发事件后,CPU又回到原来程序被打断的位置继续执行。这个过又回到原来程序被打断的位置继续执行。这个过程称为程称为中断中断,这种控制方式称为,这种控制方式称为中断控制方式中断控制方式。n现实中有很多中断的例子。现实中有很多中断的例子。n在程序中断方式中,某一外设的数据准备就绪后,就在程序中断方式中,某一外设的数据准备就绪后,就“主动主动”向向CPU发出中断请求信号,当发出中断请求信号,当CPU响应这个中断时,便暂停现行程响应这个中断时,便暂停现行程序的运行,自
39、动转移到该设备的中断服务程序,完成数据交换。序的运行,自动转移到该设备的中断服务程序,完成数据交换。当中断服务程序执行结束后,当中断服务程序执行结束后,CPU又回到原来的程序继续运行。又回到原来的程序继续运行。35中断的基本概念(续)中断的基本概念(续)图中,主程序只是在设备图中,主程序只是在设备A、B、C数据准备就绪时,才去处理数据准备就绪时,才去处理A、B、C的数据交换。可以看出,在速度较慢的外设准备自己的数据的数据交换。可以看出,在速度较慢的外设准备自己的数据时,时,CPU照常执行自己的主程序。在这个意义下,照常执行自己的主程序。在这个意义下,CPU和外设的和外设的操作是并行进行的。因此
40、,提高了计算机系统的效率。操作是并行进行的。因此,提高了计算机系统的效率。362、中断的实质与特点、中断的实质与特点n实质:程序切换。从程序的观点看,中断就是从现行程序到中断服实质:程序切换。从程序的观点看,中断就是从现行程序到中断服务程序的切换,而中间过程都是为这个切换服务的。务程序的切换,而中间过程都是为这个切换服务的。n切换的方法:一是切换的方法:一是保存断点保存断点。程序能够按顺序正确地执行,依靠。程序能够按顺序正确地执行,依靠的是程序状态字和程序计数器。发生中断时,它们的内容称为的是程序状态字和程序计数器。发生中断时,它们的内容称为断断点点,也就是已经执行完的最后一条指令的状态和将要
41、执行的下一,也就是已经执行完的最后一条指令的状态和将要执行的下一条指令的地址。执行完中断服务程序后,要返回原程序继续执行,条指令的地址。执行完中断服务程序后,要返回原程序继续执行,就要记住从哪个位置继续执行。二是就要记住从哪个位置继续执行。二是恢复断点恢复断点。在程序返回时,。在程序返回时,把先前保存的值(断点)再放回程序状态字和程序计数器,显然把先前保存的值(断点)再放回程序状态字和程序计数器,显然会接着原来的位置继续执行。会接着原来的位置继续执行。n切换时间:什么时间切换是重要的。中断的产生是随机的,可能切换时间:什么时间切换是重要的。中断的产生是随机的,可能是在指令执行的任何一点。为保证
42、程序执行的完整性,应在一条是在指令执行的任何一点。为保证程序执行的完整性,应在一条指令执行完、下一条指令开始执行之前进行切换。指令执行完、下一条指令开始执行之前进行切换。n特点:随机性,无法预料随机事件在什么时间发生。特点:随机性,无法预料随机事件在什么时间发生。373、中断的分类、中断的分类n根据中断请求的来源,中断分为内中断和外中断。根据中断请求的来源,中断分为内中断和外中断。n内中断内中断是指中断请求来自是指中断请求来自CPU内部的中断。如,运算溢出、内部的中断。如,运算溢出、除数为零引起的中断以及某些软中断都为内中断。除数为零引起的中断以及某些软中断都为内中断。n外中断外中断是指中断请
43、求来自是指中断请求来自CPU之外的中断。如,电源掉电、之外的中断。如,电源掉电、校验错等硬件故障引起的中断、由外设进行校验错等硬件故障引起的中断、由外设进行I/O操作引起的中操作引起的中断。断。n根据中断产生的软硬件,分为硬件中断和软中断根据中断产生的软硬件,分为硬件中断和软中断n硬件中断是指由硬件请求信号引发的中断。硬件中断是指由硬件请求信号引发的中断。n软中断是指由执行软中断指令引发的中断。软中断是指由执行软中断指令引发的中断。38中断的分类(续一)中断的分类(续一)n根据中断请求的紧急程度,分为可屏蔽中断和非屏蔽中断。根据中断请求的紧急程度,分为可屏蔽中断和非屏蔽中断。n可屏蔽中断可屏蔽
44、中断是指那些相对级别比较低,可以通过屏蔽技术进行禁是指那些相对级别比较低,可以通过屏蔽技术进行禁止或开放操作的中断,常用于一般设备的止或开放操作的中断,常用于一般设备的I/O操作。操作。n非屏蔽中断非屏蔽中断是指那些优先级别较高,必须立即响应,且不能通过是指那些优先级别较高,必须立即响应,且不能通过屏蔽技术进行禁止或开放操作的中断。常用于应急处理,如电源屏蔽技术进行禁止或开放操作的中断。常用于应急处理,如电源掉电等。(内中断均属于不可屏蔽中断)。掉电等。(内中断均属于不可屏蔽中断)。n根据获得服务程序入口地址的方法,分为向量中断和非向量中断根据获得服务程序入口地址的方法,分为向量中断和非向量中
45、断。n向量中断向量中断是是指由硬件提供中断服务程序入口地址的中断,中断事指由硬件提供中断服务程序入口地址的中断,中断事件在提出中断请求的同时,通过硬件向主机提供向量地址件在提出中断请求的同时,通过硬件向主机提供向量地址。n非向量中断非向量中断是是指由软件提供中断服务程序入口地址的中断,如先指由软件提供中断服务程序入口地址的中断,如先固定地提供一个查询程序的地址,再执行该程序查询找出中断源,固定地提供一个查询程序的地址,再执行该程序查询找出中断源,继而通过分支转移进入对应的中断服务程序。继而通过分支转移进入对应的中断服务程序。39中断的分类(续二)中断的分类(续二)404、中断系统的组成、中断系
46、统的组成n软件:首先是软件:首先是中断服务程序中断服务程序。实现中断所要求的功能在中断服务。实现中断所要求的功能在中断服务程序中完成,如数据的输入输出操作,要靠中断服务程序中的程序中完成,如数据的输入输出操作,要靠中断服务程序中的I/O指令来完成。其次是指令来完成。其次是中断向量表中断向量表。中断向量表是中断系统中。中断向量表是中断系统中的软硬件的界面,通过中断向量表实现由主程序到中断服务程序的软硬件的界面,通过中断向量表实现由主程序到中断服务程序的切换,而且为了赢得时间,切换过程全部由硬件完成。的切换,而且为了赢得时间,切换过程全部由硬件完成。n硬件:首先是硬件:首先是接口方面接口方面。中断
47、请求、信号传递、排队判优等由接。中断请求、信号传递、排队判优等由接口中的硬件完成,最后优先级最高的中断请求到达口中的硬件完成,最后优先级最高的中断请求到达CPU。其次。其次是是CPU方面方面,主要是中断响应逻辑。,主要是中断响应逻辑。CPU收到请求信号以后,收到请求信号以后,便开始一个称为便开始一个称为“中断响应周期中断响应周期”的时间段,在这个时间段中完的时间段,在这个时间段中完成到中断服务程序的切换。成到中断服务程序的切换。415、向量中断的全过程、向量中断的全过程向量中断是一种重要的中断方式,我们主要讨论向量中断。向量中断是一种重要的中断方式,我们主要讨论向量中断。通常,向量中断的过程划
48、分为五个阶段通常,向量中断的过程划分为五个阶段:中断请求中断请求 中断判优中断判优 中断响应中断响应 中断处理中断处理 中断返回中断返回下面将以向量中断为例来介绍中断的全过程。下面将以向量中断为例来介绍中断的全过程。42 中断请求与传递中断请求与传递n产生中断请求信号的第一个条件是产生中断请求信号的第一个条件是中断源有中断请求中断源有中断请求。外设工作。外设工作完成,等待和主机进行数据交换。例如,输入设备的数据已经准完成,等待和主机进行数据交换。例如,输入设备的数据已经准备好,等待主机取走数据;或者输出设备已经将数据寄存器的数备好,等待主机取走数据;或者输出设备已经将数据寄存器的数据取走,等待
49、主机送来新的数据。据取走,等待主机送来新的数据。n产生中断请求信号的第二个条件是产生中断请求信号的第二个条件是允许外设以中断方式工作允许外设以中断方式工作。在。在中断接口电路中有一个中断屏蔽触发器,它相当于一个开关。当中断接口电路中有一个中断屏蔽触发器,它相当于一个开关。当该触发器为该触发器为0时,表示开放中断,即可以发出中断请求信号;当该时,表示开放中断,即可以发出中断请求信号;当该触发器为触发器为1时,表示屏蔽中断,即中断请求信号不能发出。时,表示屏蔽中断,即中断请求信号不能发出。43中断请求与传送(续一)中断请求与传送(续一)中断请求信号必须传送到中断请求信号必须传送到CPU才才能得到响
50、应。有三种传递方式:能得到响应。有三种传递方式:l公共请求线:多个中断源公用一公共请求线:多个中断源公用一根请求线向根请求线向CPU提出中断请求。提出中断请求。l独立请求线:每个中断源有自己独立请求线:每个中断源有自己的中断请求线,将中断信号直接的中断请求线,将中断信号直接送往送往CPU。l二维结构:将中断请求线连接成二维结构:将中断请求线连接成二维结构,用多条线向二维结构,用多条线向CPU请求请求中断,每条线上有多个中断源。中断,每条线上有多个中断源。44 中断判优中断判优n一台一台计算机允许有多个中断源计算机允许有多个中断源。在中断接口电路中,记录中断事件。在中断接口电路中,记录中断事件的