外部设备与主机的连接课件.ppt

上传人(卖家):晟晟文业 文档编号:4953103 上传时间:2023-01-27 格式:PPT 页数:48 大小:590KB
下载 相关 举报
外部设备与主机的连接课件.ppt_第1页
第1页 / 共48页
外部设备与主机的连接课件.ppt_第2页
第2页 / 共48页
外部设备与主机的连接课件.ppt_第3页
第3页 / 共48页
外部设备与主机的连接课件.ppt_第4页
第4页 / 共48页
外部设备与主机的连接课件.ppt_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、2022-11-26外部设备与主机的连接外部设备与主机的连接外部设备与主机的连接外部设备与主机的连接 任何数字计算机的用途很大程度上取决于它所能连接的外任何数字计算机的用途很大程度上取决于它所能连接的外围设备的范围。遗憾的是,由于外围设备种类繁多,速度各围设备的范围。遗憾的是,由于外围设备种类繁多,速度各异,不可能简单地把外围设备连接在异,不可能简单地把外围设备连接在CPU上。因此,必须寻上。因此,必须寻找一种方法,一边将同某种计算机连接起来,使他们一起可找一种方法,一边将同某种计算机连接起来,使他们一起可以正常工作。以正常工作。通常这项任务用适配器部件来完成。通过适配器可以实现通常这项任务用

2、适配器部件来完成。通过适配器可以实现高速高速CPU和低速外设之间速度上的匹配和同步,并取决称计和低速外设之间速度上的匹配和同步,并取决称计算机和外设之间的所有数据传送和控制。适配器通常称为接算机和外设之间的所有数据传送和控制。适配器通常称为接口。口。外部设备与主机的连接 3.3.1外部设备与主机的连接外部设备与主机的连接 1.1.影响外部设备与主机连接方式的主要因素影响外部设备与主机连接方式的主要因素 (1)I/O(1)I/O系统的工作模式系统的工作模式 程序控制直接传送模式程序控制直接传送模式 程序查询控制模式程序查询控制模式 程序中断控制模式程序中断控制模式 直接存储器访问(直接存储器访问

3、(DMADMA)模式)模式 通道控制模式通道控制模式 I/O处理机控制模式处理机控制模式 (2)(2)数据传送方式数据传送方式 并行传送并行传送 串行传送串行传送 (3)(3)数据通信的同步方式数据通信的同步方式 同步通信(发送端与接收端之间有统一的时钟)同步通信(发送端与接收端之间有统一的时钟)异步通信(发送端与接收端之间无统一的时钟,采用应异步通信(发送端与接收端之间无统一的时钟,采用应答控制方式。)答控制方式。)外部设备与主机的连接 (4)(4)传送信息的种类传送信息的种类 设备地址信息设备地址信息 数据数据 设备状态信息设备状态信息 控制信息控制信息 2.2.外部设备与主机的连接模式外

4、部设备与主机的连接模式 在描述系统或部件之间的连接时,使用得最为广泛的一个在描述系统或部件之间的连接时,使用得最为广泛的一个术语是术语是“接口接口”(interface)。这里,我们把接口分为如下两)。这里,我们把接口分为如下两种:把插入在两个彼此不能直接连接的机器或系统之间,并使种:把插入在两个彼此不能直接连接的机器或系统之间,并使它们相互连接通信的附加装置称为适配器(它们相互连接通信的附加装置称为适配器(adapter);把位于);把位于一种设备、器件上与其他设备、器件相连接的部分称为一种设备、器件上与其他设备、器件相连接的部分称为I/O端口。端口。适配器是主机和外部设备之间的桥梁,也可以

5、看作是一种器件,适配器是主机和外部设备之间的桥梁,也可以看作是一种器件,它有它有1个面向主机的个面向主机的I/O端端系统接口系统接口,另,另1个面向设备的个面向设备的I/O端口端口设备接口设备接口。此外在外部设备上也需要。此外在外部设备上也需要1个与适配器连接个与适配器连接的的I/O端口端口设备驱动电路设备驱动电路,在主机方面需要,在主机方面需要1个与适配器连个与适配器连接的接的I/O端口端口主机的主机的I/O接口接口。外部设备与主机的连接这这3种器件或设备、种器件或设备、4个个I/O端口形成如下图所示的结构。端口形成如下图所示的结构。I/O接接口口系系统统接接口口设设备备接接口口设设备备驱驱

6、动动电电路路主机主机适配器适配器设备设备地址地址控制、状态控制、状态数据数据图图 3.38 外部设备与主机连接的一般模式外部设备与主机连接的一般模式外部设备与主机的连接 3.I/O 3.I/O接口的寻址方式接口的寻址方式 CPU通过端口与外部设备进行通信:通过端口与外部设备进行通信:如发送命令、读取如发送命令、读取状态和传送数据。为此一个接口中常设置有与这些通信操作状态和传送数据。为此一个接口中常设置有与这些通信操作相对应的端口:相对应的端口:如命令端口、状态端口和数据端口。如命令端口、状态端口和数据端口。CPU要要访问这些端口,首先要解决寻址问题。这就是访问这些端口,首先要解决寻址问题。这就

