第06章输入输出接口及中断技术X.ppt
《第06章输入输出接口及中断技术X.ppt》由会员分享,可在线阅读,更多相关《第06章输入输出接口及中断技术X.ppt(201页珍藏版)》请在三一文库上搜索。
1、第6章 输入输出接口及中断技术,第六章 输入输出接口及中断技术,6.1 输入输出接口概述 6.2 PC系列微机I/O端口和I/O端口地址译码 6.3 CPU与外设之间数据传送的控制方式 6.4 可编程并行接口8255A 6.5 计数/定时器8253/8254 6.6 中断技术 6.7 可编程中断控制器8259A 6.8 DMA技术及可编程DMA控制器8237,6.1 输入输出接口概述,什么是输入/输出设备? 能够完成输入/输出操作的设备就叫输入/输出设备,简称外设或I/O设备。 例如,键盘、鼠标器、磁盘和扫描仪等是大家熟悉的输入设备,而磁盘、CRT显示器、打印机、X-Y绘图仪等则是最常见的输出
2、设备。,什么是输入/输出接口? 要实现外部设备与主机之间的连接(connection)和信息交换,必须经过一个数据转换和传输的设备。这种设备,我们叫做I/O接口(interface)。,6.1.1I/O接口电路的功能和必要性,一、I/O接口要解决的问题 速度匹配(Buffer):键盘0.5s,打印机几十ms, 软盘500KB/S,硬盘100MB/S 信号电平和驱动能力(电平转换器、驱动器) 信号形式匹配(A/D、D/A) 信息格式(字节流、块、数据包、帧) 时序匹配(定时关系) 总线隔离(三态门),二、接口电路的外部特性,主要体现在引脚上,分成两侧信号: 面向CPU一侧的信号: 用于与CPU连
3、接 主要是数据、地址和控制信号 面向外设一侧的信号: 用于与外设连接 提供的信号五花八门,各不相同 功能定义、时序及有效电平等差异较大,是CPU与I/O设备之间的桥梁,CPU与外设交换信息的中转站,接口,CPU,外设,I/O接口电路的基本结构,返回,上一张,功能:1、数据缓冲与锁存 2、信息的输入与输出 3、信息格式转换 4、联络和中断管理动能 5、进行译码 6、电平转换 7、具备时序功能控制 8、具有可编程功能 9、检错,二、接口电路的功能,6.1.2 I/O的信息组成及接口模型,一、CPU与外设交换的信息 1、数据信息:(Data) 主机与I/O设备之间交换的信息可分为数据信息、状态信息和
4、控制信息三类。8、16、32、64 数据信息又分为数字量、模拟量和开关量三种形式。 1) 数字量 2) 模拟量 3) 开关量 2、状态信息(Status) 3、控制信息(Control),1数据信息 1) 数字量 数字量是计算机可以直接发送、接收和处理的数据。例如,由键盘、显示器、打印机及磁盘等I/O外设与 CPU交换的信息,它们是以二进制形式表示的数或以ASCII码表示的数符。 2) 模拟量 当计算机应用于控制系统中时,输入的信息一般为来自现场的连续变化的物理量,如温度、压力、流量、位移、湿度等,这些物理量通过传感器并经放大处理得到模拟电压或电流,这些模拟量必须先经过模拟量向数字量的转换(A
5、/D转换)后才能输入计算机。反过来,计算机输出的控制信号都是数字量,也必须先经过数字量向模拟量的转换(D/A转换),把数字量转换成模拟量才能去控制现场 3) 开关量 开关量可表示两个状态,如开关的断开和闭合,机器的运转与停止,阀门的打开与关闭等。这些开关量通常要经过相应的电平转换才能与计算机连接。开关量只要用一位二进制数即可表示。,2. 状态信息 状态信息作为CPU与外设之间交换数据时的联络信息,反映了当前外设所处的工作状态,是外设通过接口送往CPU的。CPU通过对外设状态信号的读取,可得知输入设备的数据是否准备好、输出设备是否空闲等情况。对于输入设备,一般用准备好(READY)信号的高低来表
6、明待输入的数据是否准备就绪;对于输出设备,则用忙(BUSY)信号的高低表示输出设备是否处于空闲状态,如为空闲状态,则可接收CPU输出的信息,否则CPU要暂停送数。因此,状态信息能够保障CPU与外设正确地进行数据交换。,3控制信息 控制信息是CPU通过接口传送给外设的,CPU通过发送控制信息设置外设(包括接口)的工作模式、控制外设的工作。如外设的启动信号和停止信号就是常见的控制信息。实际上,控制信息往往随着外设的具体工作原理不同而含义不同。,CPU通过接口和外设交换信息时,只能用输入指令(IN)和输出指令 (OUT)传送数据, 所以状态信息、控制信息也是被作为数据信息来传送的,即把状态信息作为一
7、种输入数据,而把控制信息作为一种输出数据,这样,状态信息和控制信息也通过数据总线来传送。但在接口中,这三种信息是在不同的寄存器中分别存放的。 即通过端口来访问以上的信息,小 结,返回,二、端口(PORT),I/O端口:是指I/O接口中存放数据信息、状态信息和控制信息,CPU可以读/写的一组寄存器或特定电路,被称为I/O端口。 一般接口通常有数据端口、控制端口、状态端口 数据端口:(I、O) 输入数据端口(I):保存外设给CPU的数据 输出数据端口(O):保存CPU给外设的数据 状态端口:(I) 存放I/O设备或接口本身的工作状态信息 控制端口:(O) 存放CPU给外设或接口电路的命令,图4.2
8、 一个典型的I/O接口,返回,上一张,6.1.3 I/O端口的编址方式及端口地址,不同外设具有的端口数各不相同,计算机中为每一个端口都赋予一个唯一编号称为端口地址(或端口号)。 端口有两种编址方式:统一编址和独立编址。,一、统一编址方式(存储器映像方式) 即是将端口看作一个存储单元看待,每个端口地址占用一个地址单元,存储器与I/O地址统一安排 二、独立编址方式(I/O映像方式),一、统一编址方式(存储器映像方式),把I/O端口看成MEM一个地址,1、优点 指令丰富(mov等) I/O端口的空间大 寻址控制逻辑简单 (与MEN共用一套),2、缺点 内存空间相对减少 单独的译码电路复杂 指令代码字
9、节长 分析程序困难,二、独立编址方式(I/O映像方式),I/O端口与MEM空间各自独立 逻辑上重叠 物理上独立,1、优点 MEM和I/O分开设计 I/O地址线少 I/O指令短,执行速度快,2、缺点 需单独使用I/O译码单元和指令 不象I/O指令丰富,6.2 PC系列微机I/O端口和I/O端口地址译码,6.2.1 PC系列微机I/O端口地址分配,8088/8086 CPU的I/O编址方式 采用I/O独立编址方式(但地址线与存储器共用) 地址线上的地址信号用 来区分: 时为I/O地址 I/O操作只使用20根地址线中的16根: A15 A0 可寻址的I/O端口数为64K(65536)个 I/O地址范
10、围为0FFFFH IBM PC只使用了1024个I/O地址(03FFH),IBM-PC机端口地址1024个端口地址 低256地址(000H0FFH)做为主机电路板使用 高768地址(0100H03FFH)作扩充插槽使用 故此仅用A9A0十根地址线,IBM-PC机端口地址分配见 P395页 表 6.1,那么现在的PC机的端口地址怎么看呢,开始程序附件系统工具系统信息,硬件资源中I/O或看组件中就可以看到,例如 System speaker地址为0x00000061 也就是0061H,怎么操作?,软件访问采用IN 或 OUT 指令!,我们设计IO卡可采用200H20FH游戏接口卡 300H31FH
11、实验板,输入指令 IN AL,port8 ;字节输入,直接寻址 IN AL,DX ;字节输入,间接寻址 IN AX,port8 ;字输入,直接寻址 IN AX,DX ;字输入,间接寻址 输出指令 OUT port8,AL;字节输出,直接寻址 OUT DX,AL ;字节输出,间接寻址 OUT port8,AX;字输出,直接寻址 OUT DX,AX ;字输出,间接寻址,6.2.2 I/O地址译码,80x86采用I/O端口独立编址,译码主要针对片选(Chip SelectCS)信号 一般为低电平有效,当此信号无效时,一般芯片所有线都处于高阻态。,译码器的选择 组合逻辑门电路 集成译码器 开关式可选择
12、译码电路 可编程逻辑电(GAL、FPGA、CPLD),地址线的使用 全地址译码方式 部分地址译码方式,一、组合逻辑门电路地址译码,地址为2FB,1,0,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,二、集成地址译码,地址为020 03F,0,0,0,1,0,1,0,1,0,1,1,1,1,0,1,0,0,1,0,74LS138,看看具体 工作过程,输入,输出,A8 A9 AEN,IBM PC/AT主机板的I/O译码电路,三、开关式可选择译码电路,“1”,“1”,“1”,“0”,A2,A1,A0,74LS138,P7 P6 P5 P4 P3 P2 P1 P0 Q7 Q6
13、 Q5 Q4 Q3 Q2 Q1 Q0,AEN A9 A8 A7 A6 A5 A4 A3,74LS688,低3位由A2、A1、A0决定为111,高7位由决定DIP开关通过比较器74LS688,DIP开关,四、使用可编程逻辑器件译码 (GAL、FPGA、CPLD),是借助EDA手段可以设计专门的译码器,例如,当A9A0为000H时Q0为0,其他为全1,当A9A0为001H时Q1为0,其他为全1,以此类推 后续课程中 会给大家介绍,6.3 CPU与外设之间数据传送的控制方式,CPU与I/O接口间的信息传送,称为信息交换。,信息交互的方式有4种: 无条件传送:慢速外设需与CPU保持同步 查询传送: 简
14、单实用,效率较低 中断传送: 外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销 DMA传送: DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送,1、无条件传送方式及其接口,在CPU与慢速变化的设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传送,这就是无条件传送,或称立即传送、同步传送 适合于简单设备,如LED数码管、按键或按纽等 无条件传送的接口和操作均十分简单 这种传送有前提:外设必须随时就绪,具体过程,2、查询传送方式及其接口,CPU需要选了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出 对多个外设的情况
15、,则CPU按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换 查询传送的特点是:工作可靠,适用面宽,但传送效率低,查询传送的两个环节, 查询环节 寻址状态口 读取状态寄存器的标志位 若不就绪就继续查询,直至就绪 传送环节 寻址数据口 是输入,通过输入指令从数据端口读入数据 是输出,通过输出指令向数据端口输出数据,具体过程,3、 中断传送方式,CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序,具体过程,中断传送与接口,中断传送是一种效率更高的程序传送方式 进行传送的中断服务程序是预先设计好的 中断请求是外
16、设随机向CPU提出的 CPU对请求的检测是有规律的:一般是在每条指令的最后一个时钟周期采样中断请求输入引脚 中断除了在输入和输出方面的应用外,中断还有着非常广泛的应用,(4)DMA传送方式,希望克服程序控制传送的不足: 外设CPU存储器 外设CPU存储器 直接存储器存取DMA: 外设存储器 外设存储器 CPU释放总线,由DMA控制器管理,DMA传送的工作过程, CPU对DMA控制器进行初始化设置 外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制 DMA传送 DMA读存储器:存储器 外设 DMA写存储器:存储器 外设 自动增减地址和计数,判断传送完成否,DMA传送流程
17、,具体过程,传送方式的比较,无条件传送:慢速外设需与CPU保持同步 查询传送: 简单实用,效率较低 中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销 DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送,IN AL, 21H,返回,输出OUT 43H, AL,返回,无条件传送流程,返回,查询传送流程,返回,返回,中断传送流程,DMA传送流程,DMA传送流程,返回,6.4 可编程并行接口8255A,特点: 含3个独立的8位并行输入/输出端口,各端口均具有数据的控制和锁存能力 可通过编程设置各端口的工作方式和数据传送方向(入/出/双向)。,PC7PC
18、4,PA7PA0,PC3PC0,PB7PB0,一、8255内部结构,1、数据总线缓冲器(8位三态) CPU数据命令 数据状态,2、读写控制逻辑 CS芯片选通 读写控制 A1A0端口地址 选择,3、A、B、C端口 单独的驱动和锁存,4、内部控制逻辑 依据控制字决定端口工作方式和状态,端口地址的区分方法 地址线的区分端口,AEN,A9,A8,A7,A6,A5,D7D0,A1,A0,74LS138,8255A,PA,PC,PB,定义工作方式,各口的I/O状态 对PC口按位操作,1:方式 选择 控制 字,控制字特征位,0:C口按位 操作控制字,特征码区分端口,A组控制,B组控制,A组方式选择,B组方
19、式选择,I/O方向选择,I/O方向选择,A口,上C口,下C口,B口,1:入 0:出,1:入 0:出,00:方式0 基本I/O方式 A口、上C口 01:方式1 选通 I 或 O 1:方式2 双向选通IO,0:方式0 基本I/O B口,下C口 1:方式1 选通I或O,二、8255的控制字,PA,PC7PC4,PB,例8.7:已知8255A如图连接 要求A口工作于方式0,作为输出,上C口输出; B口工作于方式1,作为选通输入。,PC3PC0,B口选通输入,A口工作于方式0,作为输出,上C口输出; B口工作于方式1,作为选通输入。,1,0,0,0,0,1,1,0,初始化程序为,86H,;直接寻址方式:
20、 MOV AL,86H; OUT 63H,AL;,;间接寻址方式: MOV DX,60H; MOV AL,86H; OUT DX,AL;,或,例8.9:已知8255A还如上图,要求端口C的PC7置1,将PC3置0 。,0,0,0,0,1,1,1,1,PC7置1,PC3置0,0,0,0,0,0,1,1,0,0FH,06H,;直接寻址方式: MOV AL,0FH; OUT 63H,AL; MOV AL,06H; OUT 63H,AL;,;间接寻址方式: MOV DX,63H; MOV AL,0FH; OUT DX,AL; MOV AL,06H; OUT DX,AL;,或,6.4.2 8255的三种
21、工作方式及操作时序,8255A有三种工作方式,分别称为方式0,方式1和方式2。 其中 A端口可以工作在三种方式中的任一种; B端口只能工作在方式0和方式1; C端口通常作为控制信号使用,配合A端口和B端口的工作。 每种工作方式的具体内容如下所述。,一、方式0 方式0的工作特点 (1)任何一个端口可作为输入口,也可作为输出口,各端口之间没有必然的联系。 (2)各个端口的输入或输出,可以有16种不同的组合,所以可以适用于多种使用场合。 同步传送 查询式传送。,例8.10 将开关的状态在发光二极管的显示出来,74LS078,显然PA为输入 PB为输出,1:方式选 择控制字,A组方式选择,B组方 式选
22、择,A口,上C口,下C口,B口,1,0,0,1,0,0,0,0,90H,CODE SEGMENT ASSUME CS:CODE START: MOV DX,21BH ;初始化8255 MOV AL,90H OUT DX,AL LOP: MOV DX,218H;读A口开关输入 IN AL,DX NOT AL ;数据取反 MOV DX,219H ;输出到B口显示 OUT DX,AL MOV AH,0BH ;按任意键返回DOS INT 21H ADD AL,01H JNZ LOP MOV AH,4CH INT 21H CODE ENDS END START,初始化8255A,开始,A口读入数据,数据
23、取反,B口输出显示,有键按下?,N,Y,结束,90H,二、方式1,选通输出,选通输入,A口联络信号,B口联络信号,外设,1、方式1(选通工作方式)的特点 利用一组选通控制信号控制A端口和B端口的数据输入输出。 特点: A、B口作输入或输出口,C口分为两部分,其部分位(6位)固定用作A口、B口的选通控制信号。 状态信息附在PC端口上(端口状态与引脚有些不同) C口的剩余位仍可作数据位使用,其余位(2位)可工作在方式0下,作为输入或输出线,用程序指定其数据传送方向。 A口、B口在作为输入和输出时的选通信号不同。 方式1的应用:主要用于中断控制方式下的输入或输出。,1,1,1,2、方式1(A口为例)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 06 输入输出 接口 中断 技术
链接地址:https://www.31doc.com/p-2593617.html