什么是接口?常见接口有哪些?

CPU与外部设备、存储器的连接和数据交换需要通过接口设备实现,前者称为I/O接口,后者称为存储器接口。存储器通常在CPU的同步控制下工作,接口电路比较简单的I/O设备种类繁多,对应的接口电路也不同,因此接口只是I/O接口。



一、I/0接口的概念。


1、接口分类。


I/O接口的功能是通过系统总线将I/O电路与周边设备连接起来,根据电路和设备的复杂性,I/O接口的硬件主要分为两类


1)I/O接口芯片。


这些芯片大多是集成电路,通过中央处理器输入不同的命令和参数,并控制相关的I/O电路和简单的外部设备进行相应的操作。常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。


2)I/O接口控制卡。


有几个集成电路按照一定的逻辑组成一个组件,或者直接与CPU在主板上,或者插入系统总线插槽。


根据接口的连接对象,可以分为串行接口、并行接口、键盘接口、磁盘接口等。


2、接口功能。


由于计算机周边设备种类繁多,几乎采用机电传动设备,CPU在与I/O设备交换数据时存在以下问题


速度不匹配:I/O设备的工作速度比CPU慢很多,由于种类不同,速度差异很大。比如硬盘的传输速度比打印机快很多。


时序不匹配:每个I/O设备都有自己的定时控制电路,以自己的速度传输数据,不能与CPU的时序统一。


信息格式不匹配:不同的I/O设备有不同的格式存储和处理信息,如可分割。


可分为串行和并行两种,也可分为二进制格式,ACSII,BCD等。


信息类型不匹配:不同的I/O设备使用不同的信号类型,有的是数字信号,有的是模拟信号,所以处理方法不同。


由于上述原因,CPU和外部设备之间的数据交换必须通过接口来完成,通常接口具有以下功能:


1)设置数据存储和缓冲逻辑,以适应CPU和外部设备之间的速度差异。接口通常由一些存储器或RAM芯片组成。如果芯片足够大,可以实现批量数据传输;


2)可以转换信息格式,如串行和并行转换;


3)可以协调CPU和外部设备在信息类型和水平上的差异,如水平转换驱动器、数/模或模/数转换器等。


4)协调时序差异;


5)地址翻译和设备选择功能;


6)设置中断和DMA控制逻辑,确保在中断和DMA允许的情况下产生中断和DMA请求信号,接受中断和DMA应答后完成中断处理和DMA传输。


3、接口控制方式。


CPU通过接口控制外部设备的方法如下:

1)程序查询方式。


这样,CPU就可以通过I/O指令询问指定外设的当前状态,如果外设准备就绪,就可以输入或输出数据,否则CPU就会等待,循环查询。


这种方法的优点是结构简单,只需要少量的硬件电路。缺点是CPU的速度远高于外部设备,所以通常处于等待状态,工作效率很低。


2)中断处理方式。


这样,CPU就不再被动地等待,而是可以执行其它程序,一旦外部设置为数据交换准备就绪,就可以向CPU提出服务请求,如果CPU响应该要求,就暂时停止执行当前程序,转移执行与该请求相对应的服务程序,完成后,再继续执行原来中断的程序。


中断处理的优点是显而易见的。它不仅节省了查询外部设备状态和等待外部设备准备的时间,提高了CPU的工作效率,还满足了外部设备的实时要求。但是需要为每个I/O设备分配一个中断请求号和相应的中断服务程序,还需要一个中断控制器(I/O接口芯片)来管理I/O设备提出的中断请求,如设置中断屏蔽和中断请求优先级。


另外,中断处理方式的缺点是每传送一个字符都要中断,启动中断控制器,还要保留和恢复现场,这样才能继续执行原始程序,所需的工作量很大,如果需要大量的数据交换,系统的性能就会很低。


3)DMA(直接存取)传输模式。


DMA最明显的特点之一是它不使用软件,而是使用一个特殊的控制器来控制内存和外部设备之间的数据交流,这大大提高了CPU的工作效率。


DMA控制器输前,DMA控制器将向CPU申请总线控制权,如果CPU允许,则将控制权交给CPU,因此,在数据交换过程中,总线控制权由DMA控制器掌握,传输结束后,DMA控制器将总线控制权交给CPU。


二、常见接口。


1、并行接口。


当前,电脑上的并行接口主要是打印机端口,接口不再采用36针接头,而是采用25针D型接头。所谓并行,就是8位数据同时通过并行线传输,使数据传输速度大大提高,但是并行传输线的长度受到限制,因为长度越大,干扰越大,容易出错。


目前常见的并口有五种:4位、8位、半8位、EPP和ECP,大部分PC机都有4位或8位的并口,很多使用INTEL386芯片组的便携机都有EPP,支持所有IEE1284并口规格的电脑都有ECP并口。


