中国传媒大学《微机原理与接口技术》课件-第6章输入输出接口技术_第1页
中国传媒大学《微机原理与接口技术》课件-第6章输入输出接口技术_第2页
中国传媒大学《微机原理与接口技术》课件-第6章输入输出接口技术_第3页
中国传媒大学《微机原理与接口技术》课件-第6章输入输出接口技术_第4页
中国传媒大学《微机原理与接口技术》课件-第6章输入输出接口技术_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

第六章输入输出接口技术中国传媒大学《微机原理与接口技术》2026年5月18日第2页本章主要内容输入输出技术概述12基本输入输出方法简单I/O接口设计及实例(自学)32026年5月18日第3页§6.1输入输出技术概述输入输出是计算机与外部世界进行信息交换不可缺少的手段,在整个计算机系统中占有极其重要的地位。没有输入输出,计算机将变得毫无意义。由于外部设备种类繁多,要求输入或输出的信号形式、电平、速率千差万别。因此,CPU总是通过接口和外部设备连接的。2026年5月18日第4页什么是I/O接口?

用于主机和I/O设备之间传递信息的交换部件,对内符合计算机主机定义的系统总线的标准,对外要满足形形色色不同种类的I/O设备的要求;是计算机系统与外部设备交换信息的桥梁,起着沟通、协调两者关系的作用。I/O接口要解决的问题速度匹配(Buffer)信号电平和驱动能力(电平转换器、驱动器)

信号形式匹配(A/D、D/A)

信息格式(字节流、块、数据包、帧)

时序匹配(定时关系)总线隔离(三态门)§6.1输入输出技术概述2026年5月18日第5页6.1.1I/O接口的基本功能

1.提供信息传递通道:包括主机与外设之间数据传送,状态信息的交换,控制命令的传达。

2.实现数据格式的转换:如实现数/模转换,串/并转换以及信号电气参数的转换等。

3.进行信息处理速度的匹配:通过设置数据输入输出缓冲器,实现高速的计算机系统与低速的外设间的工作速度匹配。

4.可编程功能:增加接口的应用灵活性和可扩充性。

5.提供中断处理能力。2026年5月18日第6页

一个外设接口可能由多个端口构成。I/O端口:

I/O信息的三种类型:数据、命令、状态。传送这三类信息的通道分别称为:数据端口(I、O)、命令端口(O)、状态端口(I)。不同外设具有的端口数各不相同,计算机中为每一个端口都赋予一个惟一编号——称为端口地址(或端口号)。端口有两种编址方式:统一编址和独立编址。6.1.2基本I/O接口模型2026年5月18日第7页

每个接口部件都包含一组寄存器,CPU和外设交换信息时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口有一个端口地址。输入寄存器输出寄存器控制寄存器状态寄存器D-BUSC-BUSA-BUS外设数据线控制线状态线端口是接口部件中CPU可以通过地址访问的寄存器。6.1.2基本I/O接口模型2026年5月18日第8页接口电路的基本结构数据线控制线状态线DBCBAB数据输入寄存器(or三态门)数据输出寄存器(锁存器)状态寄存器(or三态门)命令寄存器译码电路控制逻辑接外设接主机2026年5月18日第9页6.1.3I/O接口地址及编址方式将外设接口地址和内部存贮器地址统一安排在内存的地址空间中,即把内存地址分配给外设,由外设来占用这些地址。用于外设的地址,存贮器不能使用。(1)外设地址与内存地址统一编址(2)外设地址与内存地址独立编址内存地址空间和外设地址空间是相互独立的。例如,在8086(8088)CPU中,内存地址范围为连续的1MB,而外设地址范围为64KB。在寻址时使用不同的控制信号,加以区分。2026年5月18日第10页0地址空间(共1MB)内存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H优点指令统一,灵活;访问控制信号统一,使用同一组的地址/控制信号。缺点内存可用地址空间减小00000H内存地址空间内存空间(1MB)FFFFFHI/O空间(64KB)FFFFHI/O地址空间0000H优点:内存地址空间不受I/O编址的影响缺点:I/O指令功能较弱,使用不同的读写控制信号2026年5月18日第11页6.1.4I/O端口地址译码