7、是I/O接口的寻址接口的寻址问题。问题。I/O接口的寻址有两种方式:接口的寻址有两种方式:端口地址与存储器地址统端口地址与存储器地址统一编址一编址和和分别编址分别编址。前者把。前者把I/O端口当作存储器的一部分单元端口当作存储器的一部分单元进行访问,即进行访问,即I/O端口占用了存储器的一部分单元;端口占用了存储器的一部分单元;CPU不设不设置专门的置专门的I/O指令,用统一的访问存储器的命令访问指令,用统一的访问存储器的命令访问I/O端口。端口。后者要求用专门的后者要求用专门的I/O指令访问指令访问I/O端口,端口,I/O端口不占用存储端口不占用存储器空间,它与存储器分别使用两套独立的地址编

8、码系统。器空间,它与存储器分别使用两套独立的地址编码系统。外部设备与主机的连接3.3.2并行通信和并行接口并行通信和并行接口 1.并行接口概述将一个字或其一部分(一个字节)的各并行接口概述将一个字或其一部分(一个字节)的各位用多根数据线同时进行传输,称为并行通信。实现并行通位用多根数据线同时进行传输,称为并行通信。实现并行通信的接口(适配器)是并行接口。一个并行接口可以设计为信的接口(适配器)是并行接口。一个并行接口可以设计为只作输出接口,或只作输入接口,还可以设计为既作为输入只作输出接口,或只作输入接口,还可以设计为既作为输入接口又作为输出接口。接口又作为输出接口。并行接口可以分为硬线连接接

9、口和可编程接口。硬线连并行接口可以分为硬线连接接口和可编程接口。硬线连接接口的工作方式及功能不能用编程的方法加以改变,只能接接口的工作方式及功能不能用编程的方法加以改变,只能用硬线连接设定;可编程接口的工作方式及功能可以用程序用硬线连接设定;可编程接口的工作方式及功能可以用程序加以改变。加以改变。外部设备与主机的连接 2.2.硬线连接并行接口硬线连接并行接口 硬线连接并行接口可分为硬线连接并行接口可分为3 3种。种。(1)(1)简单并行接口简单并行接口 简单并行接口,也称无条件传送接口。它仅用于外设与简单并行接口,也称无条件传送接口。它仅用于外设与CPUCPU交换数据之前就准备好了而不需要联络

10、信号的情形。交换数据之前就准备好了而不需要联络信号的情形。(2)(2)条件传送接口条件传送接口 在实际应用中,大多数外部设备与在实际应用中,大多数外部设备与CPU之间交换的是一之间交换的是一系列连续的数据,只有前一个数据发送或接收完成以后才能系列连续的数据,只有前一个数据发送或接收完成以后才能传送下一个数据。因此接口中必须带有自己的应答信号,以传送下一个数据。因此接口中必须带有自己的应答信号,以表明设备的状态,如设备已表明设备的状态,如设备已“准备好准备好”等。等。CPU在执行在执行I/O操操作时,要先检测外部设备是否已具备数据传送的条件,若不作时,要先检测外部设备是否已具备数据传送的条件,若

11、不具备,则等待,直至设备作好准备。这种并行接口称为条件具备,则等待,直至设备作好准备。这种并行接口称为条件传送接口,或叫程序查询方式接口。它们的特点是带有应答传送接口,或叫程序查询方式接口。它们的特点是带有应答信号。图信号。图3.21介绍的程序查询控制接口就是这种接口。介绍的程序查询控制接口就是这种接口。外部设备与主机的连接 (3)(3)中断传送中断传送I/OI/O接口接口 采用中断方式与采用中断方式与CPU交换数据,让交换数据,让CPU实时地实现对外实时地实现对外设的读写操作,这种并行接口叫做中断传送方式设的读写操作,这种并行接口叫做中断传送方式I/O接口。这接口。这时时I/O设备的状态既可

12、以作为程序查询的标志,又可以作为中设备的状态既可以作为程序查询的标志,又可以作为中断请求信号。这种接口在断请求信号。这种接口在3.2.2节中已经作了介绍。节中已经作了介绍。3.可编程并行接口可编程并行接口(8255A)可编程实际上是具有可选择性,如用户可以在程序中选择可编程实际上是具有可选择性,如用户可以在程序中选择哪一个或哪几个数据端口与外设连接;输入和输出分别占用哪一个或哪几个数据端口与外设连接;输入和输出分别占用端口中的哪一位或哪几位以及选择端口与端口中的哪一位或哪几位以及选择端口与CPU之间的数据传之间的数据传送模式等。它除了具有硬线连接接口的性能外,最主要的是送模式等。它除了具有硬线

