收藏 分享(赏)

《微机与操作系统通教程》第6章io接口与设备管理.doc

上传人:天天快乐 文档编号:1228901 上传时间:2018-06-19 格式:DOC 页数:17 大小:101.16KB
下载 相关 举报
《微机与操作系统通教程》第6章io接口与设备管理.doc_第1页
第1页 / 共17页
《微机与操作系统通教程》第6章io接口与设备管理.doc_第2页
第2页 / 共17页
《微机与操作系统通教程》第6章io接口与设备管理.doc_第3页
第3页 / 共17页
《微机与操作系统通教程》第6章io接口与设备管理.doc_第4页
第4页 / 共17页
《微机与操作系统通教程》第6章io接口与设备管理.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、新世纪高职高专实用规划教材微机与操作系统贯通教程王宝军 著 清华大学出版社第6章 I/O接口与设备管理学习目的与要求外设是微机系统的重要组成部分。正由于外设种类繁多、物理特性各异,所以任何外设都必须通过I/O接口连接到系统总线上,并在I/O软件的控制和管理下,屏蔽了具体设备的物理特性,降低了用户使用设备的复杂性。通过本章的学习和上机操作,了解I/O接口的功能、 结构、端口 编址、常用可 编程接口芯片以及各层次I/O 软件的功能与实现,重点掌握四种I/O 控制方式、 设备独立性的实现 ,以及中断技 术、缓冲技术和SPOOLing技术的原理与实现,能运用 Windows系统 的设备管理器和注册表对

2、设备进行各种配置。6.1 I/O接口技术6.2 I/O设备管理及软件6.3 中断技术和缓冲技术6.1 I/O接口技术主要内容1. I/O接口概述2. I/O控制方式3. 可编程接口芯片4. 8255A应用实例重点关注: I/O接口的功能与结构 四种I/O控制方式的特点 I/O端口编址方法 8255和8253的功能与应用1. I/O接口概述(一)(1)I/O接口的基本概念为何外设必须通过I/O接口电路才能连接到系统总线半导体存储器由于其工作速度与CPU基本相匹配、电平特性与总线相符、功能和传送方式单一,所以它与CPU之间可以直接通过总线相连。但是,外设的功能多种多样,其 I/O信号电平和种类也各

3、不相同;且外设工作速度比CPU低得多,不同外 设的速度差异也很大。什么是I/O 接口技术把CPU和内存等组成的基本系统与外设连接起来,从而实现主机与外设通信的一门技术。I/O接口设计包括两个方面:一是设计I/O接口电路,即硬件的设计;二是编制用于控制I/O接口电路按要求进行工作的驱动程序,即软件的设计。 (2)I/O接口的分类按照电路和设备的复杂程度,I/O接口的硬件主要分为以下两大类:I/O接口芯片 大多是可编程的大规模集成电路。它们可通过CPU输出不同的命令和参数,灵活地控制与之相连的I/O电路或某些简单的外设进行相应的操作,如中断控制器8259A、定时/计数器芯片8253、并行接口芯片8

4、255等。I/O接口卡( Adapter)通常由若干个集成电路按一定的 逻辑结构组装成一个部件,它可能直接与CPU拼接在一个系统板上,也可能制成一个独立的电路板插件插在主板的总线槽上,如PC机常用的显卡、声卡、网卡等。按照所连接外设控制的难易程度,I/O接口卡的核心器件或为一般的接口芯片或为微处理器。1. I/O接口概述(二)(3)I/O接口的功能与结构数据缓冲功能设备选择功能检测控制外设其 它 功 能CPU和外设速度不匹配的问题可以通过在接口电路中设置数据缓冲来解决,常使用锁存器、缓冲器和RAM 。 数据寄存器控制寄存器状态寄存器I/O设备状态线控制线数据线数据总线控制总线地址总线CPU在同

5、一时间只能与一个外设交换信息, 这就要借助于接口中的地址译码和设备选择逻辑以选定外设。 接口接受CPU送来的命令和控制信号以控制和管理外设;外设工作状态和应答信号也通过接口返回给CPU。 不同用途的I/O接口电路还可能具备其他功能。如信号电平转换、模/数(A/D )转换、并/串传送方式转换等。其 它 功 能不同用途的I/O接口电路还可能具备其他功能。如信号电平转换、模/数(A/D )转换、并/串传送方式转换等。数据寄存器用于数据缓冲;控制寄存器用于存放CPU发来的控制命令等信息;状态寄存器用于保存外设现行各种状态信息供CPU读取。每个寄存器被称为一个I/O端口,并有惟一的地址,即端口地址。 1

