已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
输入 输出和中断 7 1外设接口的一般结构7 2CPU与外设交换数据的方式7 3中断7 48086 8088的中断系统7 58259A可编程中断控制器7 68237DMA控制器 第7章 外设接口的一般结构 一个简单的外设接口框图如图7 1所示 从图中可以看出CPU通过一个外设接口同外设之间交换的信息主要有三类 数据信息 状态信息 控制信息 7 1 1数据信息 在微型机中 数据大致为三种基本类型 数字量 模拟量 开关量 7 1 状态信息 READY 准备好信号 表示输入设备已经准备好信息 CPU可执行输入指令从该外设输入数据 BUSY 忙信号 表示输出设备正在输出信息 即在 忙 着 同时也等于指示CPU等待 状态信息表示外设当前所处的工作状态 例如 7 1 2 控制信息 控制信息是由CPU发出的 用于控制I O接口的工作方式以及外设的启动和停止等等 状态信息和控制信息以及数据信息 通常都以数据形式通过数据总线传送 这些信息在I O接口中分别存放在不同的端口中 7 1 3 CPU与外设交换数据的方式 7 2 1程序控制传递方式 程序控制的数据传送分为无条件传送 查询传送和中断传送 这类传送方式的特点是 以CPU为中心 数据传送的控制来自CPU 通过预先编制好的输入或输出程序 传送指令和I O指令 实现数据的传送 7 2 1 无条件传送方式查询传送方式中断传送方式 程序控制传递方式 无条件传送方式 无条件传送方式又称同步传送方式 主要用于外设工作的时间已知的场合 外设必须在微处理器限定的指令时间内准备就绪 并完成数据的接收或发送 通常采用的办法是 把I O指令插入到程序中 当程序执行到该I O指令时 外设必定已为传送数据作好了准备 于是在此指令时间内完成数据传送任务 查询传送方式 查询传送方式又称异步传送方式 中断传送方式 利用中断来实现CPU与外设之间的数据传送 这就是中断传送方式 采用中断传送方式时 CPU从启动外设到外设准备就绪这段时间 不像查询方式一样处于等待状态 而仅仅是在外设准备好数据传送的情况下才中止CPU执行的主程序 在一定程度上实现了主机和外设的并行工作 通过执行一条输入指令 读取所选外设的当前状态 2 根据该设备的状态决定程序去向 完成一次传送过程的步骤如下 DMA 直接存储器存取 传递方式 在外设和内存之间直接传送数据的方式 即DMA传送方式 DMA DirectMemoryAccess 是一种不需要CPU干预也不需要软件介入的高速数据传送方式 7 2 2 DMA操作的基本方法 周期挪用 CycleStealing 周期扩散 CPU停机方式 周期挪用 CycleStealing 利用CPU不访问存储器的那些周期来实现DMA操作 此时DMAC可以使用总线而不用通知CPU也不会妨碍CPU的工作 这种方法的关键是如何识别合适的可挪用的周期 以避免同CPU的操作发生重叠 这种方法会使CPU的处理速度减慢 而且CPU时钟周期的加宽是有限的 因此用这种方法进行DMA传送 一次只能传送一个字节 周期扩散 CPU停机方式 这是最常用的 最简单的传送方式 大部分DMAC都采用这种方式 DMA的传送方式 通常 大部分DMAC都有三种DMA传送方式 成组传送方式 请求传送方式 单字传送方式 单字节传送方式 每次DMA传送只传送一个字节的数据 传送后释放总线由CPU控制总线至少一个完整的总线周期 以后又测试DMA请求线DREQ 若有效 再进入DMA周期 成组传送方式 一个DMA请求可以传送一组信息 这一组信息的字节数由编程决定 在DMAC初始化时 只要在DACK有效之前DREQ保持有效即可 一旦DACK有效 不管DREQ是否有效 DMAC一直不放弃总线控制权 直到整个数组传送完 请求传送方式 又称查询传送方式 DMAC应该具有如下功能 1 能接收外设的请求 向CPU发出DMA请求信号 2 当CPU发出DMA响应信号后 DMAC接管对总线的控制 进入DMA方式 3 能寻址存储器 即能输出地址信息和修改地址 DMAC DMA控制器 的基本功能 4 能向存储器和外设发生相应的读 写控制信号 5 能控制传送的字节数 判断DMA是否结束 6 在DMA传送结束后 能结束DMA请求信号 释放总线 使CPU恢复正常工作 中断 7 3 1概述 中断是外设随机地 指主程序运行到任何一条指令时 或程序预先安排产生中断请求信号 暂停CPU正在运行的程序 转入执行称为中断服务的子程序 中断服务完毕后 返回到主程序被中断处继续执行的过程 7 3 中断源 引起中断的事件称为中断源 通常中断源有以下几种 输入 输出设备 如键盘 显示器和打印机等 数据通道 如磁带等 实时控制过程中的各种参数 故障源 如掉电保护等 5 控制系统的现场测试信号以及软件中断 为了满足上述各种条件下的要求 中断系统应具有以下 1 能实现中断响应 中断服务和中断返回2 能实现中断优先级排队3 能实现中断嵌套 功能 中断过程与中断管理 1 中断过程 对于不同的微机系统 CPU中断处理的具体过程不尽相同 但是一个完整的中断基本过程应包括 中断请求 中断判优 中断响应 中断处理及中断返回等五个基本过程 7 3 2 中断请求 中断判优 中断响应 中断处理 中断返回 1 软件查询方式 软件查询优先方式是最简单的中断优先处理方式 图6 5显示了采用软件查询方式的接口电路 2 中断优先权 硬件优先权排队方式常用的有两种 专用硬件方式 可编程的中断控制器 采用可编程中断控制器 是当前微型计算机系统中解决中断优先权管理的常用办法 详细说明将在本章第5节介绍 2 硬件优先权排队电路 简单硬件方式 菊花链法或链式优先权排队电路 链式优先权排队逻辑电路如图6 7所示 图6 6软件查询方式流程图 8086 8088的中断系统 7 4 1中断结构 1 中断分类 8086 8088CPU可以处理256种类型的中断源 这些中断源可分为硬件中断和软件中断两大类 2 中断向量表 在8086系统中 允许引入256种类型中断源 类型码为0 255 相应有256个中断服务程序首址 存放中断地址的一段内存空间称中断向量表 7 4 7 4 2 在8086 8088系统中 通过执行中断指令或由CPU本身启动的中断称为内部中断 也称软件中断 除单步中断外 内部中断无法用软件禁止 即不受中断允许标志IF的影响 1 内部中断的类型 1 0型中断 除法出错中断 2 1型中断 单步中断 3 3型中断 断点中断 4 4型中断 溢出中断 5 INTn指令中断 内部中断 软中断 8086 8088中的各种中断的响应和处理过程是不相同的 主要区别在于如何获取相应的中断类型码 对于专用中断 中断类型码是自动形成的 几种类型码为 类型0 1 3 4 内部中断的处理过程 对于INTn指令 其类型码为指令中给定的n 2 1 外部中断的响应及中断响应周期时序 CPU采样到非屏蔽中断请求时 自动提供中断类型号2 然后根据中断类型号 查找中断向量表指针 其后的处理与内部中断一样 8086 8088CPU为外部设备提供了两条硬件中断信号线 即NMI和INTR中断请求信号 外部中断 硬中断 7 4 3 2 外部中断处理过程 如果把CPU中断响应周期的动作和前面讲到的中断响应过程结合起来 当一个可屏蔽中断被响应时 CPU实际执行了7个总线周期 1 执行第一个INTA周期 2 执行第二个INTA周期 3 执行一个总线写周期 4 执行一个总线写周期 5 执行一个总线写周期 6 执行一个总线读周期 7 执行一个总线周期 从中断向量表中取出中断服务程序入口地址的段值送CS 对于非屏蔽与软中断跳过第 1 2 步 从第 3 步开始执行到第 7 步 CPU实际执行了7个总线周期 8086 8088系统中 中断优先权排队次序从高到低为 除法出错 INTn INTO NMI INTR 单步中断 除单步之外的内部优先权最高 其次是非屏蔽中断 再次是可屏蔽中断 而单步最低 中断响应和处理流程如图6 10所示 各类中断的优先权及中断响应 7 4 4 8259A可编程中断控制器 7 5 18259A的功能 结构及工作原理 1 功能 Intel8259A是与8086系列CPU兼容的可编程中断控制器 它的主要功能为 1 具有8级优先权控制 通过级连可扩展至64级优先权控制 2 每一级中断都可以屏蔽或允许 3 在中断响应周期 8259A可提供相应的中断向量号 中断类型号 4 8259A的工作方式 可通过编程来进行选择 7 5 1 8259A的内部结构 结构 中断请求寄存器IRR InterruptRequestRegister 优先权电路中断服务寄存器ISR IN ServiceRegister 中断屏蔽寄存器IMR InterruptMaskRegister 数据总线缓冲器读写电路控制逻辑和级连缓冲 比较器 2 8259A是28个引脚的双列直插芯片 其引脚如图7 12所示 D7 D0 双向三态数据线 它可直接与数据总线连接 IR0 IR7 中断请求输入线 其中IR 优先权最高 IR7最低 INT 中断请求输出 接CPU的中断请求线INTR INTA 中断响应输入 接受CPU发来的中断响应信号 8259A的引线 2 WR 写控制信号线 当为低电平时 CPU向8259A写入控制信号 RD 读控制信号线 当为低时 可将8259A内部寄存器的信息读至数据总线 A0 用以选择8259A内部不同寄存器 通常与地址总线A0相连接 CAS0 CAS2级连信号 对于主8259A 它们是输出线 而对于从8259A 它们是输入线 SP EN从程序 缓冲器允许信号 是一个双功能信号 CS 片选信号线 当该脚为低电平时 8259A被选中 8259A的工作原理是通过其内部各处理部件的工作过程来体现的 3 8259A的工作原理 8259A的初始化命令字共4个 ICW1 ICW4 不是任何情况下都需要设置4个命令字 可根据8259A的使用情况来选取 它们设置过程如图6 13所示 工作方式编程 8259A的编程 7 5 2 8259A的编程分两部分 初始化编程 1 8259A的初始化编程 1 写初始化命令字ICW1 2 写初始化命令字ICW2 其格式如图7 15所示 中断类型控制字用来定义中断类型码的高5位 芯片控制字 3 写初始化指令字ICW3 主 从片初始化 4 写初始化命令字ICW4 方式控制字 图7 16ICW3的格式 图7 17ICW4的格式 图7 14ICW1的格式 图7 14ICW1的格式 1 需要ICW40 不需要ICW4 偶地址 A0D7D6D5D4D3D2D1D0 ICW1识别位 1 单片0 级连 调用地址间隔1 间隔为480X86中不用0 间隔为8 1 电平触发0 边沿触发 中断向量地址的A7 A5 只用于MCS 80 85 图7 15ICW3的格式 奇地址 中断类型 自动填入 IR0000 IR1001 IR7111 A0 8259A的操作命令字 1 操作命令字OCW1 屏蔽操作命令字 该命令字用来设置或清除对中断的屏蔽称中断屏蔽命令字 格式如图7 18所示 该命令字用来设置优先级循环和中断结束方式 其格式如图7 19所示 2 操作命令字OCW2 中断方式命令字 3 操作命令字OCW3 状态操作命令字 该操作命令字功能有三方面 设置和撤销特殊屏蔽方式 设置中断查询方式 设置对8259A内部寄存器的读出命令 OCW3的具体格式如图7 20所示 2 图7 18OCW1的格式 中断屏蔽1 置屏蔽0 复位屏蔽 奇地址 A0D7D6D5D4D3D2D1D0 8259A的工作方式 8259A具有非常灵活的中断管理方式 可满足用户的各种不同的要求 中断优先权的管理是中断管理的核心问题 8259A中对中断优先权的管理可概括为完全嵌套方式 自动循环方式 中断屏蔽方式及查询方式 1 中断嵌套方式 2 特殊全嵌套方式 7 5 3 1 全嵌套方式 中断优先级循环方式 8259A中有两种改变优先权的办法 1 自动循环方式 2 特殊循环方式 3 中断屏蔽 2 1 普通屏蔽方式 2 特殊屏蔽方式 4 程序查询方式 中断结束命令 根据不同的工作方式8259A可以有几种不同的结束方法 1 自动中断结束方式 AEOI 2 非自动中断结束方式 EOI 3 特殊中断结束方式 5 6 读8259A的状态 8259A的编程实例 1 初始化编程 7 5 5 对IBMPC XT机中使用的8259A初始化编程 例7 1 2 应用实例 略 见课本 7 5 4 由多片8259A组成的主从式中断系统 8237DMA控制器 Intel8237A是一种高功能的可编程的DMA控制器 采用主5MHz的8237A传送速度可达到1 6Mb s 7 6 1主要功能 7 6 1 在一个片子中有4个独立的DMA通道 每个通道均可独立地传送数据 2 每个通道的DMA请求都可以分别允许和禁止 3 每个通道的DMA请求有不同的优先权 优先权可以是固定的 也可以是旋转的 4 每一个通道一次传送的最大长度可达64K字节 可以在存储器与外设间进行数据传送 也可以在存储器的两个区域之间进行传送 主要功能 6 有一条结束处理的输入信号EOP 允许外界用此输入端来结束DMA传送或重新初始化 7 8237A可以级连 任意扩展通道 5 8237A的DMA传送有以下四种方式 单字节传送 数据块传送 请求传送方式 级连方式 1 8237A的编程结构和引脚 8237A的结构和工作原理 1 8237A的编程结构 7 6 2 2 8237A的引脚信号 2 8237A的工作原理 1 8237A的工作模式和模式寄存器的格式 2 控制寄存器的格式 6 8237A各寄存器对应的端口地址 3 状态寄存器的格式 4 请求寄存器和屏蔽寄存器的格式 5 复位命令和清除先 后触发器命令 图7 32屏蔽寄存器的格式 不用 屏蔽设置 1 设屏蔽位 0 去除屏蔽位 通道选择 00 通道0 01 通道1 10 通道2 11 通道3 为了学习8237A的编程方法 下面我们以IBMPC XT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 眼科人工晶体工程师考试试卷及答案
- 研学基地规划工程师考试试卷及答案
- 烟草检测工程师考试试卷及答案
- 2026年山东省胶州市高二生物下册期末考试试卷及参考答案【突破训练】
- 2025年湖北省广水市高二生物下册期末考试测试卷含答案【模拟题】
- 2025年湖北省丹江口市高二生物下册期末考试模拟卷及完整答案(夺冠系列)
- 2026年辽宁省北票市高二生物下册期末考试试卷含完整答案(易错题)
- 2026年江西省德兴市高二生物下册期末考试考试卷含答案(突破训练)
- 2026年吉林省扶余市高二生物下册期末考试试卷及完整答案【有一套】
- 2026年江苏省邳州市高二生物下册期末考试考试卷及参考答案(满分必刷)
- 2026年《长征》试题及答案
- 情绪传播机制-洞察与解读
- 2026广东佛山市顺德区村(社区)大学生CEO选聘100人备考题库及1套参考答案详解
- 2026广东佛山市顺德区村(社区)大学生CEO选聘100人备考题库完整答案详解
- 2026年普通高等学校招生全国统一考试(北京高考卷)数学试卷
- 2026年河口区卫生类事业单位公开招聘工作人员(24人)笔试参考题库及答案详解
- YDT 5102-2024 通信线路工程技术规范
- 2025年7月浙江省普通高中学业水平考试化学试题(解析版)
- 《现代汉语(二 )》期末试卷A
- O型圈新国标尺寸表
- 前处理方式对新冠病毒痰液及粪便样本核酸检测的影响分析
评论
0/150
提交评论