13、连接接口的性能外,最主要的是可编程。编程由用户用指令向端口送入方式字或控制字进行。可编程。编程由用户用指令向端口送入方式字或控制字进行。这种接口在微型计算机中称为这种接口在微型计算机中称为PIO。外部设备与主机的连接 下面简要介绍一种适合于下面简要介绍一种适合于IBM|PCIBM|PC系列机的系列机的PIOPIO芯片芯片8255A8255A。(1)8255A(1)8255A内部结构内部结构 图图3.393.39为为8255A8255A的内部结构框图。它由的内部结构框图。它由A A,B B,C 3C 3个数据个数据端口、端口、A/BA/B组控制、读组控制、读/写控制逻辑电路和数据总线缓冲器组写控

14、制逻辑电路和数据总线缓冲器组成。成。3个数据端口的组成及在个数据端口的组成及在PC/XT系统中的地址如表系统中的地址如表3.2所示。所示。外部设备与主机的连接A组控制组控制数据总线数据总线缓冲器缓冲器读读/写写控制逻辑控制逻辑B组控制组控制A组组A口口(8位位)A组组C口高位口高位(4位位)B组组C口低位口低位(4位位)B组组B口口(8位位)PA7 PA0PC7 PC4PC3 PC0PB7 PB0D7 D0RDWRA1A0CSRESET图图3.39 8255A 内部结构内部结构外部设备与主机的连接端口端口端口端口A端口端口C端口端口B数据输入数据输入数据输出数据输出PC/XT中的地址中的地址1

15、X8 位锁存器位锁存器1X8 位锁存位锁存/缓冲器缓冲器60H2X4位缓冲器位缓冲器2X4位锁存位锁存/缓冲器缓冲器62H1X8 位锁存器位锁存器1X8 位锁存位锁存/缓冲器缓冲器61H表表 3.2 8255A的的3个数据端口个数据端口外部设备与主机的连接 在使用中,端口在使用中,端口A A和端口和端口B B常常作为独立的输入端口或输出常常作为独立的输入端口或输出端口;端口端口;端口C C常常分为上下两部分,形成两个常常分为上下两部分,形成两个4 4位端口,分别位端口,分别作为端口作为端口A A和端口和端口B B的输出控制信号和输入状态信号。的输出控制信号和输入状态信号。(2)8255A的工作

16、方式的工作方式 8255A有有3种工作方式:种工作方式:方式方式0 0 方式方式0也称也称基本基本I/O方式方式。在这种方式下,端口。在这种方式下,端口A和端口和端口B以及两个以及两个4位的端口位的端口C,形成,形成4个端口;任一端口都可以作输个端口;任一端口都可以作输入口,也可以作输出口,各端口之间没有规定必然的联系;入口,也可以作输出口,各端口之间没有规定必然的联系;各端口可以有各端口可以有16 种不同的组合,可以适用于多种使用。种不同的组合,可以适用于多种使用。外部设备与主机的连接 方式方式1 1 方式方式1也称也称选择选择I/O方式方式。当。当A,B端口按方式端口按方式1工作时,工作时

17、,C的两个的两个4位端口要分别作为位端口要分别作为A,B 的输出控制信号和输入状态的输出控制信号和输入状态信号。信号。方式方式2 2 方式方式2 2也称也称双向传输方式双向传输方式,只适用于端口,只适用于端口A A。这时端口。这时端口C C要要为端口为端口A A自动提供相应的控制信号。自动提供相应的控制信号。(3)8255A控制字控制字 8255A通过指令往端口设置控制字决定工作方式。控制通过指令往端口设置控制字决定工作方式。控制字分为两类:字分为两类:工作方式控制字和端口工作方式控制字和端口C置置1/置置0控制字。控制字。外部设备与主机的连接 工作方式控制字工作方式控制字 工作方式控制字,用

18、以把工作方式控制字,用以把3 3个端口分为个端口分为A A组(包括端口组(包括端口C C的的高位)和高位)和B B组组(包括端口包括端口C C的低位)来设置工作方式。它的格式的低位)来设置工作方式。它的格式及每位定义如下图所示。及每位定义如下图所示。例如,要把例如,要把A口指定为方式口指定为方式1输入,输入,C口上半部为输出,口上半部为输出,B口为方式口为方式0输出,输出,C口下半部为输入,工作方式字应为口下半部为输入,工作方式字应为10110001B或或B1H。初始化程序为:。初始化程序为:MOV DXMOV DX,63H 63H;8255A8255A控制口地址控制口地址 MOV ALMOV

19、 AL,B1H B1H;置工作方式控制字;置工作方式控制字 OUT DXOUT DX,ALAL ;送控制字到控制口;送控制字到控制口 1D6D5D4D3D2D1D0特征位特征位A组方式组方式00:方式:方式001:方式:方式11X:方式:方式2A口口0:输出:输出1:输入:输入C470:输出:输出1:输入:输入B组方式组方式0:方式:方式01:方式:方式1B口口0:输出:输出1:输入:输入C030:输出:输出1:输入:输入外部设备与主机的连接 端口端口C C置置1/1/置置0 0控制字控制字 这个控制字可以使端口这个控制字可以使端口C C中的任一位置中的任一位置0/0/置置1 1,设置相应的,

