




已阅读5页,还剩77页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章 输入输出接口,微机接口概述及接口技术,I/O端口与其编址方式,CPU与外设之间的数据传送方式,端口地址译码, 掌握微型计算机接口技术的基本概念, 了解主机与外设之间的各种数据传送方式, 了解I/O端口的寻址方式,6.1 微机接口概述及接口技术,微型计算机系统可通过系统总线与外设相连,进行系统的扩展与开发,而外设必须通过接口才能与CPU交换信息。,DB AB CB,图1-1微机系统各类接口框图,CPU与外设两者的信号线不兼容,在信号线功能定义、逻辑定义和时序关系上都不一致 两者的工作速度不兼容,CPU速度高,外设速度低 若不通过接口,而由CPU直接对外设的操作实施控制,就会使CPU处于穷于应付与外设打交道之中,大大降低CPU的效率 若外部设备直接由CPU控制,也会使外设的硬件结构依赖于CPU,对外设本身的发展不利。,6.1 微机接口概述及接口技术,为什么要采用I/O接口,为了使CPU能适应各种各样的外设,就需要在CPU与外设之间增加一个接口电路,由它完成相应的信号转换、速度匹配、数据缓冲等功能,以实现CPU与外设的连接,完成相应的输入输出操作。一个接口的基本作用是在系统总线和I/O设备之间架起一座桥梁,以实现CPU与I/O设备之间的信息传输。,采用接口技术的目的,6.1 微机接口概述及接口技术,一、I/O接口的功能,作为接口电路,通常必须为外部设备提供几个不同地址的寄存器,每个寄存器称为一个I/O端口。通常的I/O接口示意图如下图所示:,I/O接口示意图,6.1 微机接口概述及接口技术,I/O接口内部一般由数据、状态、控制三类寄存器组成。,状态寄存器保存状态信息,CPU可从状态口读取当前状态; 控制寄存器用来保存CPU写入的控制字。,6.1 微机接口概述及接口技术,任何接口电路均包括如下基本功能:,1. 作为微型机与外设间传递数据的中间缓冲站;,2.正确寻址与微机交换数据的外设 ;,3.提供微型机与外设间交换数据所需的控制逻辑 与状态信号。,6.1 微机接口概述及接口技术,4. 完成中断判优、中断屏蔽,向CPU送入中断类型码等功能。,5.具有可编程特性,可以通过指令设定接口的工作方式,工作参数,以满足不同外设的要求。,6.联络功能,当CPU要访问外设时,首先要查询外设状态,能否接受访问,接口应将外设状态准备好,供CPU查询;或向CPU发特定的信号通知外设已准备好。,6.1 微机接口概述及接口技术,二、 CPU 与I/O之间的接口信号,1. 数据信息 (DATA),(1) 数字量,由键盘、光电输入机等输入的信息。(通常以二进制表示的数或以 ASCII 码表示的数或字符),CPU与外设交换的基本信息是数据,有三种类型:,6.1 微机接口概述及接口技术,(2) 模拟量,(3) 开关量,两个状态的量 (可以用0、1表示),例如电机的启与停,开关的合与开等。,6.1 微机接口概述及接口技术,2. 状态信息 (STATUS),输入时,输入设备是否准备好? (READY),输出时,输出设备是否空闲?(BUSY),反映当前外设工作状态的信息,例如:,6.1 微机接口概述及接口技术,3. 控制信息 (CONTROL),例如控制I/O 设备启动或停止等。,CPU 与外设之间的接口信息,CPU通过接口输出用以控制外设工作的信息。,6.1 微机接口概述及接口技术,三. I/O接口的基本结构,1)端口 I/O接口电路内部通常有若干个寄存器,用来存放CPU和外部设备之间传输的数据信息、状态信息和控制信息。 在接口电路中,把分配了地址的寄存器或缓冲电路称为端口。每个端口都有一个地址。,6.1 微机接口概述及接口技术,(1)数据端口:数据端口分为数据输入端口和数据输出端口。在输入时,保存外设发往CPU或内存的数据;在输出时,保存CPU或内存发往外设的数据。(2)状态端口:状态端口用来保存外部设备和接口电路本身的工作状态。CPU通过读取状态端口,就可以了解当前外设和接口电路的状态。(3)控制端口:控制端口用来存放CPU发来的控制指令,初始化接口电路,确定接口电路的工作方式和功能。,6.1 微机接口概述及接口技术,一个简单的外设接口图,6.1 微机接口概述及接口技术,1)地址译码电路 CPU在执行输入/输出指令时,首先要向地址总线发送端口地址(地址信号)。其中高位地址经过译码电路,用来选择不同的接口电路,而低位地址用来选择接口电路内部的不同端口。2)数据缓冲器与锁存器 接口电路内部具有数据缓冲器和数据锁存器,一方面起到CPU和外部设备之间速度不匹配的协调作用;另一方面,使得数据传输端在不传输数据时呈高阻状态。,6.1 微机接口概述及接口技术,外部设备与微处理器进行信息交换必须通过访问该外设相对应的端口来实现。具体访问这些外设端口的过程叫做寻址。,通常有两种编址方式:存储器映像的统一编址方式和I/O端口单独编址方式。,6.2 I/O 端口及其编址方式,一、存储器映像的I/O统一编址方式,端口地址与存储器地址统一编址,存储器映像的I/O端口统一编址方式,6.2 I/O 端口及其编址方式,1.端口寻址手段丰富,且不需要专门的I/O指令。,2.I/O寄存器数目与外设数目不受限制,而只受总存储容量的限制。,3.读写控制逻辑比较简单。,I/O端口要占用存储器的一部分地址空间,使可用的内存空间减少。,6.2 I/O 端口及其编址方式,二、I/O端口单独编址方式,I/O端口和存储器分开编址,I/O端口单独编址方式示意图,CPU访问I/O端口必须采用专用I/O指令,故也叫专用I/O指令方式(Special I/O Instruction Mode)。这些专用的I/O指令通常有两类,即输入指令IN、输出指令OUT及其相关指令组。对于不同的微处理器,具有各不相同的指令格式。,8086/8088等就采用了I/O端口单独寻址方式。 这些指令包含直接寻址和寄存器间接寻址两种 类型。,二、I/O端口单独编址方式 (续),采用直接寻址,则其指令格式为: 输入指令: IN AL,PORT 输出指令: OUT PORT, AL 这种直接寻址方式的端口地址为一个字节长,可寻址256个端口,采用间接寻址,则其指令格式为:输入指令:IN AL,DX 输出指令:OUT DX,AL 这种间接寻址方式的端口地址为两个字节长,由DX寄存器间接给出,可寻址64K个端口地址。,1. I/O口的地址空间独立,且不占用存储器地址空间。,2.地址线较少,且寻址速度相对较快 。,3.专门I/O指令的使用,使编制的程序清晰,便于理解和检查。,二、I/O端口单独编址方式 (续),6.2 I/O 端口及其编址方式,1. I/O指令较少,导致程序设计的灵活性较差;,2.需要存储器和I/O端口两套控制逻辑,增加了控制逻辑的复杂性。,二、I/O端口单独编址方式 (续),6.2 I/O 端口及其编址方式,16 DB 16,访问存储单元用地址总线A19A0,全译码后得到00000HFFFFFH共1MB地址空间. I/O端口只利用其中的一部分地址线,即A15A0地址线,可译出0000HFFFFH共64KB个I/O端口地址.由于端口是与存储器隔离的,所以用户可扩展存储器到最大容量,而不必为I/O端口留出地址空间.,28,6.2 I/O 端口及其编址方式,I/O与存储器(RAM)的地址重复,用不同的读写信号和指令区分。存储器读写:MEMW,MEMRI/O读写:IOR,IOW (PC/XT),IN AL, 10HOUT 10H, AL,AND SI, AXADD DI, BX,29,6.2 I/O 端口及其编址方式,28引脚,存储器、I/O控制信号,输出。,用来控制CPU进行的是对存储器的访问还是对外部输入输出口的访问.高电平为对存储器的访问, 低电平为对I/O口的访问,具体的高低电平由指令(软件)控制。,存储器/IO选择,6.2 I/O 端口及其编址方式,指令不同, 高低电平不同, 操作的对象也不同,6.2 I/O 端口及其编址方式,三、I/O端口地址分配 PC机的I/O地址线可有16根,对应的I/O编址可达64K字节,但由于IBM公司当初设计微机主板及规划接口卡时,其端口地址译码是采用非完全译码方式,即只考虑了低10位地址线A0A9,而没有考虑高6位地址线A10A15,故其端口地址范围是0000H03FFH,总共只有1024个端口,且将前512个端口分配给了主板,后512个端口分配给了扩展槽上的常规外设。,6.2 I/O 端口及其编址方式,系统板上接口芯片的端口地址,扩展槽上接口控制卡的端口地址,6.2 I/O 端口及其编址方式,允许用户使用的端口地址是300H31FH。这一段地址是留给用户在开发IBM_PC系列机插板(功能模块)时,使用的端口地址,系统不会占用。除已分配的地址外,其余的地址由厂商保留使用。,6.2 I/O 端口及其编址方式,I/O端口地址的选用原则1) 凡是被系统配置所占用的地址一律不能使用;2) 原则上讲,未被占用的地址,用户可以使用,但对计算机厂家声明保留的地址,不要使用。否则,会发生I/O端口地址重叠和冲突,造成用户开发的产品与系统不能兼容。3) 一般,用户可使用30031FH地址。但是,由于每一个用户都可以使用, 所以为了避免与其他用户开发的插板发生地址冲突,最好采用地址开关。,6.2 I/O 端口及其编址方式,门电路译码 采用各种门电路,如与门、或门和非门等组合电路构成译码电路。,译码器译码利用3-8译码器同样可以构成地址译码器。,6.3 I/O 端口地址译码,例:若总有9根地址线,接口电路的地址线有2根,因此地址空间最多为4个,假设占用四个地址(如下表):40H,41H,42H,43H,试设计该接口电路的译码电路。,6.3 I/O 端口地址译码,6.3 I/O 端口地址译码,四位比较器译码电路,6.3 I/O 端口地址译码,6.4 CPU与外设之间的数据传送方式,CPU与外设之间的数据传送方式,一、无条件传送方式,无条件传送一般适合于数据传送不太频繁的情况,如对开关、数码显示器等一些简单外设的操作。所谓无条件,就是假设外设已处于就绪状态,数据传送时,程序就不必再去查询外设的状态,而直接执行I/O指令进行数据传输。,6.3 CPU与外设之间的数据传送方式(续),无条件传送接口示意图,一、无条件传送方式,端口地址,输入操作:IN AL,PORT,一、无条件传送方式(续),当外设作输入设备,输入数据的保持时间相对于CPU的处理时间长,所以可以直接用缓冲器;外设作为输出设备,由于外设速度比较慢,CPU的数据必须在接口保持一段时间,因此必须采用锁存器。无条件传输时,输出时,必须确认输出锁存器的原数据无效,才能正确输出;输入时,必须认为输入缓冲器中的数据已准备好,否则读取错误。,一、无条件传送方式(续),无条件传送的接口电路举例,一、无条件传送方式(续),例:图中二极管接口电路,欲使LED自上而下依次发光2s,编写控制程序。,分析:因为LED总是准备好,为无条件输出。地址:10H,用OUT语句向对应的数据线写0。,第一次:0111 1111第二次:1011 1111最后: 1111 1110,MOV AL, 7FHLOP: OUT 10H, AL CALL delay2s ROR AL, 1 JMP LOP,一、无条件传送方式(续),二、查询传送方式,查询传送方式流程图,查询传送方式工作流程包括两个基本工作环节,(1)查询环节,主要通过读取状态寄存器的标志位来检查外设是否“就绪”。,(2)传送环节,当上一环节完成后,将对数据口实现寻址,并通过输入指令从数据端口输入数据,或利用输出指令从数据端口输出数据。,二、查询传送方式(续),1.查询式输入,查询输入接口电路,二、查询传送方式(续),1)查询式输入如图,状态线占用一根数据线D0,*STB是选通信号,在输入时随着数据一起从输入端口出现,是表示输入数据已就绪的状态信号。CPU先读状态口,若状态就绪,再读数据口。,数据口42H,状态口40H,STROBE:选通信号,二、查询传送方式(续), 外设未准备好,*STB为高,D触发器无脉冲,CPU读状态口(40H), 打开缓冲器(1), 读出DB0为低, 表示未准备好。,二、查询传送方式(续),外设准备好,STB为低,a. 打开锁存器,将输入数据锁存起来; b. STB有下降沿脉冲,使Q为高,CPU读状态口(40H)读入的DB0为高,表示数据有效,程序转而读数据口42H。,状态改变,二、查询传送方式(续), 读数据口42H,a. 打开缓冲器(2),读数据线,这时,缓冲器(1)高阻,所以数据线上是输入设备的数据; b. 同时,读数据口的控制线将D触发器清零。Q端输出0,下次再读状态口时读入的DB0为0,表示数据未准备就绪。, 重复、步骤,二、查询传送方式(续),例:从输入设备上输入1000个字节的数据,传送到存储器的缓冲区,外设数据端口42H,状态端口40H,状态线为DB0。,DATA SEGMENT BUFFER DB 1000 DUP(?)DATA ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATA LEA SI, BUFFER MOV CX, 1000LOP: IN AL, 40H ;读状态口 TEST AL, 01H;判断数据是否就绪,JZ LOP;未就绪,重复读取IN AL, 42H;读数据口MOV BYTE PTR SI, ALINC SILOOP LOPHLT,二、查询传送方式(续),2)查询式输出如图,OBF(Output Buffer Full):输入信号,为1表示输出缓冲器满,即数据已经到外设输入口;ACK(Acknowledge): 输出信号,应答,为0表示数据已被外设取走,可以发送下一个数据。,数据口62H,状态口60H,OBF,ACK,二、查询传送方式(续), CPU输出数据,锁存器选通,将数据输入锁存器,同时,D触发器有脉冲,使OBF为1,通知外设取数据。,二、查询传送方式(续), CPU读状态口,因为外设速度较慢,数据输入后有个读取的过程,所以外设未完全取走数据时,ACK信号为高,因此读取的DB0为高,表示外设还未将数据取走,CPU不能送入下一个数据。,状态口DB0为1,二、查询传送方式(续), 外设取走数据,ACK信号为低,将D触发器清零,Q端输出为0.因此读取状态口的DB0为低,表示外设已将数据取走,CPU可以继续送入下一个数据。,状态口DB0为0, 重复、步骤,二、查询传送方式(续),例:将BUFFER区50个字节输出,外设数据端口62H,状态端口60H,状态线为DB0。,DATA SEGMENT BUFFER DB 50 DUP(3)DATA ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATA LEA SI, BUFFER MOV CX, 50LOP: MOV AL, SI OUT 62H, AL;输出数据LOP1: IN AL, 60H;读取状态口 TEST AL, 01H; 判断外设是否取走数据,JNZ LOP1;未取走,等待INC SI ;取走,输出下一个LOOP LOPHLT,二、查询传送方式(续),查询传送流程,2.中断传送方式,所谓中断,就是当CPU正常运行程序时,由于内部或外部的随机事件,引起CPU暂时中止正在运行的程序,转而去执行请求中断的外设(或内部事件)的中断服务程序,中断服务结束后再返回被中止的程序。这一过程称为中断。,二、中断传送方式,中断的用处:,主机可以与外设同步并行操作实时处理;故障处理,断点,主程序,中断服务程序,中断请求,对外设进行处理,继续执行,返回断点,二、中断传送方式(续),中断传送流程,二、中断传送方式(续),四、DMA方式,DMA (Direct Memory Access): 是存储器与外设或存储器之间进行大量数据传送的方法,是在DMA控制器(DMAC)的控制下进行的。,四、DMA方式,DMA与程序控制数据传送路径比较,DMA与程序控制数据传送路径的比较,四、DMA方式(续),1.DMA传送的工作原理,DMA传送原理图,四、DMA方式(续),DMA工作流程,四、DMA方式(续),(2)CPU 响应后,接管对总线的控制,进入 DMA方式。,(1) 能向CPU 发出 BUSRQ 请求信号。,(3) 能发出地址信息,并对I/O端口或存储器寻址。,2.DMA 控制器的基本功能,四、DMA方式(续),(5)决定数据传送的地址和数据传送的长度。,(4)发出读、写控制信号。,(6)判断DMA 操作的结束,撤消总线请求信号,使CPU 恢复正常工作。,3. DMA操作的基本方法,(1)CPU停机方式,DMA传送时,CPU停止工作,不再使用总线。,(2)周期挪用方式,利用窃取CPU不进行总线操作周期进行DMA传送,四、DMA方式(续),(3)周期扩展方式,利用外加时钟电路,当进行DMA时,时钟电路向CPU发送加宽时钟信号。,4. DMA操作方式,(1)单字节方式,DMA控制器操作每次均只传送一个字节。,(2)字组方式,也叫请求方式或查询方式。这种方式以有DMA请求为前提,能够连续传送一批数据。,四、DMA方式(续),(3)连续方式,连续操作方式是指在数据块传送的整个过程中,不管DMA请求是否撤消,DMA控制器始终控制着总线。除非传送结束或检索到“匹配字节”,才把总线控制权交回CPU。,从DMA操作角度来看,以连续方式最快,字组方式次之,单字节方式最慢。,从CPU的使用效率来看,则正好相反,以单字节方式最好,连续方式最差,字组方式居中。,四、DMA方式(续),DMA传送流程,6.3 简单的I/O接口芯片应用,6.3.1 常用芯片功能介绍,1单向三态缓冲器 74LS244,74LS244 缓冲器主要用于三态输出的地址驱动器、时钟驱动器、总线定向接收器和定向发送器等。,74LS244 是一个典型的三态输出的 8 缓冲器。,由于三态门具有“通断”控制能力,所以可用作输入接口。利用三态门作为输入信号接口时,要求信号的状态是能够保持的。这是因为三态门本身没有对信号的保持或锁存能力。,2锁存器接口芯片,(1)锁存器 74LS273 由于三态门器件没有数据的保持能力,所以它一般只用作输入接口,不能直接用作数据输出接口。数据输出接口通常是用具有信息存储能力的双稳态触发器来实现。,(2)三态输出锁存器 74LS374,从引线上可以看出,它比74LS273多了一个输出允许OE端。只有当OE 0时74LS374的输出三态门才导通。当OE1 时,则呈高阻状态。,6.3.2 简单的I/O接口设计应用,如果希望完成如下任务:当开关接通时,CPU执行程序段ON;当开关断开时,CPU执行程序段OFF。下述指令的执行可以完成该任务: MOV
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程保修的处理方案(3篇)
- 安全教育年度培训计划课件
- 安全教育平台培训考核课件
- 农业废弃物资源化利用在2025年的技术创新动态报告
- 安全教育培训骗人课件
- 安全教育培训途径课件
- 农业产业园项目农产品质量安全监管体系可行性研究与2025年效益评估报告
- 农业产业园项目农业科技成果转化与2025年经济效益评估报告
- 安全教育培训课件案例
- 2025年新能源社区智能微电网技术创新与应用案例深度解析报告
- 2025深入贯彻中央八项规定精神学习教育测试题和答案
- 医生进基层活动方案
- 2025-2030年中国蔬果保鲜剂行业市场深度调研及发展趋势与投资价值评估研究报告
- 2025年中国卡通公仔相机行业市场调查与发展研究报告
- 云南省土地征收农用地转用审批管理细则 (2023年修订)
- 2024年长庆油田分公司招聘考试真题
- 药剂知识竞赛试题及答案
- 尊师重教主题班会教案
- 医院质量与安全管理委员会制度职责及工作流程
- 幼儿园获奖公开课:中班数学《2和3的组成和分解》课件
- 数字化环境下航空装备研制质量管理的思考
评论
0/150
提交评论