第9讲微型计算机和外设的数据传输_第1页
第9讲微型计算机和外设的数据传输_第2页
第9讲微型计算机和外设的数据传输_第3页
第9讲微型计算机和外设的数据传输_第4页
第9讲微型计算机和外设的数据传输_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

微型计算机系统的硬件结构控制总线CB数据总线DB地址总线AB系统总线形成CPU

I/O设备

I/O接口主存系统总线BUS外设主机1第五章微型计算机和外设的数据传输教学重点I/O端口的编址I/O指令CPU和外设之间的数据传送方式和控制方法25.1为什么要用接口按照功能,接口电路可分为两类:使微处理器正常工作所需要的辅助电路;输入输出(I/O)接口电路3为什么要用接口电路?微机的外部设备多种多样,例如打印机、扫描仪、硬盘等,它们的功能、工作原理、信息格式、以及工作速度等方面彼此差别很大,因此不能与CPU直接相连,必须经过中间电路再与系统相连,这部分电路被称为I/O接口电路。4接口的用途对于输入设备来说,接口通常起信息转换和缓冲的功能,将输入设备送来的信息变换成CPU能够接收的格式,并将其放在缓冲器中让CPU来接收;对输出设备来说,接口起信息变换和锁存的功能,将CPU输出的信息转换成设备需要的格式。总结:输入输出接口电路是为了解决计算机和外部设备之间的信息变换问题而提出来的,是计算机和外设之间传送信息的部件,每个外设都要通过接口和主机系统相连。接口技术专门研究CPU和外设之间的数据传送方式、接口电路的工作原理和使用方法。55.2CPU和输入输出设备之间的信号(1)数据信息数字量模拟量开关量(2)状态信息(输入)外设通过接口送往CPU对输入设备来讲,一般是用READY表示数据准备就绪对输出设备来讲,一般是用BUSY表示设备是否空闲(3)控制信息(输出)CPU通过接口送给外设,控制外设的工作在微型机系统中,CPU通过接口与外设交换信息时,数据信息、状态信息和控制信息都被看做一种数据信息,通过数据总线传输。它们对应三种不同的寄存器:数据寄存器、状态寄存器和控制寄存器。65.3接口部件的I/O端口什么是端口?

每个接口部件都包含一组寄存器,CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口。输入输出所用的地址是针对端口而言的,不是接口。一个接口芯片一般对应几个端口,每一个端口有一个地址。例,地址为20H的端口通常被称作20H号端口。一定要理解7外设通过接口和系统的连接8接口部件的寄存器:⑴数据寄存器对来自CPU和内存的数据或者对送往CPU和内存的数据起缓冲作用⑵状态寄存器存放外设或接口部件本身的状态⑶控制寄存器存放CPU发出的命令,以便控制接口和设备的动作数据寄存器、状态寄存器和控制寄存器占有的I/O地址常依次被称为数据端口、状态端口和控制端口,用于保存数据、状态和控制信息9I/O端口的编址接口电路占用的I/O端口有两类编址方式:

统一编址方式I/O端口与存储器统一编址,它们共享一个地址空间如M6800独立编址方式I/O端口单独编址,I/O地址空间独立于存储地址空间如8086/808810优点:不需要专门的I/O指令;I/O数据存取与存储器数据存取一样灵活。缺点:I/O端口要占去部分存储器地址空间;程序不易阅读(不易分清访存和访问外设)。内存部分I/O部分存储器空间00000FFFFF统一编址方式11优点:专门的I/O指令使程序阅读方便I/O端口的地址空间独立,使存储器地址范围扩大缺点:I/O指令没有存储器指令丰富内存空间I/O空间FFFFF0FFFF独立编址方式128086使用A0~A15或者A0~A7寻址I/O端口地址的形成(片选,片内寻址)I/O端口地址的形成13使用8086CPU内存扩展连线14I/O端口的地址译码15I/O端口地址的形成如果CPU用8088,与8086的地址形成有什么区别?16有关端口地址问题

8086CPU与外设交换数据可以字或字节进行,当以字节进行时,偶地址端口的字节数据由低8位数据线D7~D0位传送,奇地址端口的字节数据由高8位数据线D15~D8传送,当用户在安排外设的端口地址时,如果外设是以8位的方式与CPU连接,就只能将其数据线或者与CPU的低八位或者与高八位连接,这样同一台外设的所有寄存器端口地址都只能是偶地址或是奇地址,这时设备的端口地址就会是不连续的。17185.48086的输入输出指令输入指令IN输出指令OUT参考P83输入/输出指令IN/OUT或汇编课本第12章19输入指令IN指令汇编格式:IN累加器AL或AX,端口地址操作:执行IN指令时,CPU可以从一个8位端口读入一个字节到AL中,或者从一个16位端口读一个字到AX中,取决于端口的位数。例:INAL,50H ;字节直接输入INAX,70H ;字直接输入20输出指令OUT指令汇编格式:OUT端口地址,累加器AL或AX操作:执行OUT指令时,CPU可以将AL中的1个字节写入一个8位端口,或者将AX中的一个字写入一个16位端口。例:OUT44H,AL ;字节直接输出OUT80H,AX ;字直接输出21注意:只能用累加器AL或者AX作为执行输入输出的机构,不能用其它的寄存器代替;输入输出指令可以分为两大类:一类是直接的输入输出指令,端口地址直接给出;一类是间接的输入输出指令,端口地址由DX寄存器给出;用直接输入输出指令时,寻址范围为0~255(0FFH),间接输入输出指令的范围是0~65535。0~255之间的地址也可用间接输入输出指令,但256~65535之间的端口必须要用DX寻址,使用DX前要使用指令如MOVDX,端口地址给DX设置端口号。228位数据长度的I/O端口地址为3FEH,从该端口读入数据使用的指令段为:MOVDX,3FEH INAL,DX

