您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 第5章_输入输出基本技术
重庆理工大学第5章输入输出基本技术5.1输入输出概述5.2输入输出的控制方式5.38086的中断系统5.4I/O接口中的中断控制电路5.5I/O接口芯片概述重庆理工大学教学内容(4学时)•I/O端口编址方法与特点•常用I/O控制方法的原理及特点•无条件传送方式程序设计方法与实例•条件传送方式程序设计方法与实例教学目标•理解接口、端口的区别和联系,了解为什么要使用接口•掌握常用I/O控制方法的原理及特点•学会两种程序直接控制方式的原理及程序设计方法•理解中断传送方式、DMA传送方式的原理及工作过程教学重点及难点•接口、端口的区别和联系•常用I/O控制方法的原理及特点•两种程序直接控制方式的原理及程序设计方法(重、难点)重庆理工大学输入/输出:计算机通过外围设备同外部世界通信或交换数据外设接口:把外围设备同微型计算机连接起来实现数据传送的控制电路(介于主机和外设之间的一种缓冲电路称为I/O接口电路).5.1输入输出概述系统结构特点:•软件硬件化•采用总线结构数据总线(DB)控制总线(CB)地址总线(AB)中央处理器CPU内存储器I/O接口I/O接口I/O设备I/O设备图6-1典型微型计算机系统的结构框图INPUT/OUTPUT输入/输出重庆理工大学5.1.1外设接口的功能外围设备的品种繁多有机械式的、电子式的、机电式的、磁电式的,以及光电式的等等;外围设备所处理的信息也多种多样有数字信号、模拟信号、开关信号、电压信号或电流信号等等;外围设备工作速度相差悬殊传送信息的格式和电平高低等也是多种多样串行传输标准RS232的电平、TTL电平格式不同;串行数据格式和并行数据格式一、外设接口电路的多样性和复杂性重庆理工大学(1)转换信息格式——例如串/并转换、并/串转换、配备校验位等(2)提供联络信号——设备“就绪”、“忙”,数据缓冲器“满”、“空”等状态信号(3)协调定时差异——必要时要对传输的数据或地址加以缓冲或锁存(4)进行译码选址——在具有多台外设的系统中,外设接口必须提供地址译码和确定设备码的功能(5)实现电平转换——为使微型计算机同外设相匹配,接口电路必须提供电平转换和驱动功能(6)具备时序控制——有的接口电路具有自己的时钟发生器(7)可编程——对一些通用的功能齐全的接口电路,应该具有可编程序的能力二、外设接口电路应具有的功能常用I/O接口电路有:8259A可编程中断控制器接口电路、8255A可编程并行接口电路、8253可编程定时/计数器、8251A可编程串行接口电路、8237A可编程DMA控制器、A/D、D/A转换器等。重庆理工大学5.1.2接口与端口数据口DB数据状态口控制口ABCBCPU状态信息控制信息外设端口:I/O接口中可以由CPU读/写的寄存器图5-1简单的外设接口重庆理工大学CPU与外设之间的接口信息1.数据信息(Data)数字量——键盘等输入的数据;模拟量——如温度、压力、流量等;开关量——如开关的合与断等。2.状态信息(Status)是CPU与I/O外设正确进行数据交换的重要条件输入时,输入设备的信息是否准备好(READY);输出时,输出设备是否有空等(BUSY)。3.控制信息(Control)控制输入输出设备的启动和停止。模拟量必须先经过A/D转换器转换成数字量才能输入计算机;计算机控制信号的输出也必须先经过D/A转换器把数字量转换成模拟量才能去控制执行机构开关量要经过相应的电平转换才能与计算机连接数据信息、状态信息和控制信息都是通过数据总线传送的在控制端口,写出的数据表示CPU对外设的控制信号;在状态端口,读入的数据是外设的状态信息;只有在数据端口,才真正地进行数据信息的交换。重庆理工大学5.1.3IN/OUT指令1.IN指令(输入指令)格式:INA,port功能:AL←(port)或AX←(port+1)_(port)注意:(1)当端口地址为8位时,直接用立即数表示端口地址。(2)当端口地址为16位时,必须用DX寄存器表示端口地址。重庆理工大学例:INAL,100;表示将端口号为100的端口中的数据输入到寄存器AL中。INAX,100;表示将端口号为100和101的两个端口中的数据输入到寄存器AX中。重庆理工大学例:MOVDX,300INAL,DX由于端口号为300,不能用8位二进制数表示,所以需要先将端口号用MOV指令传送到寄存器DX,再用IN指令输入DX表示的端口号中的数据到寄存器AL中。重庆理工大学2.OUT指令(输出指令)格式:OUTport,A功能:(port)←AL或(port+1)_(port)←AX重庆理工大学5.1.4I/O端口的编址方式一个I/O接口总要包括若干个端口,如数据端口、命令端口、状态端口、方式端口、操作结果端口、地址索引端口等。I/O端口也必须进行编址以便能被主机访问。在微机系统中,对I/O接口的端口编址有两种方法:端口统一编址和端口独立编址。一、端口独立编址CPU存储器2016控制逻辑MEMRCBMEMWI/O接口1616IOWIORABDB220=1M存储单元I/O单元重庆理工大学独立编址方式的特点存储器和I/O端口在两个独立的地址空间中,I/O端口的读、写命令由来控制,访问I/O端口用专用的IN指令和OUT指令。独立编址方式的缺点需要有专用的I/O指令,而这些I/0指令的功能一般不如存储器访问指令那样丰富,所以程序设计的灵活性较差。典型系统8086采用的就是这种方式IOWIOR独立编址方式的优点I/O端口的地址码较短,译码电路比较简单;存储器同I/0端口的操作指令不同,程序比较清晰;存储器和I/O端口的控制结构相互独立,可以分别设计。重庆理工大学OUT43H,AL重庆理工大学二、统一编址存储器与I/O接口控制逻辑MEMRCBMEMWDBCPUABI/O端口存储单元1M图6–4存储器映像的I/O端口寻址重庆理工大学统一编址方式的优点不需要专用的I/O指令,从而使系统编程比较灵活;统一编址方式的缺点l/O端口占用了内存空间的一部分,显然内存空间必然减少,影响了系统内存的容量;访问l/O端口同访问内存一样,由于访问内存时的地址长,指令的机器码也长,执行时间显然增加。典型系统IntelMCS—51等系列单片微计算机就采用这种编址方式,这些微计算机中无专门的IN/OUT指令。统一编址方式的特点存储器和I/O端口共用一个地址空间;I/O端口读、写命令通过和来实现,所有访问存储器的指令都可用于I/O端口,包括存储器的算术逻辑运算指令。MEMRMEMWI/O端口的地址空间是内存空间的一部分,I/O端口的地址空间可大可小,从而使外设的数目几乎可以不受限制。重庆理工大学I/O指令:•若端口地址在0~FFH范围内,则用:端口直接寻址INAL,端口地址(输入)OUT端口地址,AL(输出)如:KOU1EQU40HKOU2EQU41HINAL,KOU1;AL=65HOUTKOU2,AL•若端口地址在0100~FFFFH范围内,则用:端口间接寻址MOVDX,端口地址INAL,DXOUTDX,AL如:MOVDX,KOU100INAL,DX65F30200外设0000H00FFHFFFFH0100HKOU1KOU2KOU311223344KOU100KOU101可寻址28=256个端口可寻址216=64K个端口11323201内存00000HFFFFFH0040H0041H重庆理工大学5.2输入输出的控制方式由于外设的工作速度与CPU的速度差别很大,因此主机在同外设进行数据传送时,何时能用IN或OUT指令输入或输出数据,是一个复杂的定时问题。要实现主机与外设之间数据的正确传送,关键问题是主机对外设的管理方式,也就是数据传送的控制方式。微机系统中数据传送的控制方式主要有程序控制方式、直接存储器存取(DMA)方式、通道方式和外围处理机方式。5.2.1主机对外设的管理方式重庆理工大学①无条件传送方式②查询传送方式③中断传送方式5.2.2程序控制方式这类传送方式的特点是以CPU为中心,通过预先编制好的输入或输出程序实现数据的传送。这种传送方式的数据传送速度较低,传送路径要经过CPU内部的寄存器,同时数据的输入输出的响应也较慢。重庆理工大学一、无条件传送方式(同步传送方式)实现办法:把I/O指令插入到程序中,当程序执行到该I/O指令时,外设必定已为传送数据作好准备,于是在此指令时间内完成数据传送任务。用途:主要用于外设的定时是固定的并且是已知的场合,外设必须在微处理器限定的指令时间内准备就绪,并完成数据的接收或发送。定义:假设输入接口数据已经准备好,或者输出设备是空闲的,此时CPU无需查询状态,可直接用IN和OUT指令完成与接口之间的数据传送特点:无条件传送是最简便的传送方式,它所需的硬件和软件都较少重庆理工大学无条件传送方式工作流程及工作过程演示重庆理工大学Dtordw100dup(?)movdx,0100hleabx,dtorxoral,alAgain:moval,dlout20h,al;断开所有继电器callneardelay1;模拟继电器释放时间moval,dhout20h,al;闭合Kicallneardelay2;模拟继电器释放时间inax,10hmov[bx],axincbxincbxrcldh,1jncagain例:采用同步传送的数据采集系统(8路采样)接口输入口输出口Delay1procnearpushaxpushdxmovax,3ffhLoop2:movdx,0ffffhLoop1:decdxjnzloop1decaxjnzloop2popdxPopaxretDelay1endp重庆理工大学定义:CPU与I/O设备的工作往往是异步的,通常在程序控制下进行数据传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。这种方式就是查询式传送发生。二、查询式传送方式(异步传送方式)用途:CPU与I/O设备的工作异步的场所实现方法:利用查询方式进行数据输入/输出操作之前,CPU从接口读取外设状态信息(查询输入数据是否准备好/输出设备是否空闲),只有确认外设已经具备了传送条件后,才能用IN和OUT指令完成数据传送特点:数据传送效率低,需要接口提供外设状态信息重庆理工大学查询方式数据传送工作流程及工作过程演示重庆理工大学输入状态信息NREADY?输入数据Y图6–5查询式输入数据的流程图SCAN:INAL,TESTAL,80HJZSCANINAL,SCAN:INAL,状态口地址;取状态信息TESTAL,01H;测忙闲标志JNZSCAN;忙,转移MOVAL,OUT数据口地址,AL;输出数据读状态端口YBUSY?读出数据N准备输出数据图6-6为查询式输出数据的程序流程图重庆理工大学例:采用查询方式传送的数据采集系统(8路采样)Start:movdl,0f8h;1111,1000启动A/D转换leadi,detor;输入数据存放地址Again:moval,dl;andal,0efh;AL=1110,1000,使D4=0out4,al;停止A/D转换,calldelay;moval,dl;AL=1111,1000out4,al;启动A/D转换并选择模拟量A0poll:inal,2;输入状态信息shral,1;jncpoll;若未Ready,等待inal,3;否则,输入数据stosb;将数据存入内存incdl;取下一个模拟量jneagain;状态端口数据口状态口控制口A7~A0D0重庆理工大学三、中断传送方式特点:外设与外设可以工作于并行工作方式;CPU与外设工作于并行工作方式。系统工作效率较高实现方法:程序中安排好在某一时刻启动某一台外设,然后CPU继续执行其主程序;当外设完成数据传送的准备后,向CPU发出“中断请求”信号,在CPU可以响应中断的条件下,现行主程序被“中断”,转去执行“中断服务程序”,在“中断服务程序”中完成一次CPU与外设之间的数据传送,传送完成后仍返回被中断的主程序,从断点处继续执行。用途
本文标题:第5章_输入输出基本技术
链接地址:https://www.777doc.com/doc-4053970 .html