微机与外设数据传输_第1页
微机与外设数据传输_第2页
微机与外设数据传输_第3页
微机与外设数据传输_第4页
微机与外设数据传输_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

微机与外设数据传输第一页,共35页。5.1I/O接口概述5.1.1使用接口电路的原因接口可起到CPU与不同外设进行串行、并行信息的转换作用接口可起到模/数与数/模的转换作用非数字式信号必须经过转换,使其成为对应的数字信号才能送到计算机总线。这种A/D,D/A转换是通过接口来完成的。接口对I/O过程起到缓冲和联络作用解决外设存取速度和CPU速度不匹配的问题输入输出(I/O)接口:是把外部设备与微型计算机连接起来实现数据传送的控制电路。第二页,共35页。外设必须通过接口电路与微机系统总线相连接数据总线控制总线地址总线数据线控制线状态线接口电路外部设备第三页,共35页。5.1.2接口电路的分类

按通用性分类通用接口:可供多种外部设备使用的标准接口,目的是使微机正常工作。通常制造成集成电路芯片,也称为接口芯片。最初的IBM-PC使用的接口芯片:8284、8288、8255、8259、8237、8253后来的微机将这些芯片集成为大规模集成电路芯片,称为芯片组。专用接口:为某种用途或某类外设而专门设计的接口电路,目的在于扩充微机系统的功能。通常制造成接口卡,插在主板总线插槽上使用通用接口和专用接口的界限并不严格。第四页,共35页。接口电路的分类按可编程性分类

简单的输入/输出接口芯片如锁存器74LS373、单向缓冲器74LS244、双向缓冲器(数据收发器)74LS245等。可编程接口芯片:其功能可以由软件来选用控制。如并行输入输出接口8255、定时器/计数器8253、中断控制器8259、DMA控制器8237等。第五页,共35页。5.1.3接口电路的功能简单地说,一个接口的基本功能是在系统总线和I/O设备之间传输信号,提供缓冲作用,以满足接口两边的时序要求。接口的功能概括如下:寻址功能输入/输出功能数据转换功能联络功能中断管理功能可编程功能复位功能错误检测功能*对于一个具体的接口来说,未必全部具备这些功能,但必定具备其中的几个功能。第六页,共35页。5.1.4接口电路的基本结构数据线控制线状态线DBCBAB数据输入寄存器(or三态门)数据输出寄存器(锁存器)状态寄存器(or三态门)命令寄存器译码电路控制逻辑第七页,共35页。接口与端口接口是每个外设或每种外设与微处理器相连时使用的电路。一般在接口的内部除了与外设打交道的工作电路外,还包含一组程序可访问的寄存器,这些寄存器可以具有相互独立的地址,也可以几个一组,共用一个地址。这样的寄存器或寄存器组称为输入/输出端口(I/Oport)。CPU以访问端口的形式来访问接口。进而CPU通过这些端口与该接口所连接的外部设备进行信息交换。为传递的数据提供缓冲、锁存等功能的称为数据端口。用来保存设备和接口的状态信息,供CPU查询的称为状态端口。用来保存CPU发出的命令,以控制接口与外部设备的执行动作的称为控制(或命令)端口。第八页,共35页。接口与端口接口上可以包含唯一的端口,也可以包含几个端口。对CPU程序来说,接口仅是一个笼统的概念,而接口中的各个端口寄存器是CPU程序与接口打交道的具体对象。端口的地址和端口的数据是程序唯一可见的内容,而接口和外设在程序中是无法直接反映出来的。端口一般分为数据端口、状态端口和控制端口。第九页,共35页。

5.1.5I/O端口的编址方式端口有两种编址方式:统一编址和独立编址。

统一编址:把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。利用对存储器的读写操作完成数据的输入和输出。优点可使用全部对存储器操作指令,指令多,方便灵活;访问控制信号统一。缺点内存可用地址空间减小;寻址地址线数多,译码复杂。0000H地址空间(共1MB)内存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H第十页,共35页。I/O端口的编址方式