16位数据长度的I/O端口地址为3FCH,向该端口写入数据使用的指令段为:MOVDX,3FCH OUTDX,AX23a.

8086CPU的读总线周期AD15~AD0I/O端口的读时序24

程序方式:通过CPU执行程序中的I/O指令完成信息传送。中断方式:CPU响应外设中断请求完成数据传输。

DMA方式:传送请求由外设向DMA控制器(DMAC)提出,后者向CPU申请总线,最后DMAC利用系统总线来完成外设和存储器间的数据传送。5.5CPU和外设之间的数据传送方式25无条件传送方式条件传送方式程序方式26又称“同步传送方式”在CPU与设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传输适于简单外设,如发光二极管、开关、七段显示器等这种传送有前提:外设必须随时就绪,传送不能太频繁无条件传送方式27无条件传送方式的工作原理28举例K7K1K0+5VD0~D7A1~A15CPLS06反相驱动器LS2738D锁存器LS244三态缓冲器8000H译码+5VLED0LED7译码……GWRRDM/IO29next: movdx,8000h ;DX指向数据端口

inal,dx ;从输入端口读开关状态

notal ;反相

outdx,al ;送输出端口显示

calldelay ;调子程序延时

jmpnext ;重复代码30有8个发光二极管,其阴极加低电平则亮,用74LS273作为I/O接口与8086通信,端口地址是20H。要求发光二极管由低位向高位依次循环显示。画出电路图,写出实现该功能的程序。思考题31思考题答案

MOVAL,01HNEXT:OUT20H,AL CALLDELAY ROLAL,1;不带CF循环左移

JMPNEXT+5VD0~D7A1~A7CPLS06反相驱动器LS2738D锁存器20H译码LED0LED7译码…WRM/IO32条件传送方式又称“查询传送方式”CPU需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出接口部件除了有数据端口,还需传送状态的端口对多个外设的情况,则CPU按一定顺序依次查询(轮询),先查询的外设将优先进行数据交换查询传送的特点是:工作可靠,适用面宽,但传送效率低33条件传送的两个环节⑴查询环节寻址状态口读取状态寄存器的标志位若不就绪就继续查询,直至就绪⑵

传送环节寻址数据口是输入,通过输入指令从数据端口读入数据是输出,通过输出指令向数据端口输出数据输入状态就绪?数据交换YN34查询式输入的接口电路RD+5V8位锁存器8位三态缓冲器译码1位三态缓冲器RQ

A1~A15300H310HD0~D7D0DDQCP输入设备输入设备RDSTBRM/IOM/IO35SPORTEQU300HDPORTEQU310H …… TEST1: MOVDX,SPORT;DX指向状态端口

INAL,DX ;读状态端口

TESTAL,01H ;测试标志位D0 JZTEST1 ;D0=0,未就绪,继续查询

MOVDX,DPORT;D0=1,就绪,DX指向数据端口

INAL,DX ;从数据端口输入数据

……36查询式输出的接口电路8D锁存器译码1位三态缓冲器RQ

A1~A15300H310HD0~D7D0D+5VQD

R输出设备输出设备ACKWRRDCPM/IOM/IO37SPORTEQU300HDPORTEQU310H …… MOVDX,SPORT;DX指向状态端口TEST2: INAL,DX ;读状态端口

TESTAL,01H ;测试标志位D0 JNZTEST2 ;D0=1,数据未写入,继续等待

MOVDX,DPORT;D0=0,就绪,DX指向数据端口

MOVAL,[BX];待输出数据在缓冲区

OUTDX,AL ;从数据端口输出数据

38在条件传送方式时,CPU要用大量时间去执行状态查询程序,使CPU的效率大大降低。中断方式则是让外设在准备好之后通知CPU,执行与外设的数据传输工作。这样可以大大提高CPU的利用率。中断方式INTR主程序响应中断服务程序返回CPU外设39当外设准备好(输入)或闲(输出),向CPU发出申请,CPU响应后,暂停执行原程序,转去执行中断服务程序。中断传送的接口电路如下:40中断方式输入的接口电路R41以输入为例:输入装置输入一数据,发出选通信号,一方面把数据存入锁存器,一方面又使D触发器置1,在中断允许下,发出INTR,CPU在现行指令执行完后,发出INTA,把外设送来的中断向量放到DB上,于是CPU转入中断服务程序,读入数据,同时清除中断请求INTR,中断处理完,CPU返回被中断处理的程序继续执行。42DMA方式希望克服程序控制

温馨提示

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

评论

0/150

提交评论