20、设置相应的控制位。它的格式及每位的定义如下图所示。控制位。它的格式及每位的定义如下图所示。例如,要对端口例如,要对端口C C的的PC7PC7位置位置1 1,则控制字应为,则控制字应为00001111B00001111B,即即0FH0FH;而端口;而端口C C的的PC3PC3要置要置0 0,则控制字应为,则控制字应为00000110B00000110B,即,即06H06H。则相应程序段为则相应程序段为 MOV ALMOV AL,OF OF ;送对;送对PC7PC7置置1 1控制字控制字 MOV DXMOV DX,63H 63H;控制口地址送;控制口地址送DXDX OUT DX OUT DX,AL

21、 AL;对;对PC7PC7,置,置1 1 MOV AL MOV AL,06H 06H;送控制字;送控制字06H06H到到ALAL OUT DX OUT DX,AL AL;对对PC3置置04.微型计算机标准并行口微型计算机标准并行口1D6D5D4D3D2D1D0特征位特征位不用不用位选择位选择000:C口口0位位001:C口口1位位:111:C口口7位位1:置位:置位0:复位:复位外部设备与主机的连接 标准接口即通用接口。目前的标准并行接口主要作为打印标准接口即通用接口。目前的标准并行接口主要作为打印机端口,接口使用机端口,接口使用2525针针DB-25DB-25连接器。常用的并行接口有如下连接

22、器。常用的并行接口有如下几种:几种:标准并行接口标准并行接口:有有4 4位、位、8 8位和半位和半8 8位。大多数的位。大多数的PCPC机机配有配有4 4位或位或8 8位并口。位并口。EPP EPP口口(增强并行口增强并行口):8):8位双向传送位双向传送,可以用于连接扫可以用于连接扫描仪、描仪、CD-ROMCD-ROM驱动器等非打印设备。驱动器等非打印设备。ECP ECP口口(扩展并行口扩展并行口):):支持多个逻辑设备寻址支持多个逻辑设备寻址,在多任在多任务环境下可以使用务环境下可以使用DMADMA方式。方式。目前很多高档微机的主板都集成了并行口插座,标注为目前很多高档微机的主板都集成了并

23、行口插座,标注为LPT1,LPT2或或Paralle1和和Paralle2。外部设备与主机的连接 5.5.磁盘接口磁盘接口 磁盘是一般计算机的驻在设备,因此磁盘与主机的接口显磁盘是一般计算机的驻在设备,因此磁盘与主机的接口显得尤为重要,常见的磁盘接口有如下两种:得尤为重要,常见的磁盘接口有如下两种:(1)IDE接口接口 IDEIDE接口也称接口也称ATAATA端口端口,通常用于微机上做磁盘接口。通常用于微机上做磁盘接口。IDEIDE接接口最多可接两个容量不超过口最多可接两个容量不超过528M528M的磁盘驱动器的磁盘驱动器,不支持不支持DMADMA方方式式,但其成本低但其成本低,在微机中很流行

24、在微机中很流行,几乎所有的几乎所有的586586主板上都集主板上都集成了两个成了两个IDEIDE接口插座接口插座,标注为标注为IDE1IDE1和和IDE2IDE2。(2)EIDE接口接口 EIDE接口是对接口是对IDE的改进,它可连接的改进,它可连接4个外设,而且外设个外设,而且外设不仅可以是磁盘,还可以是不仅可以是磁盘,还可以是CD-ROM和其他磁盘备份设备。和其他磁盘备份设备。对于硬盘的容量,可以控制的范围提高到了对于硬盘的容量,可以控制的范围提高到了8G,其数据传输,其数据传输率要比率要比IDE高。高。外部设备与主机的连接3.3.3串行通信和串行接口串行通信和串行接口 串行通信是在一根传

25、输线上一位一位地传输信息。由于串行通信是在一根传输线上一位一位地传输信息。由于所用的传输线根数少,特别适合于远距离的信息传送。所用的传输线根数少,特别适合于远距离的信息传送。1.串行通信的同步方式和异步方式串行通信的同步方式和异步方式 并行通信时,一组信息按位分别同时传送,联络信号通过并行通信时,一组信息按位分别同时传送,联络信号通过专用的控制线传送,数据信息通过数据线传送,由于所用的专用的控制线传送,数据信息通过数据线传送,由于所用的线不同,各位的作用很清楚。串行通信时情况就不同了。一线不同,各位的作用很清楚。串行通信时情况就不同了。一组信息要一位一位地传送,联络信号、数据信号都在一根线组信

