《计算机组成原理:8-4 输入输出系统》由会员分享,可在线阅读,更多相关《计算机组成原理:8-4 输入输出系统(28页珍藏版)》请在金锄头文库上搜索。
1、复习思考题231.中断隐指令属于指令系统,所以用户可以使用它。错2.CPU响应中断的时刻是执行完每条指令时。3.在中断服务程序中,保护和恢复现场之前,需要关中断。4.在80X86中断系统中,中断源给出的向量地址是中断服务程序的入口地址。(错)5.中断响应次序是由硬件决定的,无法改变。(对)6.CPU响应DMA的时刻是每个机器周期结束时。7.当中断源发出中断请求后,若CPU为开中断,则在当前指令执行完毕后,CPU将会响应中断。( 错)由于中断屏蔽,中断源发出请求,CPU不一定可以接收到第8章 输入输出系统8.1 主机与外设的连接8.2 程序查询方式及其接口8.3 中断系统和程序中断方式8.4 D
2、MA方式及其接口8.5 通道控制方式8.6 总线技术8.4.3 DMA传送方法与传送过程nDMA传送方法传送方法n停止停止CPU访问内存(成组传送访问内存(成组传送)nDMA传传输输时时,CPU脱脱离离总总线线,停停止止访访问问主主存存,直直到到DMA传送一块数据结束。传送一块数据结束。n特点:特点:n控制简单,适用于高速外设成组传送数据。控制简单,适用于高速外设成组传送数据。n在在DMA控制器访内阶段,内存的效能没有充分发挥,控制器访内阶段,内存的效能没有充分发挥,相当一部分内存工作周期是空闲的。相当一部分内存工作周期是空闲的。DMA不工作不工作DMA不工作不工作CPU控制并控制并 使用主存
3、使用主存DMA控制并控制并 使用主存使用主存主存工作时间主存工作时间tDMA工作工作DMA传送方法n存储器分时法n每每个个存存储储周周期期分分成成两两个个时时间间片片,一一个个给给CPU,一一个个给给DMA,这这样样在在每每个个存存储储周周期期内内,CPU和和DMA都都可可访访问问存储器。存储器。n特点特点nDMA不需要总线使用权的申请和释放,不需要总线使用权的申请和释放,传送效率很高,传送效率很高,但控制复杂。但控制复杂。n由于大多数外设的速度都不能与由于大多数外设的速度都不能与CPU 相匹配,所以供相匹配,所以供DMA使用的时间片可能成为空操作,将会造成一些不必使用的时间片可能成为空操作,
4、将会造成一些不必要的浪费。要的浪费。CPU控制并控制并使用主存使用主存DMA控制并控制并 使用主存使用主存主存工作时间主存工作时间tDMA传送方法n周期挪用法n是前两种方法的折衷是前两种方法的折衷n当当I/O设备没有设备没有DMA请求时,请求时,CPU按程序要求访问内存按程序要求访问内存n一旦一旦I/O设备有设备有DMA请求,则由请求,则由I/O设备挪用一个或几个设备挪用一个或几个内存周期来访问主存。内存周期来访问主存。CPU控制并控制并 使用主存使用主存DMA控制并使控制并使用主存用主存主存工作时间主存工作时间tDMA传送方法n周期挪用法n每次每次DMA传送完一个数据就释放总线,使在传送完一
5、个数据就释放总线,使在I/O设备准设备准备下一数据时,备下一数据时,CPU能插空访问主存;能插空访问主存;n每次每次DMA访存都要申请总线控制权和释放总线,增加访存都要申请总线控制权和释放总线,增加了传输开销了传输开销n它既实现了它既实现了I/O传送、又较好地发挥了内存和传送、又较好地发挥了内存和CPU的效的效率,是一种广泛采用的方法。率,是一种广泛采用的方法。CPU控制并控制并 使用主存使用主存DMA控制并使控制并使用主存用主存主存工作时间主存工作时间tDMA数据传送过程n一次DMA数据块传送过程可分为三个阶段n预处理阶段预处理阶段n正式数据传送阶段正式数据传送阶段n传送后处理阶段传送后处理
6、阶段 DMA请求请求 DMA响应响应 发送内存地址发送内存地址 传送一个字数据传送一个字数据 中断申请中断申请修改修改 地址指针地址指针 字计数器字计数器检测传送检测传送 是否结束?是否结束?N 结束处理结束处理8.5 通道控制方式n前面介绍的I/O方式存在的问题nCPU对每种方式都要参与工作对每种方式都要参与工作n每个外设都要带有自己的接口控制部件每个外设都要带有自己的接口控制部件n在在DMA方式下,方式下,CPU仍然摆脱不了管理和控制外设的仍然摆脱不了管理和控制外设的沉重负担,难以充分发挥高速运算的能力沉重负担,难以充分发挥高速运算的能力n通道方式n将控制将控制I/O操作和信息传送的功能从
7、操作和信息传送的功能从CPU中独立出来,中独立出来,n代替代替CPU管理和调度外设与主机的信息交换,从而进管理和调度外设与主机的信息交换,从而进一步提高了一步提高了CPU的效率的效率通道方式与DMA方式的区别n实现方式不同nDMA控制器是通过专门设计的硬件控制逻辑来实现数控制器是通过专门设计的硬件控制逻辑来实现数据传送的控制;据传送的控制;n通道则是一个具有特殊功能的通道则是一个具有特殊功能的处理器处理器,它,它具有自己的具有自己的指令和程序,指令和程序,通过执行通道程序来实现对数据传送的通过执行通道程序来实现对数据传送的控制,故通道具有更强的独立处理数据控制,故通道具有更强的独立处理数据I/
8、O的功能。的功能。n连接的设备不同nDMA控制器通常只能控制一台或少数几台同类设备;控制器通常只能控制一台或少数几台同类设备;n而一个通道则可同时控制许多台同类或不同类的设备而一个通道则可同时控制许多台同类或不同类的设备具有通道的计算机系统结构n 总线类型n存储总线存储总线n承担通道与内存、承担通道与内存、CPU与内存之间的与内存之间的数据传输任务数据传输任务nI/O总线总线n承担外设与通道之承担外设与通道之间的数据传送任务间的数据传送任务n这两类总线可分别按照各自的时序同时进行工作具有通道的计算机系统结构n 逻辑结构CPU、内存、内存 通通 道道设备控制器设备控制器 外外 设设存储总线存储总
9、线I/O总线总线标准接口或专用接口标准接口或专用接口通道的类型1. 字节多路通道n用于连接多台用于连接多台慢速慢速(20KB/s) 外设,采用交外设,采用交叉方式传送数据,叉方式传送数据,传送基本单位是传送基本单位是字节字节。n外设对一个数据的传送分为外设对一个数据的传送分为n数据准备时间(数据准备时间(ms级)级)n数据传送时间(数据传送时间(s级)级)通道工作时间通道工作时间 n字节多路通道的传输率字节多路通道的传输率= =各连接外设传输率之和各连接外设传输率之和B1B2BnA1A2AmC1C2CpA1B1C1A2B2C2 通通 道道分时使用通道,轮流传送数据,实现多分时使用通道,轮流传送
10、数据,实现多台台I/O设备间的并行,以提高通道利用率设备间的并行,以提高通道利用率字节流字节流通道的类型2. 选择通道n用于连接多台用于连接多台高速高速外设,采用成组方式传送外设,采用成组方式传送数据,数据,传送基本单位是传送基本单位是数据块数据块。n某个设备一旦被选中便独占通道,直到传送完毕才某个设备一旦被选中便独占通道,直到传送完毕才释放通道,所以传输速率高。释放通道,所以传输速率高。n选择通道的传输率=各连接外设传输率中的最大值B1B2BnA1A2AmC1C2CpA1A2C1C2B1B2 通通 道道通道对各台外设串行服务通道对各台外设串行服务通道的类型3. 数组多路通道n用于连接多台用于
11、连接多台高速高速外设,采用成组方式传送数据,外设,采用成组方式传送数据,是选择通道的一种改进。是选择通道的一种改进。传送基本单位是传送基本单位是数据块数据块。n当某设备进行数据传送时,通道只为该设备服务;当某设备进行数据传送时,通道只为该设备服务;当设备正在准备下一个数据时,通道为其他设备服当设备正在准备下一个数据时,通道为其他设备服务;所以传输速率高、利用率高。务;所以传输速率高、利用率高。n选择通道的传输率=各连接外设传输率中的最大值B1B2BnA1A2AmC1C2CpA1,A2Ak,B1,B2Bk,C1,C2Ck,Ak+1,Ak+2A2k,Bk+1,Bk+2B2k 通通 道道通道对各台外
12、设所传送的信息分组串行服务通道对各台外设所传送的信息分组串行服务8.5.4通道工作过程n通道完成一次数据传输的过程分三步:n在用户程序中使用在用户程序中使用访管指令访管指令进入进入管理程序管理程序,由,由CPU通过程序组织通过程序组织一个一个通道程序通道程序,并启动通道。,并启动通道。n通道执行通道执行CPU为它组织的为它组织的通道程序通道程序,完成指定的数据,完成指定的数据I/O工作。工作。n通道程序通道程序结束后,它向结束后,它向CPU发中断请求,发中断请求,CPU响应这个中断请求响应这个中断请求后,第二次调用后,第二次调用管理程序管理程序以中断请求进行处理。以中断请求进行处理。8.6总线
13、技术n总线n是多个是多个系统功能部件系统功能部件之间进行之间进行数据传送的数据传送的公共通路公共通路n总线的功能n借助总线连接,计算机在各系借助总线连接,计算机在各系统功能部件之间实现统功能部件之间实现地址地址、数数据据和和控制信息控制信息的交换,并在争的交换,并在争用资源的基础进行工作。用资源的基础进行工作。8.6.2总线管理n连接到总线上的功能模块有两种形态n主方:主方:可以启动一个总线周期;可以启动一个总线周期;n从方:从方:只能响应主方的请求。只能响应主方的请求。n总线的仲裁的目的n为了解决多个主设备同时竞争总线控制权,必须具为了解决多个主设备同时竞争总线控制权,必须具有有总线仲裁部件
14、总线仲裁部件,以某种方式选择其中一个主设备,以某种方式选择其中一个主设备作为总线的下一次主方。作为总线的下一次主方。n总线仲裁的方式n集中式集中式n链式查询方式链式查询方式n计数器定时查询方式计数器定时查询方式n独立请求方式独立请求方式 n分布式分布式链式查询方式n优点n只用很少几根线就能按一定优先次序实现总线仲裁,只用很少几根线就能按一定优先次序实现总线仲裁,易扩易扩充设备。充设备。n缺点:对询问链的电路故障很敏感,不易对询问链的电路故障很敏感,不易改变优先次序。改变优先次序。总线允许总线允许总线忙总线忙总线请求总线请求BR=1且且BS=0i=0BS=1,撒消设备撒消设备i请求请求BS=0设
15、备设备i有请求有请求i+为设备为设备i服务服务NY链式查询方式n特点n总线请求较低的设备容易被忽略;总线请求较低的设备容易被忽略;n总线授权信号串行传送,因设备的差错,容易造成堵总线授权信号串行传送,因设备的差错,容易造成堵塞。塞。总线允许总线允许总线忙总线忙总线请求总线请求计数器定时查询方式n设置不同的计数初始值可改变设备优先级n若计数器初值若计数器初值=0,此时设备的优先次序是固定的;,此时设备的优先次序是固定的;n若修改计数器若修改计数器C值值=C+,则所有设备优先级相等,是循环优先级方式。,则所有设备优先级相等,是循环优先级方式。n若修改计数器若修改计数器C值值=0,相当于链查询方式,
16、每次都从第,相当于链查询方式,每次都从第1个设备开始查询个设备开始查询BR=1且且BS=0 BS=1,撒消设备撒消设备C请求请求BS=0设备设备C有请求有请求C+为设备为设备C服务服务置计数器置计数器C初值初值N修改计数器修改计数器C值值总线忙总线忙总线请求总线请求计数器计数器Y计数器定时查询方式n优点:n具有灵活的优先级具有灵活的优先级n它对电路故障也不如链查询那样敏感它对电路故障也不如链查询那样敏感n缺点n增加了一组设备线,控制也变复杂了。增加了一组设备线,控制也变复杂了。总线忙总线忙总线请求总线请求计数器计数器独立请求方式n每个设备均有一对每个设备均有一对总线请求线总线请求线BRi和和总
17、线允许线总线允许线BGi。n当设备要求使用总线时,便发出该设备的请求信号。当设备要求使用总线时,便发出该设备的请求信号。n总线控制器中的排队电路决定首先响应哪个设备的请求,总线控制器中的排队电路决定首先响应哪个设备的请求,给设备以允许信号给设备以允许信号BGi。排队排队电路电路总线请求总线请求总线允许总线允许独立请求方式n特点:n响应时间快,确定优先响应的设备所花的时间少,不用逐设备查询。响应时间快,确定优先响应的设备所花的时间少,不用逐设备查询。n优先次序的控制很灵活,可预先固定也可通过程序来改变优先次序;优先次序的控制很灵活,可预先固定也可通过程序来改变优先次序;n但设备、电路复杂。但设备
18、、电路复杂。排队排队电路电路总线请求总线请求总线允许总线允许8.6.3总线的类型和总线的标准n在计算机中使用的总线按从里向外的层次,分为nCPU内部总线n实现实现CPU片内功能模块部件之间的互联片内功能模块部件之间的互联n部件内总线(片级总线)n实现电路板上各集成电路芯片间互联实现电路板上各集成电路芯片间互联n系统总线 (功能模块间总线)n实现各功能模块(如实现各功能模块(如CPU、主存、主存、I/O接口)间的互接口)间的互联联n按传送的停息不同可分为按传送的停息不同可分为AB、DB和和CBn外总线n实现计算机系统之间互连的通信总线实现计算机系统之间互连的通信总线总线系统的发展n随着计算机技术的进步,总线技术的标准也在不断发展n例如,例如,微型计算机总线微型计算机总线nPC/XT总线(总线(1981年)年)nPC/AT或或ISA总线(总线(1984年)年)nEISA总线(总线(1988年)年)nVESA总线(总线(1989年)年)nPCI总线(总线(1991年)年)nAGP总线(总线(1997年)年)nPCI-X总线(总线(1998年)年)nPCI Express(2004年)年)总线结构实例Pentium的总线结构作业26nP349: 21nP350: 30nP350: 34