标准并行口4位、8位、半8位:


四位口一次只能输入四位数据,但可以输出八位数据;八位口一次可以输入和输出八位数据;半8位数据也可以。


EPP端口(增强并行端口):由INTEL等公司开发,允许8位双向数据传输,可连接扫描仪、LAN适配器、磁盘驱动器、CDROM驱动器等各种非打印机设备。


ECP端口(扩展并行端口):由Microsoft和HP开发,可以支持命令周期、数据周期和多个逻辑设备的位置,DMA可以用于多任务环境(直接存储器访问)。


目前,几乎所有586台机器的主板都集成了并行插座,标有Paralle1或LPT1,是一个26针的双针插座。


2、串行接口。


电脑的另一个标准接口是串行端口,目前的PC机通常至少有两个串行端口COM1和COM2。串行端口不同于并行端口,因为它的数据和控制信息是一个接一个的串行传输的。这样,虽然速度会慢一些,但是传输距离比并行端口长,所以长距离的通信应该使用串行端口。通常COM1使用9针D型连接器,而COM2有些使用老式DB25针连接器。


3、磁盘接口。


1)IDE接口。


IDE接口又称ATA端口,只能连接两个容量不超过528M的硬盘驱动器。接口成本很低,所以在38*86时期很受欢迎。但是大部分IDE接口不支持DMA数据传输,只能使用标准的PCI/O端口指令传输所有命令、状态和数据。几乎所有的586主板都集成了两个40针的双排IDE接口插座,分别标注为IDE1和IDE2。


2)EIDE接口。


与IDE接口相比,EIDE接口有了很大的改进,是目前最流行的接口。


首先,它支持的外部设备不再是2个,而是4个。除了硬盘,它支持的设备还包括CD-ROM驱动磁盘备份设备等。


其次,EIDE标准取消了528MB的限制,取而代之的是8GP限制。


EIDE具有较高的数据传输速度,支持PIO模式3和4标准。


3)SCSI接口。


SCSI(SmallComputerSystemInterface)小型计算机系统接口广泛应用于做图形处理和网络服务的计算机中。除硬盘外,SCSI接口还可与CD-ROM驱动、扫描仪、打印机等连接,具有以下特点:


*7个外设可以同时连接;


*总线配置为并行8位、16位或32位;


*允许最大硬盘空间为8.4GB(部分已达9.09GB);


*数据传输速度较高,IDE为2MB/秒,SCSI一般为5MB/秒,FASTSCSI(SCSI-2)为10MB/秒,最新SCSI-3为40MB/秒,EIDE为16.6MB/秒;


*成本远高于IDE和EIDE接口。此外,SCSI接口硬盘必须与SCSI接口卡配合使用,SCSI接口卡远高于IED和EIDE接口。


*SCSI接口是智能的,可以相互通信,而不会增加CPU的负担。CPU必须介入IDE和EIDE设备之间的数据传输,而SCSI设备在数据传输过程中起着主动作用,并且可以在SCSI总线中具体执行,直到完成后再通知CPU。


4)USB接口。


最新的USB串行接口标准由Microsoft、INTEL、Compaq、IBM等大公司推出。它提供了机箱外的热即插即用连接。用户在连接外部设备时,不需要打开机箱,关闭电源,而是采用级联的方式。每个USB设备用一个USB插头连接到一个外部设备的USB插座,它本身为下一个USB设备提供一个USB插座。通过这种连接,一个USB控制器可以连接多达127个外部设备,每个外部设备之间的距离可以达到5米。USB统一的4针圆形插头将取代机箱后的许多串/并口(鼠标、MODEM)键盘等插头。USB可以智能识别USB链上外围设备的插入或拆卸。除了连接键盘、鼠标等,USB还可以连接ISDN、电话系统、数字音响、打印机、扫描仪等低速外部设备。


三、I/O扩展槽。


I/O扩展槽是I/O信号传输的路径,是系统总线的延伸。可以插入显示卡、解压卡、MODEM卡、声卡等任何标准选项。通过I/O扩展槽,CPU可以读写连接到该通道的所有I/O接口芯片和控制卡。


根据总线的类型,主板上的扩展槽可分为ISA、EISA、MAC、VESA和PCI。


1、ISA插槽。


黑色分为8位和16位。16位扩展槽可以插入8位和16位控制卡,但8位扩展槽只能插入8位卡。


2、EISA插槽。


棕色,外观和长度和16位ISA卡一样,但是深度比较大,可以插入ISA和EISA控制卡。


3、VESA插槽。


棕色,位于16位ISA扩展槽下,与ISA插槽配合使用。


4、PCI插槽。


白色,和VESA插槽一样长,和ISA插槽平行,不需要和ISA插槽一起使用,只能插入PCI控制卡。由于主板空间有限,PCI插槽占据ISA插槽的位置。