微机原理与接口技术-第6章-输入输出与中断技术剖析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

侯彦利第6章输入/输出与中断技术吉林大学工学部计算机硬件基础课程微机原理与接口技术1第6章输入/输出与中断技术侯彦利23本章教学目的了解输入输出系统的基本知识了解系统总线与输入输出设备的连接方式。掌握简单设备接口的设计方法了解中断的基本概念了解中断的处理过程熟悉8088/8086中断系统46.1I/O接口概述通常把处理器和主存储器之外的部分称为输入输出系统。包括输入输出设备、输入输出接口和输入输出软件;I/O接口CPU外部设备数据信号状态信号控制信号数据信号地址信号控制信号图6-1CPU与外部设备之间的接口56.1.1I/O接口的功能(1)信号电平转换不同规格的电平转换为TTL或者MOS电路的电平(2)数据格式转换串并转换或数模转换(3)速度匹配通过缓冲或锁存保证CPU与外设传输数据时各部件都能正确接收数据。6(4)数据传送建立数据传输的逻辑关系,即规定好数据传输的过程与时序。(5)寻址能力为外设的各个端口编址,使外设能被cpu访问到。(6)错误检测功能可进行数据校验,保证数据传输的正确性。7高速的微处理器与低速的外设能够协调的工作,需要有一个具有数据缓冲和锁存能力、数据格式转换能力、提供外设状态和定时控制能力的连接电路,我们把它叫做输入输出接口。86.1.2I/O接口的分类CPU与接口之间通过系统总线传输信息,属于并行传输,传输的信息有接口的地址信息、控制信息和数据信息。接口与设备之间可以通过串行和并行两种方式交换信息,包括数据信息、控制信息和状态信息。I/O接口CPU外部设备数据信号状态信号控制信号数据信号地址信号控制信号图6-1CPU与外部设备之间的接口9按接口与设备之间的数据传送方式,接口分为:并行接口:一次传送一个字节或字的所有位。串行接口:一位一位地传送。106.2I/O端口及其编址方式CPU与外设进行数据传输,接口电路需要设置若干专用寄存器,缓冲输入输出数据,设定控制方式,保存输入输出状态信息,这些寄存器常称为端口。接口中可被CPU直接访问的专用寄存器称为端口。端口可分为:数据端口:CPU与外设交换数据信息;状态端口:保存外设当前的状态信息;控制端口:CPU向外设发出的控制信息;11CPU通过对端口分配地址识别它们,称为编址。CPU给每个端口分配一个地址,称为端口地址或端口号。一个接口中的多个端口分配连续地址。思考:专用寄存器中保存的是什么数据?这些数据可能是从哪里来的?12根据传输方向,端口可分为输入端口和输出端口。输入端口:具有“通断”控制能力输出端口:具有锁存能力13D0~D774LS244+5VK0K1K2K3K4K5K6K7DO0~DO7I0I1I2I3I4I5I6I7E1E2≥1IORA2A3A4A5A6A7A8A9A15A10A11A12A13A14系统总线信号≥1&三态门作输入接口1474LS273作输出端口系统总线信号D0D0D7D7~~A0A1A2A3A4A5A6A7IOW&&≥111CP+5VQ0Q1Q6Q7…A8A9A10A11A12A13A14A15+5V74LS27374LS273156.2.2I/O端口的编址方式I/O端口编址方式是计算机系统为I/O端口分配端口号的方式。常见的I/O编址方式有两种:与内存单元统一编址方式独立编址方式16与内存单元统一编址方式:将存储器的存储单元与外设的端口统一编址,即一个端口与一个存储器单元等同看待;通常为一个外设的各个端口分配连续的地址。优点:数据传送指令、测试指令都可以访问I/O端口,不用设置专门的I/O指令;不需要专用的I/O端口控制信号。缺点:划出的端口地址范围,不能再作为内存地址使用,所以减少了内存地址空间。17独立编址方式:又称单独编址方式,给外部设备分配专用的端口地址,提供专用的控制信号,使它们成为一个独立的I/O地址空间,与内存编址无关。优点:不占用内存空间;输入输出地址线根数少,I/O端口译码电路简单。缺点:需要专用的I/O指令、专用控制线。188088/8086CPU采用了I/O端口独立编址方式,它使用地址信号线A0~A15,最多能够管理64K个端口,地址范围0000H~FFFFH,有专用的控制信号IOR和IOW或IO/M、WR、RD;8位的端口地址用于访问系统主板上的设备;16位的端口地址用于访问串行口或并行口以及视频和磁盘驱动系统。1920D0A0A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15≥1&≥1IOR+5V10KΩK21专用指令:INOUT内存地址(共1MB)0端口地址(共64KB)0FFFFFHFFFFHb独立编址地址空间内存地址(共960KB)0端口地址(共64KB)EFFFFHFFFFFHF0000Ha统一编址地址空间图6-2两种不同编址方式的地址空间22I/O端口地址的译码I/O端口的地址译码与内存地址译码原理一样,可以用基本逻辑门电路搭建,也可以使用专用的译码器译码。23D0D7~D0D7~Q011111111Q1Q2Q3Q4Q5Q6Q7CP74LS2737406510Ω×8abcdefg+5V10KΩKCIOW≥174LS138≥1A0IORA1A2A3A4A5A6A7A8A9A10A11A12A13A14A15≥1&CG2AG2BBAY0Y1系统总线D0DPG1A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00000000011110XXX74LS24424D0~D7IORA1A3A4A5A6A7A2A8A10A11A12A13A14A9A151Y1~1Y41G2G&≥1≥12Y1~2Y41A11A21A31A42A12A22A32A4+5VK1K2K3K4K5K6K7K874LS244256.3CPU与外部设备之间的数据传送方式主机与外设之间通过一定的控制方式进行信息交换,常用的控制的方式包括无条件传送方式、程序查询传送方式、中断传送方式、直接存储器存取(DMA)方式。266.3.1无条件传送方式又称为同步方式,适合简单外设的数据输入输出。常用外设:开关、继电器、步进电机、发光二极管等。优点:控制程序简单,软、硬件开销都少。27无条件输入接口CPU地址线输入设备地址译码数据总线IOR数据输入缓冲器&数据图6-3无条件传送数据输入示意图28无条件输出接口CPU地址线输出设备地址译码数据总线IOW数据输出锁存器&数据图6-4无条件传送数据输出示意图296.3.2程序查询传送方式又称为条件传送方式。I/O接口中有一个状态端口,CPU通过读取状态端口的信息了解设备目前的状态。工作过程:①检查外设的状态,判断外设是否“准备好”。②若没有准备好,则继续查询其状态。③外设已准备好,CPU与外设进行数据传送。④若还有数据待传输,则转①,否则终止传输。30程序查询传送方式流程图缺点:效率低实时性差取外设状态准备好?传送一个字符所有数据传送完?NNYY初始化结束外设1准备就绪?对外设1服务外设2准备就绪?对外设2服务外设3准备就绪?对外设3服务外设n准备就绪?对外设n服务…NYNNNYYY316.3.3中断传送方式当设备处于空闲状态或者外设数据准备好时,接口向CPU发出中断请求信号,CPU收到申请后及时响应接口的中断请求,暂停执行主程序,转入执行I/O操作程序(中断服务子程序),完成数据传输之后再返回到主程序继续执行,这种数据传送方式称为中断方式。32中断传送流程图优点:实时性好处理迅速缺点:不适用于大量数据的高速传输执行主程序是否有中断请求?中断处理,执行数据输入/输出中断响应中断返回执行主程序输入/输出指令执行主程序一条指令执行结束33程序控制下的输入输出方式无条件传送方式、程序查询传送方式和中断传送方式在数据传送过程中,CPU从内存读出数据,再输出到外部设备,因此,这三种方式被统称为程序控制下的输入输出方式(Programmedinputandoutput),简称PIO方式。346.3.4DMA方式直接存储器存取(DirectMemoryAccess)方式简称为DMA方式。是在内存储器和I/O设备之间建立数据通路,不经过CPU的干预,实现内存与外设之间的快速数据传送。实现DMA方式需要专门的硬件装置DMA控制器(DMAC),它负责控制外设与内存之间的数据传输。(8237A-5、8237-2)35DMAC的功能DMAC接收外设请求信号,并向CPU发出总线请求信号。DMA过程中可实现:向地址总线发送地址信号,能够生成读写控制信号。控制数据传送的字节数。DMA过程结束时,能向CPU发出DMA结束信号,并将总线的控制权交还给CPU。36DMAC的工作流程①外设向DMA控制器发出“DMA传送请求”信号(DRQ);②DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD,表示希望占用总线;③CPU将数据总线、地址总线和相应的控制信号线均置为高阻态,向DMA控制器发出“总线响应”信号(HLDA)。④DMA控制器收到HLDA信号后,就开始控制总线,并向外设发出DMA响应信号DACK;⑤DMA控制器送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送;⑥规定的数据传送完后,DMA控制器就撤销发往CPU的HOLD信号。CPU检测到HOLD失效后,紧接着撤销HLDA信号,并在下一时钟周期重新开始控制总线。37386.4简单接口电路的应用接口电路结构包括:(1)和系统总线的连接部分;(2)和外设的连接部分;(3)信号转换电路;(4)上述三部分的控制逻辑。39D0~D7IORA1A3A4A5A6A7A2A8A10A11A12A13A14A9A151Y1~1Y41G2G&≥1≥12Y1~2Y41A11A21A31A42A12A22A32A4+5VK1K2K3K4K5K6K7K874LS2441.简单的输入接口电路4074LS244:8个三态门两个控制端:1G和2G,低电平有效,各控制4个三态门A端为数据输入端,Y端为数据输出端。当控制端为低电平时,数据从A端输入,Y端输出;当控制端为高电平时,三态门呈高阻状态,A端与Y端断开。VCC1Y12A41Y22A31Y32A21Y42A11A12Y41A22Y31A32Y21A42Y1GND2G1G110112041端口地址分别为FFC0H与FFC1H。读取开关的程序:MOVDX,0FFC0HINAL,DX42【例题6-1】分析电路,说明输入端口的地址范围,编写程序判断8个开关的状态,如果8个开关都闭合执行GOON程序段,否则执行NEXT程序段。43D0~D7IORA1A3A4A5A6A7A2A8A10A11A12A13A14A9A151Y1~1Y41G2G&≥1≥12Y1~2Y41A11A21A31A42A12A22A32A4+5VK1K2K3K4K5K6K7K874LS24444MOVDX,0FFC1HINAL,DXTESTAL,0FFHJZGOONNEXT:…MOVAX,BXADDAX,CXGOON:…45测试K3的状态,K3断开时转到Label处执行,程序段如下:TESTAL,4JNZLabel……Label:……466.4.2简单的输出接口电路74LS273、74LS3748位D锁存器,输入端D0~D7,输出端Q0~Q7MR清除端,为低电平时,芯片复位,Q端输出全为0;CP触发端,上升沿触发,当CP从低电平到高电平跳变时,D0~D7的数据输出到Q0~Q7并锁存。4774LS273作输出端口系统总线信号D0D0D7D7~~A0A1A2A3A4A5A6A7IOW&&≥111CP+5VQ0Q1Q6Q7…A8A9A10A11A12A13A14A15+5V74LS27374LS27348八段LED显示器abcdefghcomabcdefghcomabcdefgh图6-13八段LED显示器(a)段排列(b)共阴极(c)共阳极49八段LED显示字形代码表字型共阳极代码共阴极代码字型共阳极代码共阴极代码0C0H3FH

1 / 97
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功