1、计算机体系结构计算机体系结构2012.51.总线、中总线、中断与输入断与输入输出系统输出系统计算机体系结构计算机体系结构2012.52.第第 3 3 章章 总线、中断与输入输出系统总线、中断与输入输出系统 3.1 输入输出系统概述输入输出系统概述3.2 总线设计总线设计 3.3 中断系统中断系统 3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.53.输入输出系统包括输入输出设备、设备控制器及输入输出系统包括输入输出设备、设备控制器及与输入输出操作有关的软硬件。与输入输出操作有关的软硬件。输入输出系统的主要功能是对指定的外设进行输输入输出系统的主要功能是对指定的外设进行输入、输
2、出操作,同时也完成许多其他的管理和控制。入、输出操作,同时也完成许多其他的管理和控制。有的输入输出系统还能对要传送的信息进行格式变换,有的输入输出系统还能对要传送的信息进行格式变换,形成和产生有关输入输出操作是否完成或在执行过程形成和产生有关输入输出操作是否完成或在执行过程中是否有错的状态控制信息,经中断系统传送给操作中是否有错的状态控制信息,经中断系统传送给操作系统去分析和处理。系统去分析和处理。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.54.输入输出系统的特点输入输出系统的特点 输入输出系统涉及到机、光、电、磁、输入输出系统涉及到机、光、电、磁、声、自动
3、控制等多种学科。声、自动控制等多种学科。用户无需了解输入输出系统和输入输用户无需了解输入输出系统和输入输出设备的具体细节就能使用输入输出设备。出设备的具体细节就能使用输入输出设备。处理机的外部世界包括:本地和远程处理机的外部世界包括:本地和远程用户、系统操作员、操作控制台、输入输出用户、系统操作员、操作控制台、输入输出设备、辅助存储器、其它处理机、各种通信设备、辅助存储器、其它处理机、各种通信设备和虚拟现实系统等。设备和虚拟现实系统等。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.55.系统操作员处理机本地或远程用户实时输入输出输入输出设备虚拟现实系统其它处理机
4、本身出错处理程序请求3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.56.1、异步性、异步性 输入输出设备通常不使用统一的中央时钟,输入输出设备通常不使用统一的中央时钟,各个设备按照自己的时钟工作,但又要在某些时各个设备按照自己的时钟工作,但又要在某些时刻接受处理机的控制。刻接受处理机的控制。处理机与外围设备之间,外围设备与外围设处理机与外围设备之间,外围设备与外围设备之间能够并行工作。备之间能够并行工作。2、实时性、实时性 对于一般外部设备:可能丢失数据,或造成对于一般外部设备:可能丢失数据,或造成外围设备工作的错误。外围设备工作的错误。对于实时控制计算机系统,
5、如果处理机提供对于实时控制计算机系统,如果处理机提供的服务不及时,可能造成巨大的损失,甚至造成的服务不及时,可能造成巨大的损失,甚至造成人身伤害。人身伤害。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.57.对于处理机本身的硬件或软件错误:对于处理机本身的硬件或软件错误:如电源故障、数据校验错、页面失效、非法如电源故障、数据校验错、页面失效、非法指令、地址越界等,处理机须及时处理。指令、地址越界等,处理机须及时处理。对不同类型的设备,必须具有与设备对不同类型的设备,必须具有与设备相配合的多种工作方式。相配合的多种工作方式。3、与设备无关性、与设备无关性 独立于具
6、体设备的标准接口。例如,独立于具体设备的标准接口。例如,串行接口、并行接口、串行接口、并行接口、SCSI(Small Computer System Interface)接口等。)接口等。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.58.计算机系统的使用者,在需要更换外计算机系统的使用者,在需要更换外围设备时,各种不同型号,不同生产厂家的围设备时,各种不同型号,不同生产厂家的设备都可以直接通过标准接口与计算机系统设备都可以直接通过标准接口与计算机系统连接。连接。处理机采用统一的硬件和软件对品种处理机采用统一的硬件和软件对品种繁多的设备进行管理。繁多的设备进行管
7、理。某些计算机系统已经实现了即插即用某些计算机系统已经实现了即插即用技术。技术。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.59.输入输出系统的组织方式输入输出系统的组织方式 针对异步性,采用自治控制的方法。针对异步性,采用自治控制的方法。针对实时性,采用层次结构的方法。针对实时性,采用层次结构的方法。针对与设备无关性,采用分类处理方法。针对与设备无关性,采用分类处理方法。1、自治控制、自治控制 输入输出系统是一个独立于处理机输入输出系统是一个独立于处理机之外的自治系统。之外的自治系统。处理机与外围设备之间要有恰当的处理机与外围设备之间要有恰当的分工。分工。3
8、.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.510.2、层次结构、层次结构 最靠近处理机的是输入输出处理机、最靠近处理机的是输入输出处理机、输入输出通道等。输入输出通道等。中间层是标准接口。中间层是标准接口。标准接口通过设备控制器与输入输标准接口通过设备控制器与输入输出设备相连接。出设备相连接。设备控制器控制外围设备工作。设备控制器控制外围设备工作。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.511.3、分类处理、分类处理 为面向字符的设备(为面向字符的设备(character-oriented device);指工作速度比较低
9、);指工作速度比较低的机电类设备。例如,字符终端、打字的机电类设备。例如,字符终端、打字机等。机等。面向数据块的设备主要指工作速度面向数据块的设备主要指工作速度比较比较 高的外围设备;例如,磁盘、磁带、高的外围设备;例如,磁盘、磁带、光盘的辅助存储器,行式打印机等。光盘的辅助存储器,行式打印机等。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.512.输入输出系统的发展经历了输入输出系统的发展经历了 3 个阶段,对个阶段,对应于应于 3 种方式,即种方式,即程序控制输入输出程序控制输入输出(包括全包括全软的、程序查询状态驱动的、中断驱动的几软的、程序查询状态驱动的
10、、中断驱动的几种种)、直接存储器访问、直接存储器访问(DMA)和和I/O处理机方处理机方式。式。这这 3 种方式可以分别用在不同的计算机种方式可以分别用在不同的计算机系统上,也可以用在同一个计算机系统上作系统上,也可以用在同一个计算机系统上作为相互补充。为相互补充。3.1 输入输出系统概述输入输出系统概述计算机体系结构计算机体系结构2012.513.就允许信息传送的方向来说,总线可以有单向就允许信息传送的方向来说,总线可以有单向传输和双向传输两种。双向传输又有半双向和全双传输和双向传输两种。双向传输又有半双向和全双向的不同。前者虽可以沿相反的方向传送,但同一向的不同。前者虽可以沿相反的方向传送
11、,但同一时刻只能向其中的一个方向传送。后者允许同时在时刻只能向其中的一个方向传送。后者允许同时在两个方向传送。全双向的速度快,但造价高,结构两个方向传送。全双向的速度快,但造价高,结构复杂。复杂。总线按其用法可以分成专用的和非专用的。总线按其用法可以分成专用的和非专用的。3.2.1 总线的类型总线的类型 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.514.图图 3.1 所有部件之间用专用总线互连所有部件之间用专用总线互连 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.515.3.2.2 总线的控制方式总线的控制方式 当采用非专用总线时,由于可能发生多个设备或当
12、采用非专用总线时,由于可能发生多个设备或部件同时申请使用总线,就得有总线控制机构来按照部件同时申请使用总线,就得有总线控制机构来按照某种优先次序裁决,保证在同一时间内只能有一个高某种优先次序裁决,保证在同一时间内只能有一个高优先级的申请者取得对总线的使用权。优先级的申请者取得对总线的使用权。如果总线控制逻辑基本上集中放在一起,不论是如果总线控制逻辑基本上集中放在一起,不论是放在连接到总线的一个部件中,还是放在单独的硬件放在连接到总线的一个部件中,还是放在单独的硬件中,都称为集中式控制。而当总线控制逻辑分散于连中,都称为集中式控制。而当总线控制逻辑分散于连到总线的各个部件中时,就称为分布式总线控
13、制。到总线的各个部件中时,就称为分布式总线控制。这这里只讲集中式总线控制。里只讲集中式总线控制。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.516.(1)链式查询方式链式查询方式 链式查询方式的总线控制器使用三根链式查询方式的总线控制器使用三根控制线与所有部件和设备相连:控制线与所有部件和设备相连:总线请求(总线请求(BR):该线有效,表示至):该线有效,表示至少有一个部件或设备要求使用总线。少有一个部件或设备要求使用总线。总线忙(总线忙(BS):该线有效,表示总线):该线有效,表示总线正在被某部件或设备使用。正在被某部件或设备使用。总线批准(总线批准(BG):该线有效,表示
14、总):该线有效,表示总线控制器响应总线请求。线控制器响应总线请求。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.517.图图 3.2 集中式串行链接集中式串行链接 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.518.链式查询的优点是只用链式查询的优点是只用3根线就能按一根线就能按一定的优先次序来实现总线控制,并很容易定的优先次序来实现总线控制,并很容易扩充。缺点是对查询链的故障很敏感,如扩充。缺点是对查询链的故障很敏感,如果第果第i个部件中的查询链电路有故障,那么个部件中的查询链电路有故障,那么第第i个以后的部件都不能工作。另外,因为个以后的部件都不能工作。另
15、外,因为查询的优先级是固定的,所以当优先级较查询的优先级是固定的,所以当优先级较高的部件出现频繁的总线请求时,优先级高的部件出现频繁的总线请求时,优先级较低的部件就可能会难以得到响应。较低的部件就可能会难以得到响应。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.519.(2)计数器定时查询方式计数器定时查询方式 计数定时查询方式的总线上的每个计数定时查询方式的总线上的每个部件可以通过公共的部件可以通过公共的BR 线发出请求,总线发出请求,总线控制器收到请求之后,在线控制器收到请求之后,在BS为为“0”的情的情况下,况下,让计数器开始计数,定时地查询各让计数器开始计数,定时地查询
16、各个部件以确定是谁发出的请求。当查询线个部件以确定是谁发出的请求。当查询线上的计数值与发出请求的部件号一致时,上的计数值与发出请求的部件号一致时,该部件就使该部件就使BS线置线置“1”,获得了总线使用,获得了总线使用权,并中止计数查询,直至该部件完成数权,并中止计数查询,直至该部件完成数据传送之后,撤消据传送之后,撤消BS信号。信号。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.520.图图 3.3 集中式定时查询集中式定时查询 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.521.这种计数可以从这种计数可以从“0”开始,也可以从中开始,也可以从中止点开始。如果
17、从止点开始。如果从“0”开始,各部件的优开始,各部件的优先次序和链式查询方式相同,优先级的次先次序和链式查询方式相同,优先级的次序是固定的。如果从中止点开始,即为循序是固定的。如果从中止点开始,即为循环优先级,各个部件使用总线的级别将相环优先级,各个部件使用总线的级别将相等。计数器的初始值还可以由程序来设置,等。计数器的初始值还可以由程序来设置,这就可以方便地改变优先次序,增加系统这就可以方便地改变优先次序,增加系统的灵活性。定时查询方式的控制线数较多,的灵活性。定时查询方式的控制线数较多,对于对于n个部件,共需个部件,共需2 根线。根线。n2log3.2 总线设计总线设计计算机体系结构计算机
18、体系结构2012.522.(3)独立请求方式独立请求方式 在独立请求方式中,在独立请求方式中,每一个共享总线的部每一个共享总线的部件均有一对控制线:总线请求件均有一对控制线:总线请求BRi和总线批准和总线批准BGi。当某个部件请求使用总线时,便发出当某个部件请求使用总线时,便发出BRi,总线,总线控制器中有一排队电路,根据一定的优先次序决控制器中有一排队电路,根据一定的优先次序决定首先响应哪个部件的请求定首先响应哪个部件的请求BRi,然后给该部件,然后给该部件送回批准信号送回批准信号BGi。独立请求方式的优点是响应时间快,然而这独立请求方式的优点是响应时间快,然而这是以增加控制线数和硬件电路为
19、代价的。对于是以增加控制线数和硬件电路为代价的。对于n个部件,控制线的数目将达个部件,控制线的数目将达2n1根。根。此方式对此方式对优先次序的控制也是相当灵活的,它可以预先固优先次序的控制也是相当灵活的,它可以预先固定,也可以通过程序来改变优先次序。定,也可以通过程序来改变优先次序。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.523.图图 3.4 集中式独立请求集中式独立请求 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.524.分布仲裁方式不需要中央仲裁器,即总分布仲裁方式不需要中央仲裁器,即总线控制逻辑分散在连接于总线上的各个部线控制逻辑分散在连接于总线上
20、的各个部件或设备中。连接到总线上的主方可以启件或设备中。连接到总线上的主方可以启动一个总线周期,而从方只能响应主方的动一个总线周期,而从方只能响应主方的请求。每次总线操作,只能有一个主方占请求。每次总线操作,只能有一个主方占用总线控制权,但同一时间里可以有一个用总线控制权,但同一时间里可以有一个或多个从方。对多个主设备提出的占用总或多个从方。对多个主设备提出的占用总线请求,一般采用优先级或公平策略进行线请求,一般采用优先级或公平策略进行仲裁。仲裁。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.525.3.2.3 总线的通信技术总线的通信技术 1.同步通信同步通信 同步通信时,两
21、个部件之间的信息传送是通过同步通信时,两个部件之间的信息传送是通过定宽、定距的系统时标进行同步的。这种方式的信定宽、定距的系统时标进行同步的。这种方式的信息传送速率高,受总线的长度影响小,但会因时钟息传送速率高,受总线的长度影响小,但会因时钟在总线上的时滞而造成同步误差,且时钟线上的干在总线上的时滞而造成同步误差,且时钟线上的干扰信号易引起误同步。扰信号易引起误同步。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.526.为了提高可靠性,要求目的部件对数据是否已为了提高可靠性,要求目的部件对数据是否已被接收以及是否正确均能给以回答。如果同步时间被接收以及是否正确均能给以回答。如果
22、同步时间片的宽度宽到能为每个字的传送作出回答,则它必片的宽度宽到能为每个字的传送作出回答,则它必须按接到总线上的最低速的部件来考虑,这就会使须按接到总线上的最低速的部件来考虑,这就会使同步通信的数据传送速率低于后面讲的异步通信。同步通信的数据传送速率低于后面讲的异步通信。一种解决办法是在正常时,目的部件不作回答,源一种解决办法是在正常时,目的部件不作回答,源部件也不等待回答信号,但如果发生错误,则目的部件也不等待回答信号,但如果发生错误,则目的部件将在同步时间片过去之后,发回源部件一个出部件将在同步时间片过去之后,发回源部件一个出错信号,这样,就不会降低正常时总线的传送速率。错信号,这样,就不
23、会降低正常时总线的传送速率。但是这种办法中,源部件必须设置较大容量的缓冲但是这种办法中,源部件必须设置较大容量的缓冲器来保留已传送,但未经证实和回答过的所有数据,器来保留已传送,但未经证实和回答过的所有数据,以备重发之用。以备重发之用。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.527.2.异步通信异步通信 由于由于I/O总线一般是为具有不同速度的许多总线一般是为具有不同速度的许多I/O设备所共享,因此宜于采用异步通信。异步通信又设备所共享,因此宜于采用异步通信。异步通信又可分为单向控制和双向可分为单向控制和双向(请求请求/回答回答)控制两种。控制两种。单向控制指的是通信过程
24、只由目的或源部件中单向控制指的是通信过程只由目的或源部件中的一个控制。而双向控制是由源和目的双方共同控的一个控制。而双向控制是由源和目的双方共同控制。单向控制又有源控制和目的控制两种。制。单向控制又有源控制和目的控制两种。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.528.图图 3.5 异步单向控制通信异步单向控制通信 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.529.图图 3.6 源控式异步双向控制通信源控式异步双向控制通信 3.2 总线设计总线设计计算机体系结构计算机体系结构2012.530.3.2.4 数据宽度与总线线数数据宽度与总线线数 1.数据宽
25、度数据宽度 我们这里所讲的我们这里所讲的“数据宽度数据宽度”指的是指的是I/O设备取设备取得得I/O总线使用权后所传送数据的总量。传送完后就总线使用权后所传送数据的总量。传送完后就释放总线,重新开始分配总线。所以,它不同于前面释放总线,重新开始分配总线。所以,它不同于前面讲过的数据通路宽度。数据通路宽度指的是数据传送讲过的数据通路宽度。数据通路宽度指的是数据传送的物理宽度,即一个时钟周期所传送的信息量,它直的物理宽度,即一个时钟周期所传送的信息量,它直接取决于数据总线的线数。二次分配总线之间所传送接取决于数据总线的线数。二次分配总线之间所传送的数据宽度可能要经许多个时钟周期的分次传送来完的数据
26、宽度可能要经许多个时钟周期的分次传送来完成。采用何种数据宽度与总线上各设备的工作特点、成。采用何种数据宽度与总线上各设备的工作特点、所采用的总线控制方式和通信技术有关。数据宽度的所采用的总线控制方式和通信技术有关。数据宽度的种类有单字种类有单字(或单字节或单字节)、定长块、可变长块、单字加、定长块、可变长块、单字加定长块和单字加可变长块等。定长块和单字加可变长块等。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.531.2.总线的线数总线的线数 总线需要有发送电路、接收电路、传输导线或总线需要有发送电路、接收电路、传输导线或电缆、转接插头和电源等,这部分比起逻辑线路的电缆、转接插
27、头和电源等,这部分比起逻辑线路的成本高得多,而且转接器往往占系统物理空间的相成本高得多,而且转接器往往占系统物理空间的相当部分,是降低系统可靠性的主要部分。总线的线当部分,是降低系统可靠性的主要部分。总线的线数越多,成本越高、干扰越大、可靠性越低、占用数越多,成本越高、干扰越大、可靠性越低、占用的空间也越大,当然传送速度和流量也越高。的空间也越大,当然传送速度和流量也越高。此外,此外,总线的长度越长,成本越高,干扰越大,波形畸变总线的长度越长,成本越高,干扰越大,波形畸变越严重,可靠性越低。为此,越是长的总线,其线越严重,可靠性越低。为此,越是长的总线,其线数就应尽可能减少。数据总线的宽度有一
28、位、一个数就应尽可能减少。数据总线的宽度有一位、一个字节或一个全字等等。字节或一个全字等等。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.532.在满足性能要求以及所用通信类型和在满足性能要求以及所用通信类型和速率适配的情况下,应尽量减少总线的线速率适配的情况下,应尽量减少总线的线数。通过采用线的组合、并数。通过采用线的组合、并/串串串串/并转换并转换和编码可以减少总线的线数,但这通常会和编码可以减少总线的线数,但这通常会降低总线的流量。降低总线的流量。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.533.(1)总线宽度)总线宽度总线宽度指的是总线的线数,它决定
29、了总线所占的总线宽度指的是总线的线数,它决定了总线所占的物理空间和成本。对总线宽度最直接的影响是地址线和数物理空间和成本。对总线宽度最直接的影响是地址线和数据线的数量。主存空间和据线的数量。主存空间和I/O空间的扩充使地址线数量的空间的扩充使地址线数量的增加,并行传输要求有足够的数据线。如增加,并行传输要求有足够的数据线。如64位数据线和位数据线和64位地址线在高档微机中已较为普遍,在大型高性能计算机位地址线在高档微机中已较为普遍,在大型高性能计算机中数据线和地址线更多。中数据线和地址线更多。例例1:使用:使用ISA总线(总线(20位地址线)允许寻址的主存位地址线)允许寻址的主存空间有多大?使
30、用空间有多大?使用PCI总线(总线(32位地址线)允许寻址的主位地址线)允许寻址的主存空间又有多大?存空间又有多大?解:解:ISA总线的主存空间总线的主存空间=220个主存单元个主存单元=1M个主个主存单元存单元PCI总线的主存空间总线的主存空间=232个主存单元个主存单元=4G个主存单元个主存单元3.2.5 总线的性能指标总线的性能指标3.2 总线设计总线设计计算机体系结构计算机体系结构2012.534.(2)总线带宽)总线带宽总线带宽定义为总线的最大数据传输速率,即每秒总线带宽定义为总线的最大数据传输速率,即每秒传输的字节数。在同步通信中,总线的带宽与总线时钟密传输的字节数。在同步通信中,
31、总线的带宽与总线时钟密不可分,总线时钟频率的高低决定了总线带宽的大小。不可分,总线时钟频率的高低决定了总线带宽的大小。总线带宽总线带宽=总线宽度总线宽度总线频率总线频率总线的实际带宽还会受到总线长度(总线延迟)、总线的实际带宽还会受到总线长度(总线延迟)、总线负载、总线收发器性能等多方面因素的影响。总线负载、总线收发器性能等多方面因素的影响。例例2:PCI总线的时钟频率为总线的时钟频率为33MHz/66MHz,当该,当该总线进行总线进行32/64位数据传送时,总线带宽各是多少?位数据传送时,总线带宽各是多少?解:假设一个总线时钟周期解:假设一个总线时钟周期T完成一个数据的传送,时钟完成一个数据
32、的传送,时钟频率为频率为f,数据位为,数据位为n,总线带宽用,总线带宽用Dr表示,则表示,则Dr=。假设假设f=33MHz=33106/s,n=32位,根据定义可得位,根据定义可得Dr=433106/s=132MB/sTn88fn3.2 总线设计总线设计计算机体系结构计算机体系结构2012.535.例例3:假设某系统总线在一个总线周期中:假设某系统总线在一个总线周期中并行传输并行传输4字节信息,一个总线周期占用字节信息,一个总线周期占用2个时个时钟周期,总线时钟频率为钟周期,总线时钟频率为10MHz,求总线带宽。,求总线带宽。解:因为一个总线周期占用解:因为一个总线周期占用2个时钟周期,个时钟
33、周期,完成一个完成一个32位数据的传送。总线时钟频率位数据的传送。总线时钟频率f=10MHz,时钟周期,时钟周期T=1/f=0.1s,总线周期,总线周期=2T=0.2s。一个总线周期中并行传输。一个总线周期中并行传输4字节信字节信息,则总线带宽是息,则总线带宽是40.2=20MB/s。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.536.(3)总线负载)总线负载总线负载是指连接在总线上的最大设备数总线负载是指连接在总线上的最大设备数量。大多数总线的负载能力是有限的。量。大多数总线的负载能力是有限的。(4)总线复用)总线复用总线分时复用是指在不同时段利用总线上总线分时复用是指在不
34、同时段利用总线上同一个信号线传送不同信号,例如地址总线和同一个信号线传送不同信号,例如地址总线和数据总线共用一组信号线。采用这种方式的目数据总线共用一组信号线。采用这种方式的目的是减少总线数量,提高总线的利用率。的是减少总线数量,提高总线的利用率。(5)总线猝发传输)总线猝发传输猝发式数据传输是一种总线传输方式,即猝发式数据传输是一种总线传输方式,即在一个总线周期中可以传输存储地址连续的多在一个总线周期中可以传输存储地址连续的多个数据。个数据。3.2 总线设计总线设计计算机体系结构计算机体系结构2012.537.3.3.1 中断的分类和分级中断的分类和分级 引起中断的各种事件称为中断源。中断源
35、向中断引起中断的各种事件称为中断源。中断源向中断系统发出请求中断的申请,称为中断请求。同时可能系统发出请求中断的申请,称为中断请求。同时可能有多个中断请求,这时中断系统需要按事先确定的中有多个中断请求,这时中断系统需要按事先确定的中断响应优先次序对优先级高的中断请求予以响应。所断响应优先次序对优先级高的中断请求予以响应。所谓中断响应就是允许其中断谓中断响应就是允许其中断CPU现行程序的运行,转现行程序的运行,转去对该请求进行预处理,包括保存好断点现场,调出去对该请求进行预处理,包括保存好断点现场,调出有关处理该中断的中断处理程序,准备运行。这部分有关处理该中断的中断处理程序,准备运行。这部分工
36、作在大多数机器上都是采用交换新旧程序状态字工作在大多数机器上都是采用交换新旧程序状态字PSW的办法实现的。的办法实现的。当然为了某种需要,中断系统当然为了某种需要,中断系统也可以对中断请求进行屏蔽,使之暂时得不到响应。也可以对中断请求进行屏蔽,使之暂时得不到响应。3.3 中断系统中断系统计算机体系结构计算机体系结构2012.538.为处理一个中断请求,必须调出相应的中断处理为处理一个中断请求,必须调出相应的中断处理程序。如果中断源比较少时,通过中断系统硬件就可程序。如果中断源比较少时,通过中断系统硬件就可以比较方便地对每个中断源直接形成相应的中断处理以比较方便地对每个中断源直接形成相应的中断处
37、理程序入口,进入相应的中断处理程序。但对中、大型程序入口,进入相应的中断处理程序。但对中、大型多用途机器,中断源一般可多达数十至数百个。如果多用途机器,中断源一般可多达数十至数百个。如果为每个中断源单独形成入口,不仅硬件难以实现,代为每个中断源单独形成入口,不仅硬件难以实现,代价也很大,就是在中断处理上也没有这种必要。因为价也很大,就是在中断处理上也没有这种必要。因为不少中断源的性质比较接近,可以将它们分别归成几不少中断源的性质比较接近,可以将它们分别归成几类,对每一类给定一个中断处理程序入口,再由软件类,对每一类给定一个中断处理程序入口,再由软件转入对相应的中断源进行处理,这样可以大大简化中
38、转入对相应的中断源进行处理,这样可以大大简化中断处理程序入口形成硬件。断处理程序入口形成硬件。3.3 中断系统中断系统计算机体系结构计算机体系结构2012.539.3.3.2 中断系统的软硬件功能分配中断系统的软硬件功能分配 中断系统的功能包括中断请求的保存和清除、中断系统的功能包括中断请求的保存和清除、优先级的确定、中断断点及现场的保存、对中断请优先级的确定、中断断点及现场的保存、对中断请求的分析和处理以及中断返回等,这些全是由中断求的分析和处理以及中断返回等,这些全是由中断响应硬件和中断处理程序共同完成的。因此,中断响应硬件和中断处理程序共同完成的。因此,中断系统的软、硬件功能分配实质上就
39、是中断处理程序系统的软、硬件功能分配实质上就是中断处理程序软件和中断响应硬件的功能分配。软件和中断响应硬件的功能分配。3.3 中断系统中断系统计算机体系结构计算机体系结构2012.540.中断现场包括软件状态中断现场包括软件状态(如作业名称和级别,上、如作业名称和级别,上、下界值,各种软件状态和标志等下界值,各种软件状态和标志等)和硬件状态和硬件状态(如现行如现行指令地址,条件码等状态信息,各种控制寄存器及指令地址,条件码等状态信息,各种控制寄存器及通用寄存器内容通用寄存器内容)。通常采取把分散于。通常采取把分散于CPU各部分的各部分的硬件状态集合成程序状态字,然后由中断响应硬件硬件状态集合成
40、程序状态字,然后由中断响应硬件通过将程序状态字通过将程序状态字(处理器状态字、换道区处理器状态字、换道区)存到主存存到主存指定单元或区域的方式来完成保存。接着,再把新指定单元或区域的方式来完成保存。接着,再把新的程序或进程的程序状态字的程序或进程的程序状态字(处理器状态字、换道区处理器状态字、换道区)从主存另一指定单元或区域把内容传送到有关寄存从主存另一指定单元或区域把内容传送到有关寄存器和计数器中,建立起运行新的程序或进程的环境。器和计数器中,建立起运行新的程序或进程的环境。硬件状态是全经中断响应硬件保存,还是部分经它,硬件状态是全经中断响应硬件保存,还是部分经它,部分经中断处理程序保存,要
41、视具体机器的规模和部分经中断处理程序保存,要视具体机器的规模和使用场合而作不同的选择。使用场合而作不同的选择。3.3 中断系统中断系统计算机体系结构计算机体系结构2012.541.3.4.1 工作原理工作原理 把对外围设备的管理工作从把对外围设备的管理工作从CPU分分离出来。离出来。从从IBM 360系列机开始,普遍采用系列机开始,普遍采用通道处理机技术。通道处理机技术。3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.542.处理机与外部设备的连接方式处理机与外部设备的连接方式(1)(1)直接连接直接连接(2)(2)通道处理机通道处理机(3)(3)输入输出处理机输入输出处理机
42、 处理机处理机设备设备设备设备设备设备处理机处理机设备设备通道通道设备设备通道通道设备设备设备设备3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.543.字节多字节多路通道路通道通道总线通道总线CPU设设 备备控制器控制器设设 备备控制器控制器设备设备设备设备设备设备选择选择通道通道通道总线通道总线主存主存磁盘磁盘控制器控制器磁表面磁表面控制器控制器磁盘磁盘磁盘磁盘磁带磁带数组多数组多路通道路通道通道总线通道总线内部总线内部总线磁盘磁盘控制器控制器磁带磁带控制器控制器磁盘磁盘磁盘磁盘磁带磁带三种类型的通道与三种类型的通道与 CPU、设备控制器和外围设备的连接关系、设备控制器和
43、外围设备的连接关系3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.544.通道的作用和功能通道的作用和功能1、三种基本输入输出方式存在的问题:、三种基本输入输出方式存在的问题:(1)CPU的输入输出负担很重,不能专心的输入输出负担很重,不能专心于用户程序的计算工作。于用户程序的计算工作。低速外部设备,每传送每个字符都由低速外部设备,每传送每个字符都由CPU执行一段程序来完成。执行一段程序来完成。高速外围设备的初始化、前处理和后处高速外围设备的初始化、前处理和后处理等工作需要理等工作需要CPU来完成。来完成。(2)大型机中的外围设备台数很多,但)大型机中的外围设备台数很多,但一
44、般并不同时工作。让一般并不同时工作。让DMA控制器能被多台控制器能被多台设备共享,提高硬件的利用率。设备共享,提高硬件的利用率。3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.545.2、通道的主要功能:、通道的主要功能:接受接受CPU发来的指令,选择一台指定的外发来的指令,选择一台指定的外围设备与通道相连接。围设备与通道相连接。执行执行CPU为通道组织的通道程序。为通道组织的通道程序。管理外围设备的有关地址。管理外围设备的有关地址。管理主存缓冲区的地址。管理主存缓冲区的地址。控制外围设备与主存缓冲区间数据交换的个控制外围设备与主存缓冲区间数据交换的个数。数。指定传送工作结束
45、时要进行的操作。指定传送工作结束时要进行的操作。检查外围设备的工作状态,是正常或故障。检查外围设备的工作状态,是正常或故障。在数据传输过程中完成必要的格式的变换。在数据传输过程中完成必要的格式的变换。3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.546.图图 3.10 通道处理机输入输出的主要过程通道处理机输入输出的主要过程3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.547.通道完成一次数据输入输出的过程需三步:通道完成一次数据输入输出的过程需三步:(1)在用户程序中使用访管指令进入管理程在用户程序中使用访管指令进入管理程序,由序,由CPU通过管理程序
46、组织一个通道程序,通过管理程序组织一个通道程序,并启动通道。并启动通道。(2)通道处理机执行通道程序,完成指定的通道处理机执行通道程序,完成指定的数据输入输出工作。数据输入输出工作。(3)通道程序结束后第二次调用管理程序对通道程序结束后第二次调用管理程序对输入输出请求进行处理。输入输出请求进行处理。每完成一次输入输出工作,每完成一次输入输出工作,CPU只需只需要两次调用管理程序,大大减少了对用户程要两次调用管理程序,大大减少了对用户程序的打扰。序的打扰。3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.548.图图 3.11 通道处理机输入输出主要过程的时间关系示意图通道处理机
47、输入输出主要过程的时间关系示意图 3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.549.访管入口OC 设备号OC交换长度OC主存起址通道程序置通道地址字启动I/O通道程序断开通道指令入 口返 回I/O中断响应I/O中断返回I/O中断请求3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.550.图图 3.12“启动启动I/O”指令流程指令流程(注:注:这里的结束,这里的结束,表示释放通道表示释放通道)3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.551.通道分为三种类型:字节多路通道、选通道分为三种类型:字节多路通道、选择通道和数组多路通道
48、。择通道和数组多路通道。(1)字节多路通道字节多路通道 字节多路通道是一种简单的共享通道,字节多路通道是一种简单的共享通道,用于连接与管理多台低速设备,以字节交叉用于连接与管理多台低速设备,以字节交叉方式传送信息。方式传送信息。字节多路通道包含有多个子通道,每个字节多路通道包含有多个子通道,每个子通道连接一个设备控制器。子通道连接一个设备控制器。3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.552.通道不间断地、轮流地启动每个设备通道不间断地、轮流地启动每个设备控制器,当通道为一个设备传送完一个字节控制器,当通道为一个设备传送完一个字节后,就转去为另一个设备服务。当通道为某
49、后,就转去为另一个设备服务。当通道为某一设备的传送时,其它设备可以并行地工作,一设备的传送时,其它设备可以并行地工作,准备需要传送的数据字节或处理收到的数据准备需要传送的数据字节或处理收到的数据字节,以准备接收新的数据字节。这种轮流字节,以准备接收新的数据字节。这种轮流服务是建立在主机的速度比外设的速度高得服务是建立在主机的速度比外设的速度高得多的基础之上,它可以提高系统的工作效率。多的基础之上,它可以提高系统的工作效率。A1A1A2A2B2B2B1B1C1C1C2C2通道通道A1A1A2A2B1B1B2B2C1C2C1C23.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.55
50、3.字节缓冲状态/控制固定地址子通道1子通道2子通道3数据缓冲通道控制字节多路通道至主存储器字节多路通道的结构3.4 通道处理机通道处理机计算机体系结构计算机体系结构2012.554.(2)选择通道选择通道 选择通道又称高速通道,在物理上它选择通道又称高速通道,在物理上它也可以连接多个设备,但这些设备不能同也可以连接多个设备,但这些设备不能同时工作,在一段时间内通道只能选择一台时工作,在一段时间内通道只能选择一台设备进行数据传送,此时该设备能独占整设备进行数据传送,此时该设备能独占整个通道。因此,选择通道一次只能执行一个通道。因此,选择通道一次只能执行一个通道程序,只有当它与主存交换完信息个通