独立编址:计算机单独给外设端口编址,外设地址空间和内存地址空间相互独立。PC系列机采用I/O端口独立编址方式优点:内存地址空间不受I/O编址的影响;I/O空间较存储器空间小,地址线少,译码电路简单。缺点:要有专门输入输出指令;I/O指令功能较弱,寻址方式少,不灵活。8088总线A19-A0A9-A0MEMR、MEMWIOR、IOW、AEN存储器输入/输出第十一页,共35页。5.1.68086的I/O编址把端口地址放在DX寄存器中,对该端口进行读写,可寻址的端口号为0~65535(FFFFH)INAL,DXOUTDX,AL端口地址小于或等于FFH(255),可以用立即数表示端口地址。

INAL,42HOUT43H,AL第十二页,共35页。5.2CPU与输入/输出设备之间的信号

CPU和I/O设备之间的信号分类数据信息数字量模拟量开关量状态信息:对于输入设备来说,用READY信号来标明待输入的数据是否准备就绪。对于输出设备来说,用BUSY信号来表示输出设备是否处于空闲状态。控制信息:如外设的启动信号和停止信号就是常见的控制信息。第十三页,共35页。5.3CPU和外设之间的数据传送方式接口电路控制数据信号的传送,这种传送操作是在CPU的监控下实现的。对于CPU而言,数据传送就是输入输出操作,控制接口的传送操作有三种方式:程序方式无条件传送方式条件传送方式(查询方式传送)中断方式DMA方式(DMA控制I/O方式)第十四页,共35页。5.3.1程序方式程序方式传送是指在程序控制下进行信息传送,又可分为无条件传送和条件传送方式。

无条件传送方式若程序员能够确信一个外设已经准备就绪,就不必查询外设的状态而进行信息传输,这称为无条件传送方式。在无条件传送方式下,程序设计较简单。第十五页,共35页。无条件传送输入的例子:MOV DX,160HIN AL,DX无条件传送输出的例子:MOVDX,160HMOVAL,[BX]OUTDX,AL第十六页,共35页。条件传送方式(查询方式)CPU通过执行程序不断读取并测试外设的状态,根据外设的工作状态控制外设的输入/输出,即查询方式。在此传送方式下,一个数据传送到接口,其过程由3个环节组成:CPU从接口中读取状态字CPU检测状态字的对应位是否满足“就绪”条件,如果不满足,则回到前一步读取状态字。如执行输入方式时状态字表明外设已处于“就绪”状态,则传送数据。执行输出方式时状态字表明外设已处于“空闲”状态,则传送数据。第十七页,共35页。①查询式传送输入的例子:清零与读操作启动转换读状态第十八页,共35页。电路原理分析: 启动ADC以后,转换结束时产生EOC信号,把转换结果锁存至锁存器,把状态触发器置为1,表示数据已经准备好。控制端口——写164H端口,译码器输出和IOW信号同时有效,启动ADC转换。状态端口——读162H端口,译码器输出和IOR信号同时有效,打开通过D0读取状态信息。数据端口——读160H端口,译码器输出和IOR信号同时有效,打开三态缓冲器,从D7~D0读入数据,同时清除状态信息。负脉冲第十九页,共35页。程序示例:从ADC读取一个数据到AL。READ: MOVDX,160H INAL,DX ;清状态

MOVDX,164H OUTDX,AL ;启动ADCREAD1: MOVDX,162H INAL,DX ;查询状态

TESTAL,1;同01H进行与运算

JZREAD1 MOVDX,160H INAL,DX ;读取数据

