




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章I/O接口和总线,6-1、I/O接口,三、CPU与外设间的数据传送方式,一、I/O接口的功能,二、I/O端口及寻址,四、I/O译码电路和PC机的I/O地址分配,6-2、总线一、总线概念二、IBMPC总线,接口电路:泛指任何两个系统之间的交接部分。在计算机系统里,接口指微机(或CPU)与外部设备之间的连接通道及有关的控制电路。,一面:微机(或CPU)另一面:外部设备,Interface,接口技术:研究微机(或CPU)与外界进行最佳耦合、实现高效、可靠信息交换的软、硬件技术技术。,6-1I/O接口,I/O接口的功能,I/O接口(电路)是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路,计算机与外设之间信息交换应解决的问题:,*速度不匹配*信号电平不匹配*信号格式不匹配*信号时序不匹配,I/O接口的功能,对输入输出数据进行缓冲和锁存输入接口一般要有缓冲环节(如三态门),只有当CPU选通某个输入设备时才允许该设备选通,其它输入设备应与总线隔离。输出接口一般要有锁存环节(如锁存器),使锁存器保持数据,以便使较慢的外设有足够的时间对数据进行处理。对信号的形式和数据的格式进行变换微机只能直接处理一定格式的数字量,与外设使用的信号可能完全不同。例电平转换(TTL,MOS)、正负逻辑转换、串并转换、A/D转换、D/A转换等对I/O端口进行寻址一个微机系统中,通常会有多个外设,且每个外设可能会有多个I/O端口与CPU和I/O设备进行联络CPU与I/O设备只有在双方都准备好的情况下才能可靠的进行数据传送。,输入三态输出锁存,I/O接口的功能,各种接口功能的接口电路都已经做成集成电路芯片最简单的接口电路芯片有74LS244、74LS273等。目前常使用可编程控制的接口电路芯片,部分芯片的复杂程度不亚于CPU。每种CPU都有与之配套的可编程控制的接口电路芯片。例并行接口功能的接口芯片有:8255(Intel系列)、6821(68000系列)、PIO(Z80系列)等本书以IntelCPU的接口电路芯片系列为例进行研究,主要研究的接口电路芯片有8253(定时/计数接口功能)、8255(并行接口功能)、8250(串行接口功能)、8237(DMA接口功能)、8259(中断接口功能)等。,二、I/O端口及寻址,一般由数据端口,状态端口,控制端口组成,分别传送数据信息、状态信息和控制信息。从硬件角度,每个端口可以理解为一个寄存器。每一个I/O端口对应一个I/O地址。,(一)可编程控制接口电路的一般结构,数据端口:数据信息是CPU和I/O设备交换的基本信息,通常是8位或16位。数据信息可以输入,也可以输出。在输入过程中,数据信息由外设经过外设和接口之间的数据线进入接口,再到达系统的数据总线,从而送入CPU。在输出过程中,数据信息从CPU经过数据总线进入接口,再通过外设和接口之间的数据线送到外设。外设和接口之间的数据信息可以是串行的或并行的,相应也要使用串行接口或并行接口。,状态端口:状态信息反映了当前外设的工作状态,它是由外设通过接口送入CPU。状态信息是输入信息。对于输入设备来说,通常用准备就绪(Ready)信号来表示待输入的数据是否准备就绪,如为准备就绪状态,则CPU可以接收外设送来的数据信息,否则CPU等待。对于输出设备来说,通常用用忙(Busy)信号来表示输出设备是否处于空闲状态,如为空闲状态,则CPU可以向外设发送数据信息,否则CPU等待。,控制端口:控制信息是CPU向接口发出的各种命令字或控制字,以便控制接口或外设的动作。接口芯片的功能不同,命令字或控制字的内容也不同,常见的命令字或控制字有工作方式选择控制字、操作命令字等。,微机(或CPU)通过接口电路(芯片)与外部设备交换信息。一个可编程的接口电路芯片通常含有多个寄存器每个寄存器通常称之为一个端口(port)。微机系统为每个端口都安排一个地址,以便能被微机系统访问端口是接口电路的最基本的单元。,二、I/O端口及寻址,二、I/O端口及寻址,(一)I/O端口的寻址,存储器映像寻址方式;I/O端口与存储器单元在同一个地址空间中进行统一编址。独立编址。I/O端口地址区域和存储器地址区域,分别各自独立编址。,1.存储器映像寻址方式。把每个I/O端口都当作一个存储器单元看待,I/O端口与存储器单元在同一个地址空间中进行统一编址。或者说,在整个地址空间中划分出一小块连续的地址分配给I/O端口。被分配给I/O端口的地址,存储器不能再使用。采用这种编址方式的微处理器有6800、6502、68000等。,优点:指令集中不含I/O指令,简化指令系统的设计;访问存储器的指令种类多、寻址方式多,对访问外设带来了很大的灵活性。缺点:外设占用部分内存地址,减少了内存可用地址范围,,(二)、I/O端口的寻址,2.I/O端口独立编址I/O端口独立编址(I/OMapped):也称为I/O隔离编址或I/O指令寻址方式,I/O端口地址和存储器地址区域分别各自独立编址。采用这种编址方式的微处理器有Z80、80X86等,例:8088/8086CPU(20条地址线)-存储器最大可编址范围:220=1MB(字节)IBMPC机的基本配置:64KBPC/XT机的基本配置:128KB-规定I/O端口的最大编址范围(A0-A15):216=64KIBMPC机的编址范围限定为:210=1024,(二)、I/O端口的寻址,2.I/O端口独立编址I/O端口独立编址(I/OMapped):也称为I/O隔离编址或I/O指令寻址方式,I/O端口地址和存储器地址区域分别各自独立编址。采用这种编址方式的微处理器有Z80、80X86等,优点:I/O端口不占用存储器的地址空间;使用了专门的I/O指令对端口访问,因而执行速度快、译码简单。缺点:专门的I/O指令功能相对较弱,一般只有传送功能,而没有运算功能。,(二)、I/O端口的寻址,三、CPU与外设间的数据传送方式,(一)简单的输入输出接口芯片简单的输入接口芯片74LS244、74LS245简单的输出接口芯片74LS273、74LS373,常用I/O芯片:缓冲器(Buffer)和锁存器(Latch)缓冲器:具有三态功能,一般无锁存功能,在外设和CPU之间起缓冲驱动和隔离作用。常用做输入接口芯片。锁存器:具有还有数据锁存记忆功能以及缓冲功能。常用做输出接口芯片。,(一)简单的输入输出接口芯片1.简单的输入接口芯片74LS244(8路单向数据缓冲器),第一组:四输入1A11A4;四输出1Y11Y4;允许端1G第二组:四输入2A12A4;四输出2Y12Y4;允许端2G,(一)简单的输入输出接口芯片2.简单的输入接口芯片74LS373:8D锁存(缓冲)器,具有三态输出的锁存器8输入:D1D88输出:Q1Q8LE:锁存引脚,电平触发OE:输出允许引脚,简单的输入接口芯片74LS373:8D锁存(缓冲)器简单的输入接口芯片74LS273:8D锁存器,具有三态输出的8D锁存器8输入:D1D88输出:Q1Q8LE:锁存引脚,电平触发OE:输出允许引脚,8D锁存器8输入:D1D88输出:Q1Q8CLK:锁存引脚,上升沿触发CLR:输出清零端,三、CPU与外设间的数据传送方式,(一)简单的输入输出接口芯片(二)CPU与外设间的数据传送方式,三、CPU与外设间的数据传送方式,程序控制下的数据传送通过CPU执行程序中的I/O指令来完成传送,无条件传送(同步传送)条件传送(查询传送)中断传送:实现主机和外设并行工作,提高效率直接存储器存取(DMA)CPU停机把控制权交给DMA控制器,由其控制DMA利用系统总线来完成外设和存储器间的数据传送,(一)简单的输入输出接口芯片(二)CPU与外设间的数据传送方式,1、无条件传送(同步传送)2、条件传送(查询传送)3、中断传送4、直接存储器存取(DMA),三、CPU与外设间的数据传送方式,(一)简单的输入输出接口芯片(二)CPU与外设间的数据传送方式,1、无条件传送如果计算机能够确信一个外设巳经准备就绪,就可以不查询外设的状态而直接进行信息传输,这种方式即称为无条件传送方式。无条件传送方式是最简单的输入/输出控制方法。选择输入接口电路的一般原则:输入三态(输入接口电路必须具有三态输出功能)输出锁存(输出接口电路一般应具有输出锁存功能)最简单的输入接口电路芯片(8位):74LS244最简单的输出接口电路芯片(8位):74LS273,1、无条件传送(同步传送),分析:该接口电路的地址为3F7H,实现无条件输入的实例:例,设计一个具有8个按键的输入接口电路,要求当开关K0接下时,CPU执行程序段FUNC0;当开关K1接下时,CPU执行程序段FUNC1;余类推,1、无条件传送(同步传送),核心程序段:MOVDX,3F7HINAL,DX,A,1、无条件传送(同步传送),核心程序段:MOVDX,3F7HINAL,DX,A,“INAL,DX”指令的时序分析,A,例,编程完成如下任务:当开关K0接下时,CPU执行程序段FUNC0;当开关K1接下时,CPU执行程序段FUNC1。,MOVDX,3F7HINAL,DXANDAL,01HJZFUNC0;假定程序段FUNC0与本程序段在同一内存段中INAL,DXANDAL,02HJZFUNC1;假定程序段FUNC1与本程序段在同一内存段中,例,编程完成如下任务:当开关K0接下时,CPU执行程序段FUNC0;当开关K1接下时,CPU执行程序段FUNC1。,1、无条件传送(同步传送)实现无条件输入的实例:,1、无条件传送(同步传送)实现无条件输入的实例实现无条件输出的实例,核心程序段:MOVDX,3F7HOUTDX,AL,“OUTDX,AL”指令的时序分析,例1,编写程序段,使L0、L7两个LED发亮,其它LED不亮:MOVDX,3F7HMOVAL,81HOUTDX,AL,例2,编写程序段仅使L1发亮:MOVDX,3F7HMOVAL,02HOUTDX,AL,1、无条件传送2、条件传送(查询传送),条件传送方式又称为程序查询方式。在采用有条件传送方式的接口电路中,除具有数据缓冲器或数据锁存器外,还应具有状态寄存器,以给出外设当前的状态。在接口电路中,状态寄存器也占用端口地址号。,条件传送方式流程:首先读入设备状态标志信息;再根据所读入的状态信息进行判断;若设备未准备就绪,则程序循环执行读设备状态信息;若设备准备好,则执行数据传送的I/O指令,完成数据的传送。,1、无条件传送2、条件传送(查询传送),CPU需不断查询外设的状态,一旦外设满足数据传送的条件,就执行IN或OUT指令,读入或输出数据。,1、无条件传送2、条件传送(查询传送),查询输入方式,设数据口的地址为80H,状态口的地址为81H,传送数据的总字节为COUNT,要求采用查询输入方式编程。,80H,81H,1、无条件传送2、条件传送(查询传送),查询输入方式,输入数据端口(8位数据缓冲器,可采用74LS244芯片)接口电路状态端口(相当74LS244的一位,用来输入Ready信号),80H,81H,查询输入方式,输入数据端口(8位数据缓冲器,可采用74LS244芯片)接口电路状态端口(相当74LS244的一位,用来输入Ready信号),当输入设备准备好后,就送出数据并发出选通信号,该选通信号的作用是:将数据打入数据锁存器;使D触发器置1,即状态位Ready=1。,80H,81H,查询输入方式,输入状态信号,执行INAL,81H,使Ready(bit0)AL,若Ready=1,则执行INAL,80H,使输入数据AL;同时使D触发器复位,Ready=0;(等待输入设备准备好下一个数据);若Ready=0,表示输入设备还没有准备好数据,则需要继续查询,直至Ready=1。,80H,81H,设数据口的地址为80H,状态口的地址为81H,传送数据的总字节为COUNT,要求采用查询输入方式编程。,MOVBX,0MOVCX,COUNTRS1:INAL,81HTESTAL,01HJZRS1INAL,80HMOVBX,ALINCBXLOOPRS1,1、无条件传送2、条件传送(查询传送),查询输出方式,输出数据端口(8位数据锁存器,可采用74LS273芯片)接口电路假定输入端囗地址为:80H状态端口(相当74LS244的一位,用来输入BUSY信号)假定状态端囗地址为:81H,80H,81H,查询输出方式,输出数据端口(8位数据锁存器,可采用74LS273芯片)接口电路状态端口(相当74LS244的一位,用来输入BUSY信号),80H,81H,当输出设备准备好后,就送出ACK信号,ACK信号将使D触发器清0,即状态位BUSY=0,表示不忙,允许送来新数据。,查询输出方式,80H,81H,输入状态信号,执行INAL,81H,使BUSY(D1)AL,若BUSY=1,表示输出设备正忙,不能接收新数据,则继续查询若BUSY=0,表示输出设备不忙,允许接收新数据,则应该执行OUT80H,AL,将数据输出至数据锁存器;同时还使D触发器Q端为高电平信号,使BUSY=1,表示输出设备正忙;,当输出设备检测到BUSY=1,就从数据锁存器读数据,然后发出ACK信号,使触发器复位(BUSY=0),允许送来新数据。,读入状态,忙否,?,数据外部设备,传送完否,?,结,束,N,Y,Y,N,初始化,MOVBX,OFSETDATMOVCX,COUNTRS2:INAL,81TESTAL,02HJNZRS2MOVAL,BXOUT80H,ALINCBXLOOPRS2,设数据口的地址为80H,状态口的地址为81H,传送数据的总字节为COUNT,要求采用查询输出方式编程。,三、CPU与外设间的数据传送方式,程序控制下的数据传送通过CPU执行程序中的I/O指令来完成传送,无条件传送(同步传送)条件传送(查询传送)中断传送:实现主机和外设并行工作,提高效率直接存储器存取(DMA)CPU停机把控制权交给DMA控制器,由其控制DMA利用系统总线来完成外设和存储器间的数据传送,(一)简单的输入输出接口芯片(二)CPU与外设间的数据传送方式,无条件、查询传送都需要CPU等待或不断查询,使CPU效率降低。中断传送:外设需要传送数据时,申请中断;当CPU允许中断,在中断服务程序中执行IN/OUT指令;然后返回主程序。,3、中断传送,第七章将详细讨论,查询方式的流程图,超时?,READY?,与外设进行数据交换,超时错,读入并测试外设状态,Y,N,Y,N,传送完?,防止死循环,复位计时器,N,Y,传数,查询等待,传数,查询等待,中断方式传送,CPU无需循环查询外设状态,而是外部设备在需要进行数据传送时才中断CPU正在进行的工作,让CPU来为其服务。即CPU在没有外设请求时可以去做更重要的事情,有请求时才去传输数据,从而大大提高了CPU的利用率。优点:CPU效率高,实时性好,速度快。缺点:程序编制较为复杂。,中断处理,CPU做其它工作,中断处理,CPU做其它工作,、DMA传送的基本概念,无条件、查询、中断传送,每传送一个数据都需要CPU干预一次,限制了数据传送的速度。,输入设备,输出设备,CPU,内存,DMA(DirectMemoryAccess):是一种不需要CPU干预也不需要软件介入的高速数据传送方式。在外设(如磁盘)与内存之间成批传送数据时,完全由硬件完成外设与内存的数据传送,而不必CPU的干预。对这一数据传送过程进行控制的硬件称为DMA控制器(DMAC)。,4、直接数据通信传送DMA,、DMA传送的基本过程,4个基本联络信号:DMAREQ,HOLD,HLDA,DMAACK,基本过程:外设通过DMAREQ向DMAC发出DMA请求信号;DMAC通过HOLD向CPU发出总线请求信号,希望占有总线;CPU在执行完当前总线周期后,通过HLDA向DMAC回响应信号;CPU让出总线,DMAC控制总线;DMAC通过DMAACK向外设发回DMA响应信号,通知外设;DMA传送开始,DMAC控制总线,数据直接在外设和存雠器之间传送,第12章将学习一个典型的可编程的DMAC82378237DMAC传送的实际工作过程如下:CPU对8237DMAC进行初始化设置外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制DMA传送DMA读存储器:存储器外设DMA写存储器:存储器外设DMAC自动增减地址和计数,判断传送完成否传送完成后,DMAC自动将将总线交给CPU控制,.可编程的DMAC8237,DMA传送的基本过程,4种传送方式的比较,无条件传送:慢速外设需与CPU保持同步查询传送:简单实用,效率较低中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送.,I/O地址的译码,四、I/O译码电路和PC机的I/O地址分配,采用I/O单独编址方案控制外设。8086访问外设时只使用低16位A0A15,寻址64K个8位I/O端口PC机仅使用低10位A0A9,可寻址1024个8位I/O端口,I/O地址的译码方法与存储器地址的译码方法基本一样;全译码方式部分译码方式线译码方式,P246图6-2为PC/XT的I/O端口地址分配表。P247图6-3为PC/AT的I/O端口地址分配表。,PC机I/O端口分配,四、I/O译码电路和PC机的I/O地址分配,图6-2:PC/XT的I/O端口地址分配,6.2系统总线,一、总线概念,(1)片级总线:又称芯片总线,或元件级总线。是通过芯片引脚而形成的总线,用于各种芯片间的互连。例CPU与存储器、I/O接口电路、译码器电路之间的连线,(2)系统总线:又称内部系统、板级总线、微机总线,用于微机系统中各插件板之间的互连。例如S-100总线、PC总线、ISA总线、PCI总线、STD总线、MULTIBUS等。(3)外部总线:又称通信总线,是微机系统之间或微机系统与其他电子系统之间信息传输的通路。如串行总线RS-232、RS-422;并行总线IEEE-488等各种标准总线(内总线和外总线)都在信号系统、电气特性、机械特性及模板结构等多方面做了规范定义。,系统总线(内总线)一般由三部分组成:(1)数据总线:用以实现微处理器、存储器及I/O接口间的数据交换。一般采用8、16位等数据线宽度,具有三态逻辑控制的双向数据总线。(2)地址总线:用于微处理器输出地址,以确定存储器单元地址及I/O接口部件地址。一般采用如16、20位等宽度,具有三态逻辑控制的单向传送地址总线。(3)控制总线:用来传送能保证计算机同步和协调工作的定时、控制信号,从而保证正确地通过数据总线传送各项信息的操作。其中有些控制信号由微处理器向其他部件输出,如读/写等信号;另一些控制信号则由其他部件输入到微处理器中,如中断请求、复位等信号。控制总线不需用三态逻辑。,一、总线概念,系统总线:用于微机系统中各插件之间信息传输的通路。IBM-PCX86系列微机的系统总线:指IBM公司及其兼容机所使用的系统总线,它是为配置外部I/O适配器和扩充存储器专门设计的一组I/O总线,又称为I/O扩展槽,可插入不同功能的插件板,用以扩展系统功能。,1、PC总线:2、ISA总线:3、EISA总线:4、PCI总线:5、其它:例USB总线,一、总线概念,IBM-PC及XT使用的总线称为PC总线,它是为配置外部I/O适配器和扩充存储器专门设计的一组I/O总线,又称为I/O通道,共有62条引线,全部引到系统板上8个62芯总线的扩展槽J1J8上,可插入不同功能的插件板,用以扩展系统功能。,1、最早用于PC-XT微机(8位数据线、20位地址线)2、以62脚的I/O扩展槽作连接器3、是PC兼容机最基本的系统总线,二IBMPC总线,PC/XT总线技术的微型计算机结构,二IBMPC总线,62根总线按功能可分为四类:数据传送总线8根;地址总线20根;控制总线26根。其它总线8根(+5V的2根、5V的1根、+12V的1根、12V的1根及地线3根),二IBMPC总线,1.数据总线D7D0共8条,是双向数据传送线,为CPU、存储器及I/O设备间提供信息传送通道。2.地址总线A19A0共20条,用来选定存储器地址或I/O设备地址。当选定I/O设备地址时,A19A16无效。20位地址线允许访问1MB存储空间,16位地址线允许访问64KB的I/O设备空间。这些信号一般由CPU产生,也可以由DMA控制器产生。,二IBMPC总线,3.控制总线控制总线共26条,可大致分为三类。1)纯控制线(21根、先重点掌握6根)IOR:(输出、低电平有效)I/O读命令,由CPU或DMA控制器产生。信号有效时,把选中的I/O设备接口中数据读到数据总线。IOW:(输出、低电平有效)I/O写命令,由CPU或DMA控制器产生,用来控制将数据总线上的数据写到所选中的I/O设备接口中。,二IBMPC总线,MEMR:(输出、低电平有效)存储器读命令,由CPU或DMA控制器产生,用来控制把选中的存储单元数据读到数据总线。MEMW:(输出、低电平有效)存储器写命令,由CPU或DMA控制器产生,把数据总线上的数据写入所选中的存储单元。,二IBMPC总线,AEN:(输出)地址允许信号,由8237A发出,此信号用来切断CPU控制,以允许DMA传送。AEN为高电平有效,此时由DMA控制器8237A来控制地址总线、数据总线以及对存储器和I/O设备的读/写命令线。在制作接口电路中的I/O地址译码器时,必须包括这个控制信号。ALE:(输出)地址锁存允许,由总线控制器8288提供。ALE有效时,在ALE下降沿锁存来自CPU的地址。目前地
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 舌簧管封装工岗位操作技能考核试卷及答案
- 织布机操作工协作考核试卷及答案
- 炼钢准备工质量追溯知识考核试卷及答案
- 2025年新员工劳动合同模板「」
- 有色金属强化熔炼工适应性考核试卷及答案
- 幼儿园教育活动设计与实施考试题库(含答案)
- 神经外科N0规培理论考试题(附答案)
- 护理核心制度考核试题(带答案)
- 电工五级试题库与答案
- 电池制液工数字化技能考核试卷及答案
- 液压与气压传动 第2版 马振福 高职课件0、1新
- 危化品安全管理学习课件
- SY∕T 7298-2016 陆上石油天然气开采钻井废物处置污染控制技术要求
- 突发事件处理记录表(标准范本)
- 磁敏传感器(品) 课件
- 美国航空无线电设备公司标准ARINC
- 影视艺术导论教材课件汇总完整版ppt全套课件最全教学教程整本书电子教案全书教案课件合集
- TSG-R0005-2022《移动式压力容器安全技术监察规程》(2022版)
- 三角堰水头高度与流量查算表
- 第1章 税务会计与纳税筹划概述
- GB∕T 41181-2021 坐姿椅
评论
0/150
提交评论