1、80x86I/O地址空间80x86系统有独立的I/O地址空间,大小为64KB。8088系统的I/O空间由1个字节块构成;8086~80386SX系统I/O空间由高、低2个字节块构成;80386DX、80486的由4个字节块构成;Pentium系列的由8个字节块构成。80x86系列处理器中,可寻址的I/O地址空间为0000H~FFFFH,大小为64KB。其中0000H~03FFH的空间为计算机系统和ISA总线预留。0400H~FFFH给用户,主板和PCI总线使用。2026年5月18日112026年5月18日第12页

8088/8086CPU的I/O编址方式采用I/O独立编址方式(但地址线与存储器共用)地址线上的地址信号用来区分:

时为I/O地址I/O操作只使用20根地址线中的16根:A15~A0可寻址的I/O端口数为64K(65536)个I/O地址范围为0~FFFFHIBMPC只使用了1024个I/O地址(0~3FFH)2026年5月18日第13页例如:8088/8086系统

8088总线A19-A0A9-A0MEMR、MEMWIOR、IOW、AEN存储器访问I/O访问2026年5月18日第14页80x86系列处理器的I/O地址译码与存储器地址译码方式类似,有全地址译码及部分地址译码方式。需要说明的是,I/O端口寻址方式中,如果是8位端口地址,可以采用直接寻址(指令中直接给出8位端口地址),也可以间接寻址(端口地址放入DX寄存器)。如果大于8位地址,只能采用间接寻址方式。2、I/O端口地址译码方式2026年5月18日第15页

I/O端口地址的译码

、、A15

~A0OUT指令将使总线的信号有效IN指令将使总线的信号有效当接口只有一个端口时,16位地址线一般应全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高位参与译码(决定接口的基地址),而低位则用于确定要访问哪一个端口。

例如:某外设接口有4个端口,地址为2F0H~2F3H,则其基地址为2F0H,由A15~A2译码得到,而A1、A0用来确定4个端口中的某一个。2026年5月18日第16页§6.2基本输入输出方法1.无条件传送方式2.查询方式3.中断方式4.直接存储器存取方式2026年5月18日第17页1.无条件传送方式

在工作时,随时都准备好接收CPU的输出数据或外设的数据随时都是准备好的,CPU什么时候都可以正确地读到它们的数据。即外设无条件准备好向CPU提供数据或接收CPU送来的数据。一般用于简单的外设操作。2026年5月18日第18页自输入设备端口译码数据总线地址总线AENIOWIOR输出锁存器输入锁存器至输出设备D0--D72026年5月18日第19页无条件输入A0A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15IOR﹠﹠≥1D0MOVDX,0FFF7HINAL,DX○○○○+5V10千欧·〓·○○图6.12开关K的输入接口K2026年5月18日第20页A0A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15IOW≥1≥1≥1D0~D7CPD0~D7Q0Q1Q7…74LS273MOVAL,5BHMOVDX,0000HOUTDX,AL01524637无条件输出2026年5月18日第21页

所谓查询方式就是计算机利用程序不断地读取并测试外部设备的状态,当CPU确认外设已处于“准备好”的状态时则执行读/写操作,实现数据的输入和输出。CPU接口外设状态数据控制2.查询方式2026年5月18日第22页单个外设的查询工作取外设状态外设准备就绪传送数据传送完否?开始结束NNYY

MOVDX,PORTLOP:INAL,DXTESTAL,01HJZLOPMOVAL,BUFFEROUTDX,AL…….CPU在与外设交换数据前必须询问外设状态——“你准备好没有?”对外设的要求:应提供设备状态信息对接口的要求:需要提供状态端口2026年5月18日第23页例:数据输出口和状态输入口共用一个地址00FFH。现欲将48000H为首地址的顺序100个单元的数据,利用查询方式输出到外设。A8A15IOWD0~D7CPD0D7Q0Q774LS273&≥1≥1≥1≥1IORD0BUSY……D0D7…外设A0A7….…..START:MOVAX,4000HMOVDS,AXMOVSI,8000HMOVCX,100MOVDX,00FFHWAIT:INAL,DXTESTAL,01HJZWAIT

