




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章输入输出系统,8.1外围设备的速度分级和信息交换方式8.2程序查询方式8.3程序中断方式8.4DMA方式8.5通道方式8.6通用I/O标准接口,多种多样的外设,工作原理不同机械、电子、机电、电磁传送信息类型多样数字量、模拟量、开关量传送速度差别极大传送方式不尽相同串行、并行编码方式不同二进制、BCD码、ASCII码,8.1外围设备的速度分级与信息交换方式,2020年6月9日1时40分,输入输出设备和CPU交换数据的过程:输入过程:CPU把一个设备地址值放在地址总线上,这一步将选择一个输入设备CPU等候输入设备的数据成为有效CPU从数据总线上读入数据,并放在一个相应的寄存器中输出过程:CPU把一个设备地址值放在地址总线上,这一步将选择一个输出设备CPU把数据放在数据总线上输出设备认为数据有效,从而把数据取走。,1.速度极慢或简单的外围设备不需要CPU和外设之间的时间同步!2.慢速或中速的外围设备采用异步定时方式外设有“准备就绪”状态位;CPU查询状态位,就绪时就读走;应答式数据交换。3.高速的外围设备采用同步定时方式CPU和外设之间的数据交换由时钟脉冲控制。,如果把高速工作的主机同不同速度工作的外围设备相连接,如何保证主机与外围设备在时间上同步?,8.1.2信息交换方式,在计算机系统中,CPU管理外围设备有以下几种方式:1.程序查询方式2.程序中断方式3.直接内存访问(DMA)方式4.通道方式,例子假设幼儿园一个阿姨带10个孩子,要给每个孩子分4块水果糖。假设孩子们都应把4块糖都吃完,那么她采用什么方法呢?,方法1:她先给孩子甲一块糖,盯着甲吃完,然后再给第二块,等吃完第二块又给第三块,吃完第三块又给第四块。接着给孩子乙,其过程与孩子甲完全一样。依次类推,直至到第10个孩子发完四块糖。看来这种方法效率太低,重要之点还在于孩子们吃糖时她一直在守候,什么事也不能干。(程序查询方式)方法2:每人发一块糖各自去吃,并约定谁吃完后就向老师举手报告,再发第二块。看来这种新方法提高了工作效率,而且在未接到孩子们吃完糖的报告以前,她还可以腾出时间给孩子们改作业。(程序中断方式)方法3:进行批处理:每人拿4块糖各自去吃,吃完4块糖后再向她报告。显然这种方法工作效率大大提高,她可以腾出更多的时间改作业。(直接内存访问(DMA)方式)方法4:权力下放,把发糖的事交给另一个人分管,只是必要时她才过问一下。(通道方式),1.程序查询方式,适用许多单片机系统,读,写,2.程序中断方式,外设输入或输出数据就绪时,主动通知CPU。CPU如何响应中断请求,暂停现行程序,保护好“断点”;转“中断服务程序”,完成对外设的读或写;再回到原程序,继续执行。,3.直接内存访问(DMA)方式,外设控制器(接口卡)中有DMA控制器和CPU分时使用总线;数据交换不经过CPU,而直接在内存和外围设备之间进行。,适用于内存和高速外围设备之间大批数据交换的场合,4.通道方式,通道是专用于I/O的处理器,也称IOP。实现对外围设备的统一管理和外围设备与内存之间的数据传送。进一步减少CPU参与I/O过程。,I/O控制方式,主要由程序实现,主要由附加硬件实现,程序查询方式,程序中断方式,DMA方式,通道方式,CPU需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出.对多个外设的情况,按顺序依次查询(轮询),8.2程序查询方式,用程序实现输入/输出的数据传送,外围设备有两种不同的编址方法。统一编址:外设和内存一起编排地址。可用访内指令访问I/O设备。外设不需要专用的指令组。单独编址:内存地址和I/O设备地址是分开的,访问内存和访问I/O设备使用不同操作码的指令。,8.2.1设备编址,(5)CPU从I/O接口的数据缓冲寄存器输入数据,或者将数据从CPU输出至接口的数据缓冲寄存器。与此同时,CPU将接口中的状态标志复位。,(4)假如这个设备没有准备就绪,则第(2)、第(3)步重复进行,一直到这个设备准备好交换数据,发出准备就绪信号“Ready”为止;,(6)数据传送,(3)检查状态字中的标志,看看数据交换是否可以进行;,(2)从I/O接口读入状态字;,(1)先向I/O设备发出命令字,请求进行数据传送;,程序查询接口包括设备选择电路数据缓冲寄存器设备状态寄存器,按上述步骤执行cpu资源浪费严重,实际应用中做如下改进:1.cpu在执行主程序的过程中可周期性的调用各外部设备询问子程序。2.该程序依次测试各I/O设备的状态是否就绪,3.如果ready为1则转去执行该设备的任务,如果为0则测试下一个设备。4.CPU主动询问。,8.3程序中断方式,处理器在执行程序过程中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序,17,CPU何时响应中断请求?如何保证返回到主程序的正确位置?当CPU响应中断后,若有新的中断请求如何处理?,CPU在当前指令执行完毕转入公操作时才受理设备的中断请求,保存现场:PC的内容以及当前指令执行结束后CPU的状态保存到堆栈中。保证中断处理后返回到主程序的正确位置。,中断处理过程是由硬件和软件结合完成的。,硬件,软件,中断屏蔽:CPU中可设置中断屏蔽寄存器,“挡住”中断请求。“关中断”:中断屏蔽标志置“1”,屏蔽所有中断请求;“开中断”:中断屏蔽标志置“0”,允许所有中断请求。,8.3.2程序中断方式的基本接口,程序中断由外设接口的状态和CPU两方面来控制:在接口方面,有决定是否向CPU发出中断请求的机构,主要是接口中的“准备就绪”标志(RD)和“允许中断”标志(EI)两个触发器;在CPU方面,有决定是否受理中断请求的机构,主要是“中断请求”标志(IR)和“中断屏蔽”标志(IM)两个触发器。BS外设接口忙(BuSy)标志,表示由程序启动外设,将该外设接口的“忙”标志BS置“1”,“准备就绪”标志RD清“0”;,表示接口向外设发出启动信号;,表示数据由外设传送到接口的缓冲寄存器;,表示当设备动作结束或缓冲寄存器数据填满时,设备向接口送出一控制信号,将数据“准备就绪”标志RD置“1”;,表示允许中断标志EI为“1”时,接口向CPU发出中断请求信号;,表示在一条指令执行末尾CPU检查中断请求线,将中断请求线的请求信号接收到“中断请求”标志IR;,表示如果“中断屏蔽”标志IM为“0”时,CPU在一条指令执行结束后受理外设的中断请求,向外设发出响应中断信号并关闭中断;,表示转向该设备的中断服务程序入口;,表示在中断服务程序通过输入指令把接口中数据缓冲寄存器的数据读至CPU中的寄存器;,(10)表示CPU发出控制信号C将接口中的BS和RD标志复位。,中断分类,根据计算机系统对中断处理的策略不同,可分为单级中断系统和多级中断系统。单级中断:所有中断源属于同一级,当响应某中断请求时,不允许其他中断源打断当前中断服务程序。离cpu最近中断优先级最高。多级中断:优先级高的中断请求可打断已在运行的其他中断源的中断服务程序。,8.3.3单级中断,各中断源有优先级的差别离CPU近的优先权高,存在一个由硬件决定的响应优先级。当多个中断源请求时,CPU选择优先级最高的予以响应。,链式查询实现的单级中断,与链式总线控制相对应,2.单级中断源的识别如何确定中断源,并转入被响应的中断服务程序入口地址,是中断处理首先要解决的问题。在单级中断中,采用串行排队链法来实现具有公共请求线的中断源判优识别。其实现逻辑结构如下图示。,中断向量,中断向量指示中断服务程序的入口。例:某中断源的中断服务程序的起始地址(即入口)是地址001011,则中断向量为001011。,8.2.4多级中断,优先级高的中断请求可打断已在运行的其他中断源的中断服务程序。,多级中断可分为一维多级中断和二维多级中断:一维多级中断:每级中断里只有一个中断源二维多级中断:每级中断里又有多个中断源,一维多级中断,中断屏蔽寄存器,优先级比较,二维多级中断,链式查询中断源,同一级中断源的处理过程不能嵌套。为什么?,play,中断嵌套:中断处理中又响应中断,某一级中断被响应后,置“1”(关闭)本级和优先权低于本级的中断屏蔽触发器,置“0”(开放)更高级的中断屏蔽触发器。,27,例1(1)中断情况下,CPU和设备的优先级如何考虑?设备的先级顺序如何?答:CPU优先级最低。设备次序:ABCDEFGHICPU(2)执行B中服时,IM2、IM1、IM0为多少?若执行D中服呢?答:执行B中服时,IM2、IM1、IM0为111。若执行D中服,为011。(3)每一级的IM能否对个别设备单独屏蔽?若不能,什么办法可达到目的?答:不能。可将设备接口的EI标志置“0”,禁止该设备发出中断请求。(4)假如设备c一提出中断请求,cpu立即响应,如何调整?答:将c从第2级取出来,单独放在第3级。,8.2.5中断控制器(集成8259),8.3DMA方式,程序控制传送方式的不足:外设CPU存储器外设CPU存储器直接存储器存取DMA:外设存储器外设存储器DMA方式:直接内存访问,数据不经CPU,直接在外设和内存之间传送,无需保护CPU现场;DMA控制器负责地址修改和传送计数,适合高速设备的成组传送。,(1)从外围设备发出DMA请求;(2)CPU响应请求,把CPU工作改成DMA操作方式,DMA控制器从CPU接管总线的控制;(3)由DMA控制器对内存寻址,并执行数据传送的操作;(4)向CPU报告DMA操作的结束。,DMA能执行以下一些基本操作:,8.4.2DMA传送方式,DMA技术的出现,使得外围设备可以通过DMA控制器直接访问内存,与此同时,CPU可以继续执行程序。DMA控制器与CPU分时使用内存通常采用以下三种方法:1.停止CPU访问内存2.周期挪用3.DMA与CPU交替访内存,停止CPU访问内存,CPU放弃总线控制权;CPU无法取指,处于不工作状态。,内存工作时间,t,CPU控制并使用内存,DMA控制并使用内存,停止CPU的访问内存,CPU不执行程序,DMA不工作,DMA不工作,DMA工作,优点:控制简单,适用于数据传输率很高的设备进行成组传送。缺点:设备数据间隔远大于内存访问周期,许多内存访问周期浪费了。,总线周期挪用,CPU按程序要求访存,如I/O有DMA请求,挪用1或几个内存周期。,内存工作时间,CPU控制并使用内存,DMA控制并使用内存,t,优点:内存和CPU的效率提高。缺点:每次挪用都要申请、建立、释放总线控制权。,DMA和CPU交替访内,则CPU周期分为C1和C2两部分,C1供DMA访内,C2供CPU访内。这可避免总线申请、建立和施放的开销。也称透明的DMA方式。,DMA和CPU交替访内,内存工作时间,DMA控制并使用内存,CPU控制并使用内存,t,C1,C1,C2,C2,基本的DMA控制器,记录传送的字数。每传送一个字,字计数器加“1”,当计数器溢出即全0,表示传送完毕,DMA控制器向CPU发中断信号。,“DMA请求”标志置“1”则向“控制/状态”逻辑发出DMA请求;接收DMA响应信号后标志复位。,修改内存地址计数器和字计数器;指定传送类型(输入或输出);对“DMA请求”信号和CPU响应信号进行协调和同步。,当字计数器溢出时(全0),溢出信号触发中断机构,向CPU提出中断报告。,DMA数据传送过程,传送前预处理CPU执行几条输入输出指令,向DMA控制器发送内存起始地址、数据字个数。正式传送数据DMA控制器发总线请求,CPU在本机器周期结束后,响应请求;DMA传送数据,地址和计数器同时加1。计数器未溢出,转;反之,DMA中断请求。传送后处理CPU响应中断后,则停止原程序执行,转去执行中断服务程序,做一些DMA结束处理工作。检查内存数据,,8.4.4选择型和多路型DMA控制器,选择型控制器可物理上接多个设备,逻辑上只为一个设备服务。根据CPU送来的设备号,控制相应设备与内存之间直接传送数据。选择型控制器在某一段时间内只能为一个设备服务。,1.选择型DMA控制器,选择型DMA控制器的基本结构,适用高速外设,2.多路型DMA控制器,多路型DMA控制器适合于同时为多个慢速外围设备服务。物理上可连接多个外设,逻辑上允许这些外设同时工作。各设备以字节交叉方式,通过DMA控制器访内。,例3下图中假设有磁盘、磁带、打印机三个设备同时工作。磁盘以30s的间隔向控制器发DMA请求,磁带以45s的间隔发DMA请求,打印机以150s间隔发DMA请求。根据传输速率,磁盘优先权最高,磁带次之,打印机最低,图中假设DMA控制器每完成一次DMA传送所需的时间是5s。若采用多路型DMA控制器,请画出DMA控制器服务三个设备的工作时间图。,分析,由图看出,在120s时间阶段中,为打印机服务只有一次(T1),为磁盘服务四次(T2,T4,T6,T7),为磁带服务三次(T3,T5,T8)。从图上看到,在这种情况下DMA尚有空闲时间,说明控制器还可以容纳更多设备。,8.5通道方式,通道是一种专用于I/O的处理器;有自己的指令集;通道程序存放在内存中。通道和CPU分时使用内存。,IBM4300系统的I/O结构,存储总线:承担通道与内存、CPU与内存间的数据传输任务。通道总线I/O总线:承担外设与通道间的数据传送任务。,I/O系统一般具有四级连接:CPU与内存通道设备控制器外围设备,play,通道的基本功能,接收CPU的I/O指令,按指令启动相应设备;从内存读取通道指令,译码后发有关控制命令;组织外设与内存之间的数据传送;读取外设状态,供CPU查询;将外设的中断请求和本身的中断请求,按次序及时报告给CPU。,CPU是通过执行I/O指令以及处理来自通道的中断,实现对通道的管理。CPU来自通道的中断有两种,一种是数据传送结束中断,另一种是故障中断。管态CPU运行操作系统的管理程序的状态。目态CPU执行目的程序时的状态。大中型计算机的I/O指令都是管态指令,只有当CPU处于管态时,才能运行I/O指令,目态时不能运行I/O指令。,CPU对通道的管理,通道对设备控制器的管理,执行通道指令,译码后向设备控制器发命令。用通道状态字接收和存储外设的状态。设备控制器:通道对外设实现传输控制的执行机构;从通道接受控制命令,控制设备操作;向通道报告状态;将设备来的信号转换通道能识别的信号。,8.4.2通道的类型,选择通道多个设备不能同时工作,在某一段时间内只能选择一个设备进行工作只包含一个子通道多路通道在一段时间内能交替执行多个设备的通道程序数组多路通道:以数据块为基本单位与设备进行数据传送字节多路通道:以字节为基本单位与设备进行数据传送,8.5.3通道结构的发展,输入输出处理器(IOP)IOP可以和CPU并行工作,提供高速的DMA处理能力,实现数据的高速传送。不是独立于CPU工作的,而是主机的一个部件。IOP应用于中小型及微型计算机中。外围处理机(PPU)PPU基本上独立于主机工作,有自己的指令系统。有的外围处理机选用已有的通用计算机。PPU应用于大型高效率的计算机系统中。,8.5通用I/O标准接口,并行I/O接口标准SCSI(小型计算机系统接口)SmallComputerSystemInterface可混接各种磁盘、光盘、打印机、扫描仪、条码阅读器等。高档PC、工作站都有此接口。,SCSI有如下性能特点:(1)SCSI接口总线由8条数据线、一条奇偶校验线、9条控制线组成。使用50芯电缆,规定了两种电气条件:单端驱动,电缆长6m;差分驱动,电缆最长25m。(2)总线时钟频率为5MHz,异步方式数据传输率是2.5MB/s,同步方式数据传输率是5MB/s。(3)SCSI接口总线以菊花链形式最多可连接8台设备。在pentium中通常是:由一个主适配器HBA与最多7台外围设备相接,如下图所示。,并行I/O接口标准SCSI,play,IEEE1394总线,高速串行总线标准接口,适合视频等家电消费类设备的连接,俗称火线FireWire具有数据传送的高速性数据传输率
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年汽车轻量化材料在汽车轻量化车身制造工艺中的应用趋势报告
- 现场品质培训课件
- 2025年智能制造示范工厂建设中的环保与可持续发展实施方案报告
- 2025年数字艺术产业报告:作品创作、交易与版权保护市场风险与机遇分析
- 现场传授式专业知识培训课件
- 2026届浙江省杭州市西湖区杭州学军中学化学高二上期末统考模拟试题含答案
- 浙江省杭州市杭州第二中学2026届化学高一第一学期期中监测试题含解析
- 2026届贵州省遵义市务川民族中学化学高二上期末质量跟踪监视试题含答案
- 现代水文学研究生课件
- 2026届广西岑溪市高一化学第一学期期末联考模拟试题含解析
- 2025-2030学生文具行业市场发展分析及竞争格局与投资战略研究报告
- 2025-2030中国水下混凝土行业市场发展趋势与前景展望战略研究报告
- GB/T 30134-2025冷库管理规范
- 2025-2030中国声屏障行业市场发展趋势与前景展望战略研究报告
- 板房拆迁补偿协议书
- 基于Fitch支持性照顾需求理论的儿童肺移植患者出院准备服务模式的构建
- 2025年上海中考复习必背英语考纲词汇表默写(汉英互译)
- 2025年上交所期权交易资质测试题库
- 车库洗车日常管理制度
- 2025年心理咨询师基础理论知识测试卷:心理咨询心理学理论体系试题
- 宿管面试试题及答案
评论
0/150
提交评论