26、息要一位一位地传送,联络信号、数据信号都在一根线上依次传送,为区分它们,就要给出串行通信的信息格式约上依次传送,为区分它们,就要给出串行通信的信息格式约定,并把串行通信分为异步和同步两种信息格式,形成异步定,并把串行通信分为异步和同步两种信息格式,形成异步通信和同步通信两种方式。通信和同步通信两种方式。外部设备与主机的连接 异步通信异步通信(又称起止式通信又称起止式通信)是把每个字符作为独立的整体是把每个字符作为独立的整体进行传输。为实现通信双方的同步,每位字符传送组织的方进行传输。为实现通信双方的同步,每位字符传送组织的方式如下图所示:编码第式如下图所示:编码第1位前加位前加1位起始位,表示

27、一个字符传位起始位,表示一个字符传送的开始,编码的最后送的开始,编码的最后1位后加位后加1位或多位停止位,表示一个位或多位停止位,表示一个字符传送完毕。信息编码与停止位之间可插入校验位。这种字符传送完毕。信息编码与停止位之间可插入校验位。这种通信方式中,从一个字符的结束到下一个字符的开始没有固通信方式中,从一个字符的结束到下一个字符的开始没有固定的时间间隔,因此称之为异步通信。定的时间间隔,因此称之为异步通信。0/1 0/1 10 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 10 0/1 0/1 0/1 0/1奇偶奇偶校验校验停停止止位位起始位起始位低位低位高位高位7位数据

28、位数据奇偶奇偶校验校验停停止止位位起始位起始位7位数据位数据第第n个字符个字符第第(n+1)个字符个字符第第(n-1)个字符个字符下降边指出下下降边指出下一个字符的开始一个字符的开始数据流向数据流向外部设备与主机的连接 同步通信是把数据块同步通信是把数据块(字符顺序组织字符顺序组织)作为传输单位,格式作为传输单位,格式如下图所示,只在数据块的首部加同步字符,表示数据传送如下图所示,只在数据块的首部加同步字符,表示数据传送的开始,数据块的数据间没有空隙,严格按规定的速率发送的开始,数据块的数据间没有空隙,严格按规定的速率发送和接收,在数据块尾部可带校验码,最后以同步字符结束,和接收,在数据块尾部

29、可带校验码,最后以同步字符结束,表示数据块传送结束。数据块连同附加的同步字符和校验码表示数据块传送结束。数据块连同附加的同步字符和校验码信息称为一帧。信息称为一帧。SYNC字符字符1字符字符2字符字符nCRC1CRC2SYNC1帧帧同步字符同步字符(开始)(开始)同步字符同步字符(结束)(结束)检验检验字符字符1检验检验字符字符2外部设备与主机的连接 同步字符起联络作用。不同的通信系统对同步字符的约同步字符起联络作用。不同的通信系统对同步字符的约定不同,有的约定用定不同,有的约定用0111111001111110作为同步字符,有的约定用作为同步字符,有的约定用0001011000010110作

30、为同步字符。传送开始后,接收设备首先搜索同作为同步字符。传送开始后,接收设备首先搜索同步字符。在同步字符后,传送的是一个数据块,为了正确地步字符。在同步字符后,传送的是一个数据块,为了正确地接收字符,要求接收设备和发送设备保持完全的同步。而为接收字符,要求接收设备和发送设备保持完全的同步。而为了使两个系统的时钟同步,需要有专门的设备(近距离传输了使两个系统的时钟同步,需要有专门的设备(近距离传输时,增加一根时钟信号线)或采用锁相技术(远距离通信时)时,增加一根时钟信号线)或采用锁相技术(远距离通信时)等提取同步信号。等提取同步信号。外部设备与主机的连接 2.串行接口串行接口 串行通信接口的基本

31、任务有如下几条:串行通信接口的基本任务有如下几条:(1)实现串行数据格式化实现串行数据格式化 在异步通信方式下,自动生成(发送时)或去掉(接收在异步通信方式下,自动生成(发送时)或去掉(接收时)启时)启/停位。在同步通信方式下发送时,在数据块前自动加停位。在同步通信方式下发送时,在数据块前自动加上同步字符。上同步字符。(2)进行串进行串|并变换并变换 把外部的串行输入码转换成计算机所需的并行码,把计把外部的串行输入码转换成计算机所需的并行码,把计算机内部的并行码转换为在外部传送的串行码。算机内部的并行码转换为在外部传送的串行码。(3)可靠性检验可靠性检验 发送时接口电路自动生成奇偶校验位等校验

32、码;接收时,发送时接口电路自动生成奇偶校验位等校验码;接收时,接口电路对字符加以自动校验。接口电路对字符加以自动校验。外部设备与主机的连接 (4)实施连接和控制实施连接和控制 目前,广泛使用的一种通用串行数据接口叫目前,广泛使用的一种通用串行数据接口叫USARTUSART(异步接收发(异步接收发送器)。随着大规模集成电路技术的发展,通用可编程同步和异步接送器)。随着大规模集成电路技术的发展,通用可编程同步和异步接口芯片口芯片USARTUSART的种类越来越多,的种类越来越多,Intel 8251Intel 8251就是其中一个代表。下图就是其中一个代表。下图为为Intel 8251Intel