RET第二十页,共35页。②查询式传送输出的例子:启动外设数据准备好取走数据否清除状态第二十一页,共35页。电路原理说明:写到164H端口,产生一个负脉冲来启动外设开始工作。写数据到160H端口,CPU输出数据到锁存器,同时置“1”状态触发器,为外设提供状态信息:“数据已准备好”。读取162H端口,CPU查询状态,看外设是否取走数据。(外设取走数据,则将发出ACK信号,清除状态触发器)第二十二页,共35页。程序示例:将AL中的数据输出。WRITE:MOVDX,164HOUTDX,AL ;启动外设MOVDX,160HOUTDX,AL ;输出数据MOVDX,162HWRITE1:INAL,DX ;查询状态TESTAL,1JNZWRITE1RET第二十三页,共35页。查询方式特点通过查询实现CPU与外设间的同步联络CPU和外设串行工作接口电路简单CPU使用率不高,用CPU的等待实现与外设的同步第二十四页,共35页。5.3.2中断方式中断方式:当外设做好传送准备后,主动向CPU请求中断,CPU响应中断后在中断处理程序中与外设交换数据。若外设未准备好,CPU可以执行其他程序,提高了CPU的利用率。每条指令完成后,CPU均可响应中断,因此当设备准备好时,可及时与CPU交换数据,提高了实时性。被外界中断时,程序中下一条指令所在处称为断点。中断传送方式就是外部设备中断CPU的工作,使CPU停止执行当前程序,而去执行一个数据输入/输出的程序(该程序称为中断处理子程序或中断服务子程序)。中断子程序执行完毕后,CPU又返回来执行原来的程序。第二十五页,共35页。中断I/O的一般过程a.数据传送b.中断响应c.中断请求CPU接口外设第二十六页,共35页。中断优先级解决办法(1)软件查询方式:借助于简单的硬件电路。优点:省硬件,不需要有判断优先级的硬件排队电路,而是用程序的优先级来确定设备的优先级。缺点:由设备发出中断请求信号到CPU转入相应的服务程序入口的时间较长,特别是在中断源较多时,查询程序段较长,转入服务程序所花的时间较长。第二十七页,共35页。中断优先级解决办法(2)简单硬件方式——菊花链法CPU以及总线控制逻辑INTAINTR设备3接口菊花链逻辑电路中断回答中断请求设备2接口菊花链逻辑电路中断回答中断请求设备1接口菊花链逻辑电路中断回答中断请求第二十八页,共35页。菊花链逻辑电路中断回答中断请求INTAINTR第二十九页,共35页。中断优先级解决办法(3)专用硬件方式在微机系统中解决中断优先级管理的常用办法是采用可编程的中断控制器。在8086系统中多用8259A。可编程中断控制器中的中断类型寄存器、屏蔽寄存器都是可编程的,当前中断服务寄存器也可以用软件进行控制,中断优先级管理电路的优先级排列方式也是通过指令来设置的,用起来灵活方便。第三十页,共35页。8086的中断过程接口部件发中断请求信号IRQ当前指令执行完后,CPU进行中断回答INTA接口部件将中断类型号n送到CPUCPU将FLAGS,CS,IP推入堆栈CPU清除TF,IFCPU将n乘4,到中断向量表中查找中断服务程序的入口地址,并将该地址放入CS,IPCPU进入中断服务子程序,进行保护现场的工作开中断,允许更高一级中断打断当前的服务程序执行服务操作及进行恢复现场执行IRET指令CPU将IP、CS、FLAGS出栈,恢复原来的程序执行第三十一页,共35页。5.3.3DMA方式(DMA控制I/O方式)DMA:DirectMemoryAccess——直接存储器访问DMA方式是一种由专门的硬件电路执行I/O的数据传送方式,它可以让外设与外设之间、外设与内存之间直接进行高速的数据传送,而不必经过CPU。这种专门的硬件电路称为DMA控制器,简称DMAC。第三十二页,共35页。原理示意图外设接口存储器CPUINOUTMOV[BX],ALMOVAL,[BX]输出输入读写请求与应答DMAC第三十三页,共35页。DMAC的功能接收外设向DMAC发出的DMA申请DREQ向CPU提出DMA申请HOLDREQ接收CPU回发的总线控制权响应

温馨提示

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

评论

0/150

提交评论