MOVAL,[SI]OUTDX,ALINCSILOOPWAITHLT2026年5月18日第24页1号外设

准备就绪?2号外设

准备就绪?n号外设

准备就绪?对1号外设服务对2号外设服务对n号外设服务YYYNNN多个外设的查询控制

1、对N个外设服务时,是否有优先级的差别?若有,其优先级顺序是什么?

2、外设的优先级顺序是否固定不变?若不是,怎么变?3、查询工作方式有什么优缺点?问题:2026年5月18日第25页

在中断方式下,外设具有申请CPU服务的主动权,当外设准备就绪时,可通过接口部件向CPU发出一个中断请求信号,当CPU响应这一请求后,便暂时停止目前的工作,转向为外设提供服务,这一工作是在中断服务子程序中完成。服务完成后,继续回到被暂时中断的工作中去。3.中断方式2026年5月18日第26页CPU正在执行的程序中断断点中断事件发生CPU响应中断中断事件处理程序中断结束2026年5月18日第27页前面三种I/O方式都需要CPU作为中介:

外设CPU内存两个含义:

1)软件:外设与内存之间的数据传送是通过CPU执行程序来完成的(PIO方式);

2)硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的(总线由CPU控制)。缺点:程序的执行速度限定了传送的最大速度(约为几十KB/秒)—解决:DMA传输2026年5月18日第28页

外设

内存外设直接与存储器进行数据交换,CPU不再担当数据传输的中介者;总线由DMA控制器(DMAC)进行控制(CPU要放弃总线控制权),内存/外设的地址和读写控制信号均由DMAC提供。优点:数据传输由DMA硬件来控制,数据直接在内存和外设之间交换,可以达到很高的传输速率(可达几MB/秒)4.直接存储器存储方式(DMA)2026年5月18日第29页DMA传送原理示意图

①系统总线CPUDMAC存储器外设接口AENIOWMEMWMEMRIORMEMWMEMRIOWIORAENHOLDHLDADRQDACK②③④⑤AENIOWIORMEMWMEMR①外设发出DMA请求②DMAC向CPU申请总线③CPU完成当前总线周期后响应,并释放总线控制权④DMAC得到总线控制权,并发出DMA响应信号⑤由DMAC发出各种控制信号,控制外设与存储器之间的数据传送⑥数据传送完后,DMAC撤销HOLD信号⑦

CPU释放HLDA信号,并重新控制总线⑥⑦2026年5月18日第30页DMA的三种传输方式:连续传送(块传送)DMAC申请到总线后,将一块数据传送完后才释放总线,而不管中间DREQ是否有效。单次传送(每次传送一个字节)每个DMA周期只传送一个字节就立即释放总线。按需传送(猝发传送)只要I/O接口的数据缓冲可用,就进行传送。

(注:I/O接口需要有一定大小的FIFO缓冲)2026年5月18日第31页一个总线周期TDMAC控制总线,共传送n个数据DMA1DMA2DMAnCPU重新控制总线CPU对总线控制连续传送TDMA共传送n个数据DMA1DMA2DMAn单次传送DMA3T按需传送DMA传送k个数据DMA传送n-k个数据FIFO可用FIFO满FIFO可用FIFO满图例:DMA传输方式示意图:2026年5月18日第32页YN允许DMADMA请求?DMAC请求总线CPU响应,DMAC获总线控制权DMA传送一个字节块结束?地址增量,计数器减量DMAC释放总线Y数据块传送N2026年5月18日第33页NYN允许DMADMAC请求总线CPU响应,DMAC获总线控制权DMA传送一个数据块结束?释放总线至少一个总线周期地址增量,计数器减量DMAC释放总线Y每次传送一个字节测试I/O的DREQDMA请求?2026年5月18日第34页NYCPU响应,DMAC获总线控制权DMA传送一个字节块结束?测试I/O的DREQ有效?地址增量,计数器减量释

温馨提示

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

评论

0/150

提交评论