- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 微型计算机和外设的数据传输 本章重点: 接口电路的功能 接口部件和I/O端口 CPU和外设之间的三种数据传输方式、各自优缺点和使用场合 中断传输方式的原理和可屏蔽中断的响应过程 DMA方式的原理和DMA控制器的功能 教学建议: 在讲述接口电路的I/O端口基础上,以讲清楚中断方式的原理和DMA方式原理为目标。 本章用2学时。 5.1 为什么要用接口电路 (1)接口电路按功能可分为两类: 使微处理器正常工作所需的辅助电路 输入输出接口电路: (2)为什么要用接口电路 5.2 CPU和输入输出设备之间的信号 CPU和输入输出设备之间有以下几类信号 : (1)数据信息,又分为: 数字量 模拟量 开关量 (2)状态信息 (3)控制信息 5.3 接口部件的I/O端口 数据端口 状态端口 控制端口或命令端口 外设通过接口和系统的连接 IN AL, 21H OUT 43H, AL 5.4 CPU和外设之间的数据传送方式 解决定时问题的三种传送方式: 程序方式 中断方式 DMA方式 5.4.1 程序方式 1. 无条件传送方式 2 . 条件传送方式 (1)条件传送的概念 (2)条件传送的三个环节: CPU从接口中读取状态字 CPU检测状态字 传送数据 查询式输入的接口电路 查询式输出的接口电路 5.4.2 中断方式 1. 中断传送方式的原理 可屏蔽中断的响应和执行 2 . 中断优先级问题的解决 (1)解决中断优先级的三种办法: 软件查询方式 简单硬件方式——菊花链法 专用硬件方式 (2)三种方法的优缺点 中断优先级菊花链及其逻辑电路 (a) 菊花链 (b) 菊花链逻辑电路中断请求 典型的可编程中断控制器 5.4.3 DMA方式 1. DMA传送方式的提出 DMA传送方式的优点 数据传输率 2 .DMA控制器的功能和原理 DMA控制器的功能: 向CPU发总线请求信号 实行对总线的控制 修改所用的存储器或接口的地址指针 发读写控制信号 存放数据长度 交还总线控制权 DMA传输单个数据(输出过程)的原理 DMA控制器的内部最小配置和接口要求 从接口往内存传输一个数据块的过程: ① 接口往DMA控制器发一个DMA请求 ② 得到总线控制权 ③ 地址寄存器的内容送地址总线 ④ 通知接口将数据送到数据总线 ⑤ 数据送到所指单元 ⑥ 地址寄存器的值加1 ⑦ 字节计数器的值减1 ⑧ 如字节计数器的值不为0,则回到①;否则结束 DMA传输对接口的要求: ① 控制寄存器有1位指出数据传输方向 ② 控制寄存器有1位用来启动I/O操作 ③ 状态寄存器有1位指出设备当前是否处于忙状态 DMA传输对DMA控制寄存器的要求: ① 有1位作为DMA允许位 ② 有1位用来确定DMA方向 ③ 有1位决定进行一次传输后放弃还是维持对总线的控制权 ④ 状态寄存器有1位表示数据块传输是否结束 对DMA控制器和接口部件预置的信息: ① 往DMA控制器的字节计数器设置初值 ② 往DMA控制器的地址寄存器中设置地址初值 ③ 对DMA控制器设置控制字并启动DMA操作 ④ 对接口部件设置控制字并启动I/O操作 启动数据块输入的例子 IDLE:IN AL,INTSTAT ;检测设备是否处于 忙状态,如是,则等待 TEST AL,04 JNZ IDLE MOV AX,COUNT ;设置计数 OUT BYTE-REG,AX LEA AX,BUFFER ;设置地址初值 OUT ADD-REG,AX MOV AL,DMAC ;取原DMA控制字 OR AL,49H ;设置方向、块传输 ;和允许标志 OUT DMACON,AL ;置DMA控制字 MOV AL,INTC ;设置接口的传输方向 ;及允许标志 OR AL,05H OUT INTCON,AL ;设置接口的控制字 3. DMA控制器的工作特点 是一个接口电路 能够控制系统总线 操纵外设和存储器之间的数据传输 5.4.4 输入输出过程中提出的几个问题 1.系统如何知道接口已准备好数据等待CPU提取或者准备接收CPU的数据? 2.当系统中有几个设备处于同一种传输方式之下、而且同时发传输请求时,系统到底先响应哪个请求? 外部设备为什么要通过接口电路和主机系统相连?存储器需要接口电路和总线相连吗?为什么? 解答: 因为外设的功能多种多样,对于模拟量信息的
文档评论(0)