33、8251的结构框图。其编程原理与的结构框图。其编程原理与8255A8255A有些相似。有些相似。数据总线数据总线缓冲器缓冲器读读/写写控制逻辑控制逻辑调制控制调制控制发送缓冲器发送缓冲器发送控制发送控制接收缓冲器接收缓冲器接收控制接收控制TXDTXRDYTXEMPTYTXCRXDRXRDYSYNDETRXCD 07RESETCLKC/DRDWRCSDTRDSRRTSCTS内部数据总线内部数据总线外部设备与主机的连接3.3.微型计算机标准串行口微型计算机标准串行口 一般微机均有两个串行口一般微机均有两个串行口COM1COM1和和COM2COM2。COM1COM1采用采用9 9针针DB-9DB-9

34、连接器,连接器,COM2COM2有的使用的是有的使用的是DB|25DB|25针连接器。通常串行口常针连接器。通常串行口常常用于鼠标和打印机接口。由于串行传送数据距离较长,因常用于鼠标和打印机接口。由于串行传送数据距离较长,因此,长距离数据通信中往往采用串行口。此,长距离数据通信中往往采用串行口。外部设备与主机的连接 3.4 I/O设备管理设备管理 3.4.1 缓冲区技术缓冲区技术 3.4.2 设备驱动程序设备驱动程序 3.4.3 I/O设备分配设备分配 外部设备与主机的连接3.4.1 缓冲区技术缓冲区技术 1.缓冲区的作用缓冲区的作用 (1)高低速设备之间的速度匹配)高低速设备之间的速度匹配

35、中断和通道技术为中断和通道技术为CPU与外设之间的并行操作提供了可与外设之间的并行操作提供了可能。但是由于能。但是由于CPU与外设之间的速度的不匹配以及外设频繁与外设之间的速度的不匹配以及外设频繁地中断地中断CPU的运行,仍会降低的运行,仍会降低CPU的工作效率。为此在输入的工作效率。为此在输入/输出系统中引入了缓冲技术。输出系统中引入了缓冲技术。其基本方法是在其基本方法是在CPU与外设之间设置一个缓冲区,当与外设之间设置一个缓冲区,当CPU要向外设输出数据时,先把数据送到缓冲区中,让外设要向外设输出数据时,先把数据送到缓冲区中,让外设慢慢地去慢慢地去“消化消化”,CPU可以继续进行别的工作;

36、当外设要可以继续进行别的工作;当外设要向向CPU输入数据时,先慢慢地把数据送到缓冲区中,输入数据时,先慢慢地把数据送到缓冲区中,CPU需需要时可以像使用内存中的数据那样使用缓冲区中的数据。要时可以像使用内存中的数据那样使用缓冲区中的数据。外部设备与主机的连接 外部设备虽然慢但处理的数据量少,外部设备虽然慢但处理的数据量少,CPU处理的数据量大处理的数据量大但速度快,借用缓冲就能很好地解决二者之间的匹配问题。例但速度快,借用缓冲就能很好地解决二者之间的匹配问题。例如如如如CPU与打印机通信时,当与打印机通信时,当CPU引发一个输出时,只需快速引发一个输出时,只需快速地把数据送到缓冲区中即可,接着

37、便可以去作别的工作,缓冲地把数据送到缓冲区中即可,接着便可以去作别的工作,缓冲区中的数据则由打印机慢慢地享用,从而减少了中断次数。区中的数据则由打印机慢慢地享用,从而减少了中断次数。在存储体系中,缓冲技术成为解决容量与速度之间的矛盾在存储体系中,缓冲技术成为解决容量与速度之间的矛盾的主要方法,的主要方法,Cache实际上就是主存与实际上就是主存与CPU之间的缓冲区。再之间的缓冲区。再如,当如,当CPU要与磁盘交换数据时,也以缓冲区作为中间过渡环要与磁盘交换数据时,也以缓冲区作为中间过渡环节。节。(2)一次读入的信息能多次使用)一次读入的信息能多次使用 使用过文件的人都会有一个体验:当你要浏览一

38、张软盘中使用过文件的人都会有一个体验:当你要浏览一张软盘中的文件目录时,第一次时间是比较慢的;如果你中间又浏览另的文件目录时,第一次时间是比较慢的;如果你中间又浏览另外的目录再返回来浏览先前那张软盘目录时,会发现快多了。外的目录再返回来浏览先前那张软盘目录时,会发现快多了。原因就在于第一次浏览时,软盘目录已经调入内存的缓冲区了。原因就在于第一次浏览时,软盘目录已经调入内存的缓冲区了。一般地说,在通道或控制器内设置局部寄存器,可以暂存一般地说,在通道或控制器内设置局部寄存器,可以暂存I/O信信息,减少息,减少CPU的中断次数。的中断次数。外部设备与主机的连接 (3)中转)中转 通过中转避免外设与