6、. I/O接口概述(三)(4)I/O端口的编址方式统一编址方式把每个端口视为一个内存单元,并赋予相应的内存地址。由于端口地址被映像到内存空间的一部分,因此统一编址也称为存储器映像编址。优点:无需专门的I/O操作指令,任何访存操作指令都可用于I/O操作,既简化了指令系统和读/写控制逻辑,又使I/O操作的功能增强,而且端口数目几乎不受限制。缺点:占用了一部分内存空间,使可用的内存空间减少;由于访问内存的指令一般较长,使原本极为简单的I/O操作速度减慢。 独立编址方式将I/O端口单独编址,不占用内存空间,即两者的地址空间是相互独立的,所以CPU访问I/O端口必须采用专用的I/O 操作指令。优点:节省

7、内存空间,而且由于系统需要的I/O端口数目比内存单元数目要少得多,端口寻址所需的地址线较少,所以端口地址译码较简单,寻址速度较快。缺点:专用于I/O操作的指令类型少,远不如访存指令丰富,且I/O指令一般只能在累加器和I/O 端口之间交换信息,其处理能力不如统一编址方式强大。 许多单片机都采用统一编址方式,如Intel MCS-51 系列 单片机等。基于80x86的PC系列及其兼容机采用的是独立 编址方式,对I/O端口的寻址只用低10位地址总线,寻址1024个端口。其中,前 256个端口地址( 000H0FFH)专供I/O接口芯片使用;后756个端口地址(100H3FFH)为I/O接口控制卡使用

8、。PC系列不同机型端口编程并不完全兼容,对端口的分配和使用只能做到大体一致。 说明2. I/O控制方式(一)(1)程序控制方式是否READY?Not BUSY?或CPU读外设状态输入或输出数据无条件(同步)传送方式如果程序员在任何时候都能确信一个外设已准备好数据或处于接收就绪状态,那就不必检查外设的状态而直接进行数据的输入/输出。特点与适用场合:方法简单,所需的硬件和软件都较少,但外设未能及时准备好则可能导致重复读取上次输入内容或覆盖未输出内容等错误。只能适用于那些时序较为固定的简单外设操作,如开关、七段数码管等。条件(查询)传送方式数据传送之前,CPU 先从I/O接口读入外设当前状态,如果输

9、入设备未准备好数据或者输出设备未处于空闲(即忙碌)状态,则反复读入并测试外设状态,仅当外设已准备好数据或空闲时, CPU才用 I/O指令与外设传送数据。 特点与适用场合:需要在I/O接口中设置状态端口,数据传送可靠,可用于任何速度外设的传送。在两种程序控制方式中,CPU与外设之间的数据传送均由程序控制下完成,只适用于CPU速度较慢、外设较少的系统,现代微机中已很少使用,因为都存在以下缺点:CPU与外设只能串行工作,CPU利用率低;无法实现设备之间的并行工作;无法发现和处理因设备或其它硬件所产生的错误。 共同特点2. I/O控制方式(二)(2)中断控制方式方法当输入设备已准备好数据或输出设备已准

10、备好接收数据时,由外设通过I/O接口主动向CPU发出中断请求;CPU 执行完当前指令并检测到有外部中断请求后,在中断允许(IF=1)的情况下便响应外设的中断请求,暂停执行目前的工作,转去执行一个为外设服务的中断处理程序;当完成CPU与外设的数据传送(即中断服务完毕)后,CPU又返回到原来的程序继续执行。 断点程序A指令n指令n+1RET中断服务程序中断请求I/O传送断点保护转入断点恢复返回特点中断方式传送过程看上去与子程序调用过程相似,但中断方式是因外设有数据传送的中断请求引起的,而子程序是由主程序中的CALL 指令而调用的。中断方式的主要特点:减少了CPU的等待时间,但数据传送过程仍由CPU

