南京邮电大学微机课件第7章讲述

上传人:最**** 文档编号:116055824 上传时间:2019-11-15 格式:PPT 页数:73 大小:1.15MB
返回 下载 相关 举报
南京邮电大学微机课件第7章讲述_第1页
第1页 / 共73页
南京邮电大学微机课件第7章讲述_第2页
第2页 / 共73页
南京邮电大学微机课件第7章讲述_第3页
第3页 / 共73页
南京邮电大学微机课件第7章讲述_第4页
第4页 / 共73页
南京邮电大学微机课件第7章讲述_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《南京邮电大学微机课件第7章讲述》由会员分享,可在线阅读,更多相关《南京邮电大学微机课件第7章讲述(73页珍藏版)》请在金锄头文库上搜索。

1、第7章 输入/输出系统 7.1 7.1 输入输入/ /输出系统概述输出系统概述 一. 概 述 1. 接口电路的作用 CPU数据 输出接口电路 输出设备 CPU 输入接口电路 输入设备数据 接口: 是CPU与外部设备交换信息的中转站 I/O设备与总线之间的连接 输出接口电路输出设备 输入接口电路输入设备 系 统 总 线 I/O接口电路 2. 接口电路的功能 应具有数据暂存功能 应有端口地址译码器 (便于使用IN, OUT指令读写数据) 与外设之间有联络功能 有中断管理能力 有数据转换功能(并 串,串 并) 3. 关于端口的概念 “端口”是接口电路中, 能与CPU交换信息(使用IN, OUT) 的

2、寄存器。 端口分类: 数据口: 存放CPU向外设输出或外设输入的数据。 控制口: 存放控制信息-控制接口电路、外设的 工作。 状态口: 存放状态信息 反映外设的状态。 注意:接口电路必须具有数据口。 注:每个端口,系统都为它编了一个地址,系统只要给出某 个地址,通过译码电路,就能找到相应的I/O接口电路中的 端口寄存器。 问 题:系统给出的地址是内存单元地址还是I/O端口寄存 器的地址? 解决方案:合理安排I/O端口寄存器的编址方式。 4. 端口的编址方式 存储器映像方式 把端口和存储单元等同看待, 统一编址。 特点: 凡访问存储单元的指令都可访问 I/O端口,端口地址占用存储空间。 I/O端

3、口独立编址 特点: I/O 端口不占用存储空间, CPU要有专用的 I/O 指令。 5. PC系列机的端口编址 PC系列机采用端口独立编址; 从8088 奔腾微处理器, 设计时用A15 A0 低16位地址寻址 I/O 端口; 所以, CPU的端口寻址能力为216=65536个; 基于微处理器的PC系列, 实际使用A9 A0 做I/O地址; 所以, PC系列机 I/O 端口地址最多为 210=1024个。 这1024个口地址, 系统本身(主板上, 以及常 规 I/O接口)已经占用了一部分。 端口地址( I/O 空间)没有分段的概念。 二. 最常用的 I/O 指令 1.直接寻址 I/O 指令 设n

4、为8位端口地址 IN AL , n ; 口地址为n的端口中取数 AL OUT n , AL ; AL内容 口地址为n的端口寄存器 IN AX , n ; (n) AL, (n+1) AH OUT n , AX ; AL n口, AH n+1口 如: IN AL , 61H OUT 61H, AL 2. DX间址的I/O指令 当口地址 n 8位二进制数时, 用DX间址 注意: I/O 指令只能在端口和AL, AX, EAX之间 交换信息, 用DX间址, 但不能使用方括号, 即不能写成: IN AL, DX。 IN AL , DX ; DX的端口内容 AL OUT DX , AL ; AL DX的

5、端口寄存器 IN AX , DX ; DX AL, DX+1 AH OUT DX , AX ; AL DX, AH DX+1 的端口寄存器 如: MOV DX, 3F8H IN AL , DX ;从3F8H端口取数 AL 7.2 7.2 微机系统与外设交换信息的方式微机系统与外设交换信息的方式 微机系统与 I/O 端口的信息交换有四种方式: 无条件传送 查询方式 中断方式 DMA方式 采用何种方式与接口的硬件电路有直接关系 1.无条件传送 输入接口: 八 个 三 态 门 地址译码器 IOR 数据线 外设 8 入 出 控 控=0,出=入 控=1,出为高阻 入 出 控 入出 控 控=1,出=入 控

6、=0,出为高阻 执行IN指令之前, 外设数据已经准备好。 输出接口 锁 存 器 地址译码器 IOW 数据线 外设 8 Q CP D . D7 D0 执行OUT指令时: AL内容 数据线, 口地址 地址线上, IOW=低, 把数据锁存到 锁存器中。 【例】 假设微机系统外扩了6位共阴极数码管电路, 要求每隔一秒完成一次“8”字左移,循环往复,直 到主机键盘按下任意键时停止。 h 共阴结构 a b c d e f g h com 对应关系 (200H选中) D7-D0 (201H选中) D0 D7 D6 D5 D4 D3 D2 D1 a b c d e f g h CS CS 7FH 6位数码管接

7、口电路 8位锁存器(段选) 8位锁存器(位选) COM D7-D0 6位反相驱动器 D0 D5 20H 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 数码管显示原理 使用段选码和位选码进行控制 段选码:显示什么字符。6个数码管的同名段共享连接,并且a接D0;b 接D1、;g接D6、h接D7。显示字符“8”的段选码是 01111111B=7FH 。 位选码:选择被点亮的数码管(仅D5-D0有效)。 点亮第6个,位选码为00100000B(20H) 点亮第5个,位选码为00010000B(10H) 点亮第4个,位选码为00001000B(08H) 点亮第3个,位选