39、通过中转避免外设与CPU之间的完全互连,可以解决设之间的完全互连,可以解决设备连接和数据传输的复杂性。备连接和数据传输的复杂性。2.缓冲区的实现缓冲区的实现 为了有效地进行为了有效地进行I/O操作,缓冲存储已经成为不同设备之操作,缓冲存储已经成为不同设备之间相互连接的重要环节。现代计算机系统中在信息传输的通间相互连接的重要环节。现代计算机系统中在信息传输的通道上设置和增加了各种各样的存储器,例如显示存储器、打道上设置和增加了各种各样的存储器,例如显示存储器、打印缓冲区等。当然,并非所有的印缓冲区等。当然,并非所有的I/O操作都要经过缓冲区。例操作都要经过缓冲区。例如有的作业可以直接输入到外存,

40、再由外存调入内存执行。如有的作业可以直接输入到外存,再由外存调入内存执行。缓冲区可以用硬件实现,也可以用软件实现。硬缓冲区通缓冲区可以用硬件实现,也可以用软件实现。硬缓冲区通常设在设备中,软缓冲区由软件设置在内存中。常设在设备中,软缓冲区由软件设置在内存中。外部设备与主机的连接 按照组织方式缓冲技术可以分为:单缓冲、双缓冲、多缓按照组织方式缓冲技术可以分为:单缓冲、双缓冲、多缓冲和缓冲池等形式。冲和缓冲池等形式。(1)单缓冲:在设备与)单缓冲:在设备与CPU之间设置一个缓冲区。显然之间设置一个缓冲区。显然单缓冲区难以解决两台设备之间的并行操作。单缓冲区难以解决两台设备之间的并行操作。(2)双缓

41、冲:在设备与)双缓冲:在设备与CPU之间设置两个缓冲区,这样之间设置两个缓冲区,这样可以解决两台设备之间的并行操作问题。可以解决两台设备之间的并行操作问题。(3)多缓冲:把多个缓冲区连接起来组成两个部分:一部)多缓冲:把多个缓冲区连接起来组成两个部分:一部分用于输入,另一部分用于输出。分用于输入,另一部分用于输出。(4)缓冲池:把多个缓冲区连接起来统一管理,既可用于缓冲池:把多个缓冲区连接起来统一管理,既可用于输入,又可用于输出。输入,又可用于输出。外部设备与主机的连接3.3.缓冲区管理缓冲区管理 下面以缓冲池为例来介绍缓冲区的管理方法。下面以缓冲池为例来介绍缓冲区的管理方法。一个缓冲区由两部

42、分组成:缓冲首部和缓冲体。缓冲体一个缓冲区由两部分组成:缓冲首部和缓冲体。缓冲体用于存放数据。缓冲首部用来标识所在缓冲区以便对其进行用于存放数据。缓冲首部用来标识所在缓冲区以便对其进行管理,它由下图所示的几部分组成。管理,它由下图所示的几部分组成。设备号设备号数据块号数据块号缓冲器号缓冲器号互斥标识位互斥标识位队列连接指针队列连接指针外部设备与主机的连接 利用缓冲首部的队列连接指针,可以将缓冲池中利用缓冲首部的队列连接指针,可以将缓冲池中的缓冲区组织成的缓冲区组织成3种队列:种队列:空闲缓冲队列:未使用的缓冲区队列。空闲缓冲队列:未使用的缓冲区队列。输入缓冲队列:装满输入数据的缓冲区组成的队列

43、。输入缓冲队列:装满输入数据的缓冲区组成的队列。输出缓冲队列:装满输出数据的缓冲区组成的队列。输出缓冲队列:装满输出数据的缓冲区组成的队列。外部设备与主机的连接 缓冲池工作时,将按如下算法进行:缓冲池工作时,将按如下算法进行:(1)当设备有输入数据时,先从空闲队列中(队首)申请)当设备有输入数据时,先从空闲队列中(队首)申请一个缓冲区一个缓冲区称为收容输入缓冲区,将输入数据写入收容称为收容输入缓冲区,将输入数据写入收容输入缓冲区中;写满后,按一定规则(如输入缓冲区中;写满后,按一定规则(如FIFO)插入到输入)插入到输入缓冲队列中。缓冲队列中。(2)当)当CPU(系统)要提取数据时,将从输入缓

44、冲队列(系统)要提取数据时,将从输入缓冲队列中(队首)申请一个缓冲区中(队首)申请一个缓冲区称为提取输入缓冲区,从中称为提取输入缓冲区,从中读取数据;提取结束后,将该缓冲区插入到空闲队列。读取数据;提取结束后,将该缓冲区插入到空闲队列。(3)当)当CPU要输出数据时,先从空闲队列中(队首)申要输出数据时,先从空闲队列中(队首)申请一个缓冲区请一个缓冲区称为收容输出缓冲区,将输出数据写入收称为收容输出缓冲区,将输出数据写入收容输出缓冲区中;写满后,按一定规则(如容输出缓冲区中;写满后,按一定规则(如FIFO)插入到输)插入到输出缓冲队列中。出缓冲队列中。(4)当设备要提取数据时,将从输出缓冲队列