11、执行程序来完成,CPU与外设并未真正并行。需要较多的软硬件支持。需要断点的保护与恢复(CS和IP 等)。适用场合正是由于断点的保护与恢复都需要一定的CPU辅助开销,所以中断方式只适用于外设速度较慢、传送数据量较少的场合。对于高速外设与主机之间大批量数据传送,CPU会因为过于频繁地处理中断而大大增加辅助开销,反而使 CPU效率降低,这种情况下往往采用下面的DMA传送方式。 2. I/O控制方式(三)(3)DMA方式方法DMA是直接存储器存取(Direct Memory Access)的简称,其基本思想是:在外设和内存之间开辟直接的数据交换通路,从而在外设和主存之间可直接传送大批量数据(以数据块为

12、单位)。 DMA传送过程DMA请求DMA响应DMA传送DMA结束DMA方式用硬件代替软件实现了数据传送,提高了CPU与外设的并行程度。DMA接管总线的方式有3种: CPU停止法周期挪用法交替访存法 DMA接管总线方法2. I/O控制方式(四)(4)通道方式方法与DMA方式类似,也是一种以内存 为中心,实现外设与内存直接交换数据的控制方式。但通道是一个独立于CPU 的专管输入/输出控制的处理机,它有自己的一套简单的指令系统,通道方式的I/O数据传送就是由通道执行通道程序来完成的。 通道传送过程通道启动形成通道程序启动通道通道传送通道结束运行通道程序完成数据传送向CPU中断请求关闭通道通道与DMA

13、比较通道方式通过执行通道程序完成数据传送;而DMA方式是借助于硬件完成的。一个通道可以连接多个不同类型的外设,同时进行数据交换;而一个DMA控制器只能连接同类设备,多个同类外设也只能串行工作。通道方式中CPU只需发一个I/O指令启动通道,由通道自己完成对外设初始化;而DMA控制器对自身及外设初始化工作由CPU完成。 3. 可编程接口芯片(一)(1)并行接口芯片8255A8255A是Intel公司生产的通用可编程并行I/O接口芯片,可为外设提供三个8位端口,又可分为两组编程,能工作于三种模式,允许采用同步、异步和中断方式传送I/O数据。 功能结构数据总线缓冲器三个8位端口PA、PB和PCA组和B

14、组控制电路读/写控制逻辑工作方式方式0基本输入/输出方式方式1单向选通输入/输出方式方式2双向选通输入/输出方式初始化将方式选择控制字、PC 口置位/复位控制字两种控制命令字写入 8255A的控制寄存器端口,以设置各种工作方式。3. 可编程接口芯片(二)(2)定时/计数器芯片8253定时与计数功能及实现对频率固定的时钟信号计数,实际上就是定时功能。定时信号可以利用软件编程或硬件方法得到,而硬件定时又有采用不可编程的数据逻辑电路(如定时器555)和采用可编程定时/计数器(如微机中常用的 8253)。 功能结构与工作方式说明8253初始化先把工作方式控制字写入控制端口,紧接着把计数初始值的低8位和

15、高8位分两次相继写入控制端口(注意计数初值设置为0表示最大计数值)。PC/XT机中8253 三个计数器分别用于:计数器0用作系 统时钟(方式3) 计数器1用作DRAM的刷新定时(方式2)计数器2用作扬声器的告警或伴音信号(方式3,1000Hz)。 016位二进制计数14位十进制(BCD)码计数000方式0( 计数结束中断)001方式1( 可编程单稳)X10方式2(频率发生器)X11方式3(方波发生器)100方式4( 软件触发选通)101方式5( 硬件触发选通)00计数器锁存操作(供CPU读)01只读/写计数器低8位10只读/写计数器高8位11先读/写低8位, 后读/写高8位00计数器001计数

16、器110计数器211未用BCDM0M1M2RL0RL1SC0SC1D0D1D2D3D4D5D6D74. 8255A应用实例并行打印接口连续实例PC机的并行打印接口采用 Centronics标准的插头插座,8086系统与打印机接口之间的连接如图所示。其中,为打印机选通信号;BUSY为忙碌信号。 ; * PRINT子程序 *mov cx,0600 ;置延迟参数delay:loop delay ;延迟一段时间pop cxmov al,82h ;8255A初始化mov dx,portconout dx,almov al,80h ;往PC口送80Hmov dx,portc ;使选通信号无效out dx,