8、码为00000100B(04H) 点亮第2个,位选码为00000010B(02H) 点亮第1个,位选码为00000001B(01H) 设计思路 主要解决四个问题: (1)字符“8”的显示控制问题,包括段选码和 位选码; (2)时间间隔1秒钟如何实现; (3)每隔一秒钟“8”如何左移一位显示; (4)显示过程如何结束 MOV DX,201H MOV AL,7FH ; “8”的段选码 OUT DX, AL MOV DX,200H MOV AL,位选码 ;初值=20H OUT DX, AL SHR 位码,1 : SCAN:MOV AL,1 INT 16H JZ SCAN 结束准备 【程序清单】 .4

9、86 DATA SEGMENT USE16 ORIGIN DB 20H ;数码管位选码初值 TTT DW 100 ;延时时间 DATA ENDS CODE SEGMENT USE16 ASSUME CS: CODE, DS: DATA BEG: MOV AX, DATA MOV DS, AX ;DS段赋值 MOV DX, 201H MOV AL, 7FH OUT DX, AL ;输出“8”字型码 LAST: MOV AL, ORIGIN MOV DX, 200H OUT DX, AL ;输出位选码 CALL DELAY ;延时1秒 SHR ORIGIN,1 JNC NEXT MOV ORIGI

10、N, 20H NEXT: MOV AH, 1 INT 16H ; 有键入? JZ LAST ;否 MOV AH, 4CH INT 21H ;延时子程序 DELAY PROC MOV AH,2DH MOV CX,0 MOV Dx,0 INT 21H READ: MOV AH,2CH INT 21H MOV AL,100 MUL DH MOV DH,0 ADD AX,DX CMP AX,TTT JC READ RET DELAY ENDP CODE ENDS END BEG 2.查询方式 用查询方式交换信息, 必先了解外设的状态。 查询方式输入流程 从状态口读取 状态信息 数据准备好? 执行IN指

11、令, 取出数据 Y N 从状态口读取 状态信息 外设空闲否? 执行OUT指令, 输出一个数据 Y N 查询方式输出流程 查询方式输入接口示意图 地址译码器 地址总线 IOR 锁 存 器 (8) 三态 缓冲 器 (8) CPU 数据线 数据 输 入 设 备 输入选 通信号 R D Q +5V 状态标志 寄存器 IOR 地址译码器 数据口选中 接 数 据 线 D7 位 查询式输入核心程序 设状态口地址=200H 数据口地址=201H RSCAN : MOV DX , 200H IN AL , DX TEST AL , 80H JZ RSCAN MOV DX , 201H IN AL , DX 查询

12、式输出接口示意图 “0”为空闲 锁 存 器 (8) 数据 IOW 地址译码器 地址总线 IOR 数据总线 数据口选中 ACK 输 出 设 备 Q D +5V 状态标志 状态口选中 接数据线D0位 R 查询式数据输出核心程序 设状态口地址=200H=数据口地址 TSCAN: MOV DX, 200H IN AL, DX TEST AL, 1 JNZ TSCAN MOV DX, 200H MOV AL, 某数 OUT DX, AL 3. 中断控制方式 在有多个外设的系统中,多个外设要求CPU为它服务 是随机的 若采用查询方式工作,就不能保证系统实时地对外设 的请求作出响应 为了提高CPU的效率,使

13、系统有实时性能,导致了中 断处理技术的产生 特点: 在外设没有作好数据传送准备时,CPU可执行与传送数据无 关的其它指令 当外设作好传送准备后,主动向CPU请求中断 若CPU响应这一请求,则暂停正在运行的程序,转入中断服 务程序,完成数据传送 待服务完毕后,自动返回原来运行的程序 4.直接存储器存取(DMA)方式 为什么要有DMA? 什么是DMA? 特点: 用硬件实现在外设与内存间直接进行数据交换,而不通 过CPU 数据传送速度的上限就取决于存储器的工作速度 速度快 7.3 DMA控制器 1. DMA (Direct Memory Access) : 直接存储器存取, 习 惯上称DMA传送。

14、DMA传送: 利用硬件完成高速外设与系统RAM之间 的信息交换。 2. DMAC: DMA 控制器。 它是实现DMA传送的核心芯片。 3. 专用术语: DMA读传送: 在DMAC控制下, 读取RAM的内容 I/O端口。 DMA写传送: I/O端口信息 系统RAM某单元。 存储单元读 / 写传送: 在DMAC控制下, 实现系统 RAM RAM。 注意:在PC系列机中禁止RAM RAM传送。 4. DMA传送的过程 HOLD CPU HLDA HRQ DREQ DMAC HLDA DACK I/O 接口 RAM 总线保持请求 总线响应 DMA 请求 DMA 响应 AB DB CB HOLD CPU

15、 HLDA HRQ DREQ DMAC HLDA DACK I/O 接口 RAM 总线保持请求 总线响应 DMA 请求 DMA 响应 AB DB CB 系统的三总线分别受到CPU和DMAC的控制。 CPU可以向地址总线、数据总线、控制总线上发送信 息, DMAC也可以向地址总线、数据总线、控制总线 上发送信息, 但同一时间, 三总线只能受一个器件的控 制, 所以, 两者之间必须有联络信号: HOLD CPU HLDA HRQ DREQ DMAC HLDA DACK I/O 接口 RAM 总线保持请求 总线响应 DMA 请求 DMA 响应 AB DB CB 高速外设, 通过其接口电路向DMAC发出“DMA请求” 信号 (请求DMAC为其传送数据)。 DMAC检测到有DMA请求之后, 即向CPU提出总线保 持请求 (请求CPU脱离总线)。 HO

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号