第4__输入输出接口.ppt_第1页
第4__输入输出接口.ppt_第2页
第4__输入输出接口.ppt_第3页
第4__输入输出接口.ppt_第4页
第4__输入输出接口.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

输入输出接口,第4章输入输出接口,基本知识,第4.1节基本知识输入/输出设备是外部设备,简称外设。微机与外设之间的信息交换称为输入和输出。存储器与系统总线相连,CPU可直接访问,外设则需要通过接口与系统总线相连接口:外设与总线之间的中间环节,是计算机与外设交换信息的控制电路,接口的功能:数据缓冲外设数据输入到总线时需要缓冲数据锁存输出总线数据到外设时需要锁存传输控制命令和状态信息计算机与外设有时需使用硬件握手信息转换串并转换、数模转换,CPU与外设传送的信息,一.CPU与外设传输的信息1)数据信息:数字量、开关量、模拟量2)状态信息:反映外设工作状态,由外设通过接口传送给CPU输入设备:如准备好信号(READY),表明输入数据是否准备就绪输出设备:如忙信号(BUSY),表明输出设备是否处于空闲3)控制信息:CPU通过接口传送给外设,如启动信号或停止信号端口:接口电路中可以被寻址访问的存储单元数据信息存放在接口的数据端口或数据缓冲器中状态信息存放在接口的状态端口中控制信息存放在接口的控制端口中三种信息按理应分别传送,但微机中CPU只能通过IN和OUT指令与外设交换信息,因此状态信息和控制信息也被广义地看作一种数据信息状态信息被看作一种输入数据,控制信息被看作一种输出数据,二者均通过数据总线来传送,I/O端口编址,CPU对外设的输入输出操作,实质是对接口芯片中各端口的读写操作二.I/O端口的编址1.内存与I/O端口统一编址:外设端口的地址空间是内存地址空间的一部分,所有访问内存空间的指令均能访问I/O端口2.独立编址:内存与I/O端口具有独立的地址空间,CPU通过专用的IN和OUT指令访问I/O端口,8086系统的I/O空间,8086计算机系统的I/O空间8086计算机系统采用独立编址,内存范围:00000FFFFFH,I/O地址范围:0000FFFFH,8086用低16根地址线,寻址64KB端口偶地址端口数据由低8位数据总线(D7D0)传送奇地址端口数据由高8位数据总线(D15D8)传送奇、偶地址端口的访问由/BHE和A0控制I/O端口的读/写控制信号为/IOR和/IOW注:IBMPC/XT机实际只使用低10位地址线A9A0寻址1KB端口,多使用8位端口,由D7D0传送数据,端口多为偶地址,访问时,接口芯片片选信号/CS由A9A1译码产生,要求A0总为0,现代计算机中,通过转换电路可实现连续奇、偶端口地址访问,CPU与外设的数据传送方式,第4.2节CPU与外设的数据传送方式各种外设工作速度相差较大,因此CPU与不同外设应采用不同方式传送一.无条件传送方式CPU不需要检测外设状态,直接使用IN和OUT命令完成输入和输出1。无条件输入注:名为无条件,实为有条件,传送不能太频繁,以保证每次传送时,外设都已准备就绪,无条件传送方式,无条件输出,MOVDX,160HOUTDX,AL输出的数据在AL中存放输出端口地址为160H,查询传送方式,二.查询传送方式CPU不断检测外设状态,外设满足条件时才传送数据。特点:电路和程序简单,但占CPU时间,效率较低。常用一位或几位表示外设状态1.查询输入,三态,缓冲,器,/OE,160H,D7,D0,D0,/IOW,地址,译码,器,A15,A1,/CE,A0,/IOR,162H,164H,/EN,EOC,ADC,DB,锁,存,器,/R,Q,C,D,+5V,查询输入工作原理,状态锁存器,查询传送方式,1)启动ADC:对164H端口执行写操作,164H清状态MOVDX,164HOUTDX,AL;启动ADCREAD1:MOVDX,162HINAL,DX;读状态TESTAL,1;判断状态位JZREAD1MOVDX,160HINAL,DX;读取数据RETREADENDP,查询传送方式,查询输出,D7,D0,D0,160H,/IOW,地址,译码,器,A15,A1,CS,A0,162H,164H,RDY,DB,锁,存,器,Q,C,D,+5V,R,C,ACK,/IOR,DAC,CLK,状态锁存器,查询输出工作原理,查询传送方式,1)CPU输出数据:对160H端口执行写操作,160H输出数据MOVDX,164HOUTDX,AL;启动DACMOVDX,162HWRITE1:INAL,DX;查询状态TESTAL,1JNZWRITE1RETWRITEENDP,中断传送方式,三.中断传送方式CPU变主动查询为被动中断,提高了系统效率1.中断工作原理说明外设“准备好”后,向CPU发中断请求CPU响应请求,停止当前运行程序,转到中断服务程序,处理请求处理完请求后,回到断点处继续执行数据交换等中断处理在中断服务程序中完成,中断服务程序,CPU响应中断时,原程序被打断的地方称为断点。断点地址是指中断服务程序结束后,返回原程序恢复执行的第一条指令的地址,又称返回地址。现场是指进入中断服务程序之前CPU各个寄存器的状态,中断传送方式,中断源任何能引发中断的事件都称为中断源,可分为:硬件中断源:I/O设备,系统时钟,故障源等软件中断源:程序中断指令(INT3)、指令运行出错(INTO)等2.中断方式接口电路,中断传送方式,中断方式接口电路工作过程说明外设准备好数据后,发EOC信号(负脉冲),把数据锁存到锁存器,同时置中断请求触发器输出为1,若此时中断屏蔽触发器输出Q为1,则INTR信号有效,向CPU产生中断请求当INTR为高电平,且CPU中断开放(IF1),则CPU响应中断,CPU输出/INTA信号,读取中断类型码,并清除中断请求触发器CPU根据所获得的中断类型码进入相应中断服务程序,读取数据MOVDX,162H;对输入数据INAL,DX,对中断的控制1)控制中断请求置中断屏蔽触发器输出为0,屏蔽中断请求MOVAL,0/1;屏蔽/允许MOVDX,160HOUTDX,AL,2)控制中断响应标志寄存器Flag中IF标志可控制CPU是否查询INTR引脚STI置IF=1允许中断CLI清IF=0禁止中断,中断处理过程,3.中断处理过程(重要)1)中断检测CPU在每条指令执行的最后一个时钟周期检测中断请求,若出现以下情况之一,则进入中断响应周期。有软件中断请求有NMI中断请求信号有INTR中断请求信号,且CPU允许中断响应,即IF=12)获取中断类型码进入中断响应周期以后:若是INTR,则产生/INTA信号,中断源通过数据总线的低8位将中断类型码传送给CPU;若是NMI,则类型码是2;若程序出错产生中断,则使用默认的类型码;若是中断指令,则指令中有类型码。3)保护断点系统自动将标志寄存器FLAG压入堆栈,清除TF和IF,并将断点处的CS和IP压入堆栈,先压CS后压IP,中断响应过程,4)得到中断向量系统根据中断类型码形成中断服务程序的入口地址,转入中断服务程序执行,每个中断都有自己的处理程序。5)中断服务处理进入中断服务程序后,通常由以下步骤组成保护现场中断处理恢复现场用中断返回指令(IRET)返回6)中断返回从堆栈中依次恢复断点处CS:IP和FLAG,中断优先级,4.中断优先级当系统中多个中断源同时发出中断请求时,CPU按照重要性和急迫性(中断优先级)择优响应,处理原则为:CPU先响应高优先级中断,再响应低优先级中断高优先级中断请求可以打断当前低优先级中断处理(中断嵌套)低优先级中断请求不能打断高优先级中断处理若出现同级中断请求,则等当前中断处理完后,才处理新的请求,中断优先级,链式优先权排队电路每个接口有一个中断允许输入IEI和中断允许输出IEO,只有IEI为高电平时才允许该接口芯片发中断请求IEO=IEIINTINT表示该设备有中断请求每个接口芯片的中断请求输出为OC门,具有负逻辑的“线或”关系响应中断时由INTA从接口读取中断类型码,中断优先级,中断优先权编码电路,电路说明中断请求锁存器锁存IR0IR7上的中断请求。优先级编码器把当前最高优先级的中断请求输入的序号进行编码后输出中断服务寄存器记录正在处理的最高级中断输入序号中断请求的最高级与正在处理的中断最高级比较,只有高于正在处理的最高级时,才能提出产生INTR信号,中断源的查找,5.中断源的查找有中断请求时需要查找中断源,以决定进入相应的中断服务程序1)应答方式CPU接收到中断请求INTR,发出中断响应信号/INTA,中断源收到此信号后返回相应中断类型码给CPU。(如8086可屏蔽中断请求)2)预先约定当有中断申请时,则转到固定地址执行中断服务程序如NMI请求、软件中断请求、8051单片机中断系统3)查询方式在中断服务程序中通过软件查询中断源,中断源的查找,软件查询中断源,查询方法优点:查询次序即是优先权次序省硬件,不需要硬件排队电路缺点:转至服务程序入口时间长,查询程序INAL,20HLEABX,TABCIRCLE:SHRAL,1JCNEXTADDBX,2CMPAL,0JNZCIRCLEJMPERRORNEXT:JMPCS:BXTABDWSUB1,SUB2DWSUB3,SUB4DWSUB5,SUB6DWSUB7,SUB8,DMA传送方式,四.DMA传送方式(DirectMemoryAccess)传统方式传送数据,均需要CPU参与,占用CPU时间,而在DMA方式下,利用专用接口电路(DMA控制器)可以在外设与存储器之间直接进行高速数据传送DMA方式适合大数据量高速传输优点:速度高,不需要CPU参与缺点:硬件接口复杂,DMAC价格高,8237:DMA控制器,具有4个通道,两片级连有7个通道。,DMA传送方式,DMA方式工作原理,DB数据总线AB地址总线CB控制总线DMACDMA控制器,1.外设准备就绪,则通过接口向DMAC发DMA传送请求2.DMAC向CPU发总线请求信号3.CPU若允许DMA操作,则发送总线允许信号给DMAC,4.DMAC拥有总线控制权,发送地址信号给内存5.向接口返回DMA允许信号6.DMAC控制内存与接口之间的数据直接传送7.数据传送结束,DMAC撤销总线请求信号HOLD8.CPU收回总线控制权,输入/输出实例,第4.3节输入/输出实例例1设计一个输出接口,控制8个发光二极管,每隔1秒钟点亮一只(只有一只亮),从上到下循环往复。数据总线D7D0的数据经74LS273锁存后控制发光二极管(74LS273为上升沿锁存,输出灌电流可达8mA,输出低电平时点亮发光管)地址总线A15A4经反相器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论