17、alstat: mov dx,portb ;从PB口读状态in al,dxtest al,01 ;测试BUSYjnz stat ;忙碌则等待mov dx,prota ;空闲则输出字符mov ax,bp+4out dx,alsub al,al ;使PC7为低电平mov dx,protc ;即输出选通信号out dx,almov al,80h ;使选通信号无效out dx,al6.2 I/O设备管理及软件主要内容2. 设备管理的功能3. I/O软 件的层次结构5. 设备分配策略6. SPOOLing技术1. 外部设备的分类4. 设备驱动程序重点关注: 设备管理的主要功能及实现过程 设备独立性的含义

18、与实现 I/O设备管理软件的层次结构 SPOOLing技术及其应用1. 外部设备的分类设备管理是操作系统的重要组成部分,主要有三个方面的任务:按照用户的要求来控制I/O设备操作,减轻用户的编程负担;按照一定的算法把外设分配给请求它的进程,以保证系统有条不紊地工作;尽可能提高种类繁多的外设与CPU之间的并行操作程度,以提高系统效率。 系统设备用户设备安装操作系统时就纳入系统管理范围的各种标准设备。系统设备之外的非标准设备,在操作系统安装后由用户安装配置相应的驱动程序。 按设备的从属关系分类按资源分配角度来分类独享设备共享设备任何时刻只允许一个进程或作业使用的设备,大多慢速字符设备均为此类。允许多

19、个进程或作业同时使用的设备,大多属于高速、可直接存取的设备。 字符设备块设备以字符为单位来组织和传送信息的设备,通常是慢速设备,往往具有交互特点。 以数据块为单位组织和传送信息的设备,多为高速、大量数据传送的存储设备。 按信息交换单位来分类另外,按使用特性可以把设备分为存储设备、 输入或输出设备、 终端设备三类;按操作系统对设备安装的支持程度又可分为即插即用(PnP)设备和非即插即用设备两大类。 2. 设备管理的功能支持SPOOLing技术设备分配提供中断处理机制设备管理的功能提供设备驱动程序或其接口提供设备的独立性管理缓冲区3. I/O软 件的层次结构用户级I/O 软件I/O请求独立于设备的

20、软件设备驱动程序中断处理程序硬 件I/O响应包括实现设备独立性、缓冲技术及设备分配指操作系统提供给程序员使用的I/O系统调用(1)设备标识用户程序在使用设备时,不愿涉及到设备的具体物理特性。设备管理引入了逻辑设备和物理设备的概念,使设备的独立性得以实现。逻辑设备是对实际物理设备的抽象,并不限于某个具体的物理设备。按照用户习惯为逻辑设备起的名字称为逻辑设备名,而系统为了能识别每个具体的物理设备,必须为它们分配一个惟一不变的名字,称为物理设备名。 (2)设备独立性所谓设备独立性,是指用户编程时所使用的逻辑设备与实际使用的物理设备无关,也称设备无关性。当用户程序以逻辑设备名来请求使用某类设备时,系统

21、将在该类设备中,根据设备的使用情况选择一台合适的物理设备分配给用户程序。在将设备逻辑设备名转换为物理设备名之后,即可调用相应的设备驱动程序来管理这台物理设备。设备独立性给用户带来了以下两方面的好处:便于同类设备的合理调度使用;便于实现虚拟设备。 4. 设备驱动程序设备驱动程序是I/O接口技术中由软件实现的部分,它是通过I/O接口电路直接驱动物理设备,使其按用户的意图完成各种操作的软件。将抽象要求转换为具体要求检查I/O 请求的合法性检查设备状态传送必要参数设备驱动程序的处理过程将用户命令中的逻辑设备名转换为物理设备名,系统只是完成了第一步工作。要具体操纵一台物理设备非常复杂,于是操作系统的设计者把所有与物理设备直接相关的软件部分独立出来,构成设备驱动程序库。注意设备驱动程序与设备的特性紧密相关,它是设备的灵魂,不同类型的外设有着不同的驱动程序,即使是不同厂商生产的同一类外设,其驱动程序也不完全一样,只有正确安装了驱动程序,设备才有生命力。 启动I/O 设备5. 设备分配策略(一)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 简明教程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报