45、中(队首)当设备要提取数据时,将从输出缓冲队列中(队首)申请一个缓冲区,从中读取申请一个缓冲区,从中读取数据数据称为提取输出缓冲区;称为提取输出缓冲区;提取结束后,将该缓冲区插入到空闲队列。提取结束后,将该缓冲区插入到空闲队列。上述收容输入缓冲区、提取输入缓冲区、收容输出缓冲区上述收容输入缓冲区、提取输入缓冲区、收容输出缓冲区和提取输出缓冲区统称为工作缓冲区。与它们对应的输入、和提取输出缓冲区统称为工作缓冲区。与它们对应的输入、提取、输出操作,由相应的过程实现。提取、输出操作,由相应的过程实现。外部设备与主机的连接3.4.2 设备驱动程序设备驱动程序 每一台外部设备的使用都要涉及每一台外部设备

46、的使用都要涉及DMA 或中断过程,并要或中断过程,并要借助一些特定的寄存器进行机器指令级的操作。但是,用户借助一些特定的寄存器进行机器指令级的操作。但是,用户都是通过一些应用程序,使用简单的命令来使用外部设备的,都是通过一些应用程序,使用简单的命令来使用外部设备的,不可能进行这样一些低级的操作。不可能进行这样一些低级的操作。另一方面,随着计算机应用的深入和广泛展开,计算机另一方面,随着计算机应用的深入和广泛展开,计算机所使用的外部设备品种越来越多。即使同样一种用途的设备,所使用的外部设备品种越来越多。即使同样一种用途的设备,由于生产厂家不用,型号不同,其操作方法也会不同。由于生产厂家不用,型号

47、不同,其操作方法也会不同。操作系统只是设置了一些通用性的操作系统只是设置了一些通用性的I/O操作和管理模块,操作和管理模块,与设备的具体操作关系密切的程序,往往是设备制造厂家在与设备的具体操作关系密切的程序,往往是设备制造厂家在研制设备的同时开发的。这种程序就称为设备驱动程序。研制设备的同时开发的。这种程序就称为设备驱动程序。外部设备与主机的连接 1.设备驱动程序的功能设备驱动程序的功能 设备驱动程序进行的处理工作,对不同的设备有所不同,设备驱动程序进行的处理工作,对不同的设备有所不同,但基本任务是启动指定设备,并且在启动设备之前完成一系但基本任务是启动指定设备,并且在启动设备之前完成一系列准

48、备工作。一般地说,设备驱动程序的工作过程如下所述。列准备工作。一般地说,设备驱动程序的工作过程如下所述。(1)将应用程序中的抽象要求转换为具体要求)将应用程序中的抽象要求转换为具体要求 设备是由设备控制器控制的。但是用户与上层软件的应设备是由设备控制器控制的。但是用户与上层软件的应用程序并不了解设备控制器的细节,而只能给它提出抽象要用程序并不了解设备控制器的细节,而只能给它提出抽象要求求命令。而设备控制器又不能理解这些抽象要求。于是,命令。而设备控制器又不能理解这些抽象要求。于是,驱动程序就肩负了中间转换作用,要将抽象要求转换为具体驱动程序就肩负了中间转换作用,要将抽象要求转换为具体要求,确定

49、将命令、数据和参数分别送到设备控制器的哪个要求,确定将命令、数据和参数分别送到设备控制器的哪个寄存器。寄存器。外部设备与主机的连接 (2)对)对I/O请求进行合法性检查请求进行合法性检查检查用户要求是否能为设备接受,是否属于设备的功能范围。检查用户要求是否能为设备接受,是否属于设备的功能范围。(3)读出并检查设备状态)读出并检查设备状态 启动设备控制器的条件是设备就绪,如对打印机要检查:启动设备控制器的条件是设备就绪,如对打印机要检查:电源是否合上、是否有纸等;对软盘驱动器要检查:有无磁电源是否合上、是否有纸等;对软盘驱动器要检查:有无磁盘、有无写保护等。盘、有无写保护等。(4)传送必要的参数

50、)传送必要的参数 如要提供本次传送的字节数等。如要提供本次传送的字节数等。(5)设置工作方式)设置工作方式 例如对于异步串行通信接口要设置:传输速率、奇偶检例如对于异步串行通信接口要设置:传输速率、奇偶检验方式、停止位宽度及数据长度等。验方式、停止位宽度及数据长度等。(6)启动)启动I/O设备设备 完成上述工作后,即可向设备控制器发出启动命令。完成上述工作后,即可向设备控制器发出启动命令。外部设备与主机的连接 2.设备驱动程序的结构设备驱动程序的结构 一般说来,设备驱动程序应包含如下一般说来,设备驱动程序应包含如下5部分:部分:(1)设备标题()设备标题(device header););(2

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(外部设备与主机的连接课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|