第六章-IO接口和数据传输.ppt_第1页
第六章-IO接口和数据传输.ppt_第2页
第六章-IO接口和数据传输.ppt_第3页
第六章-IO接口和数据传输.ppt_第4页
第六章-IO接口和数据传输.ppt_第5页
免费预览已结束,剩余31页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

左旭坤 zxk78 1 微型计算机原理及其应用 第六章 输入 输出接口和数据传输 皖西学院计算机系 左旭坤 zxk78 2 第六章 输入 输出接口和数据传输 输入 输出接口功能CPU和输入输出设备间的信号接口部件的I O端口和寻址方式CPU和外设间的数据传送方式 左旭坤 zxk78 3 第六章 输入 输出接口和数据传输 输入 输出接口功能CPU和输入输出设备间的信号接口部件的I O端口和寻址方式CPU和外设间的数据传送方式 左旭坤 zxk78 4 第六章 输入 输出接口和数据传输 接口功能 什么是输入 输出设备 计算机有各种用途 但不论用于何种场合 都离不开信息处理 所处理的信息 均要由输入设备提供 而处理后的结果数据 则要送给输出设备 以各种形式报告给用户 例如 键盘 鼠标器 磁盘和扫描仪等是大家熟悉的输入设备 而磁盘 CRT显示器 打印机 X Y绘图仪等则是最常见的输出设备 亦即能够完成输入 输出操作的设备就叫输入 输出设备 简称外设或I O设备 左旭坤 zxk78 5 第六章 输入 输出接口和数据传输 接口功能 输入 输出设备与CPU信息交换时有什么问题 外部设备种类繁多 从工作原理来讲 可分为机械式 电动式 电子式和其它形式等几类 它们对所传输的信息的要求也各不相同 这就给计算机和外设之间的信息交换带来以下一些问题 1 速度不匹配 CPU的速度很高 而外设的速度要低得多 而且不同的外设速度差异甚大 它们之中既有每秒钟能传送兆位数量级的硬磁盘 也有每秒钟只能打印百位字符的串行打印机或速度更慢的键盘 2 信号电平不匹配 CPU所使用的信号都是TTL电平 而外设大多是复杂的机电设备 往往不能用TTL电平所驱动 必须有自己的电源系统和信号电平 3 信号格式不匹配 CPU系统总线上传送的通常是8位 16位或32位的并行数据 而各种外设使用的信息格式各不相同 有些设备上用的是模拟量 而有些是数字量或开关量 有些设备上的信息是电流量 而有些却是电压量 有些设备采用串行方式传送数据 而有些则用并行方式 4 时序不匹配 各种外设都有自己的定时和控制逻辑 与计算机的CPU时序不一致 左旭坤 zxk78 6 第六章 输入 输出接口和数据传输 接口功能 什么是输入 输出接口 因此 要实现外部设备与主机之间的连接 connection 和信息交换 必须经过一个数据转换和传输的设备 这种设备 我们叫做I O接口 interface 左旭坤 zxk78 7 第六章 输入 输出接口和数据传输 接口功能 输入 输出接口及其功能I O接口 I O接口是指把外设同微型计算机连接起来实现数据传送的中间控制电路 接口的功能有 1 数据格式转换功能 串 并转换 2 联络功能 协调数据传送的状态信息 3 速度匹配功能 4 寻址功能 左旭坤 zxk78 8 第六章 输入 输出接口和数据传输 输入 输出接口功能CPU和输入输出设备间的信号接口部件的I O端口和寻址方式CPU和外设间的数据传送方式 左旭坤 zxk78 9 第六章 输入 输出接口和数据传输 CPU和I O设备间的信号 CPU和外设之间需要交换三种信息数据信息 送入CPU进行加工处理的信息或输出到外设的运算结果 数字量 通常由键盘 磁盘驱动器等读入的信息 或由CPU送给打印机 磁盘驱动器 显示器或绘图仪的信息 它们是二进制形式数据或ASCII码表示的数据及字符 模拟量 当微型计算机用于控制时 多数情况下的输入信息是现场连续变化的物理量 它们常常需要被转化成电压或电流信号 然后进行模拟 数字 A D 转换 变成数字量 送入计算机 相反 输出控制时又要将数字量转换成模拟量 D A 来驱动被控对象 开关量 开关量可以表示两个状态 如开关的通 断 电机的启动和停止等 常常可以把一组开关量组成一个数字量 以便于计算机的处理 控制信息 是CPU发出的 用以控制外设的工作方式或外设的启动和停止 状态信息 反映了外设当前所处的工作状态 是外设通过接口送给CPU的信号 左旭坤 zxk78 10 第六章 输入 输出接口和数据传输 CPU和I O设备间的信号 CPU和外设之间需要交换三种信息CPU与外设之间不是直接交换数据 控制 状态信息 而是通过接口间接传送的 以上三种信息在形式上都是二进制代码 它们都是通过DB来传送的 分别放在接口内的不同端口中 而接口对DB上数据识别其类型是根据相应的端口地址来进行 左旭坤 zxk78 11 第六章 输入 输出接口和数据传输 输入 输出接口功能CPU和输入输出设备间的信号接口部件的I O端口和寻址方式CPU和外设间的数据传送方式 左旭坤 zxk78 12 第六章 输入 输出接口和数据传输 I O端口和寻址方式 接口部件的I O端口CPU与外设通信时 传送的信息主要包括数据信息 状态信息和控制信息 在接口电路中 这些信息分别进入不同的寄存器 通常将这些寄存器和它们的控制逻辑统称为I O端口 即 I O端口 是指I O接口中CPU可以读 写的寄存器 一般接口通常有数据端口 控制端口 状态端口 数据端口 数据端口是用来存放外设送往CPU的数据或CPU要输出到外设去的数据 这些数据是主机和外设之间交换的最基本的信息 长度一般为1 2字节 数据端口主要起数据缓冲的作用 状态端口 状态端口是用来指示外设的当前状态 每种状态用1位表示 每个外设可以有几个状态位 它们可由CPU读取 以测试或检查外设的状态 决定程序的流程 控制端口 它用来存放CPU向接口发出的各种命令和控制字 以便控制接口或设备的动作 常见的命令信息位有启动位 停止位 允许中断位等 接口芯片不同 控制字的格式和内容是各不相同的 常见的控制字有方式选择控制字 操作命令字等 左旭坤 zxk78 13 第六章 输入 输出接口和数据传输 I O端口和寻址方式 I O端口的寻址方式CPU对外设的访问实质上是对I O接口电路中相应的端口进行访问 因此和存储器那样 也需要由译码电路来形成I O端口地址 I O端口的编址方式有两种 存储器映象编址方式和独立编址方式 存储器映像编制方式 在这种编址方式中 将外设接口地址和内部存储器地址统一安排在内存的地址空间中 即把内存地址分配给外设 由外设来占用这些地址 用于外设的这些地址 存储器不能再使用 独立编制方式 在这种编址方式中 内存地址空间和外设地址空间是相互独立的 例如 在8086CPU中 内存地址是连续的1M字节 从00000H FFFFFH 而外设的地址范围从0000H FFFFH 它们相互独立 互不影响 左旭坤 zxk78 14 第六章 输入 输出接口和数据传输 I O端口和寻址方式 I O端口的寻址方式 左旭坤 zxk78 15 第六章 输入 输出接口和数据传输 输入 输出接口功能CPU和输入输出设备间的信号接口部件的I O端口和寻址方式CPU和外设间的数据传送方式 左旭坤 zxk78 16 第六章 输入 输出接口和数据传输 数据传送方式 在计算机的操作过程中 最基本的最大量的操作是数据传送 在微机系统中 数据主要在CPU 存储器和I O接口之间传送 在数据传送过程中 关键问题是数据传送的控制方式 微机系统中的数据传送的控制方式主要有软件传送方式 程序控制方式 和硬件传送方式 主要是DMA直接存储器存取 方式 其中 软件传送方式又包括 无条件传送方式 查询传送方式和中断传送方式 左旭坤 zxk78 17 第六章 输入 输出接口和数据传输 数据传送方式 无条件传送方式无条件传送方式也称为同步传送方式 无条件传送方式用得较少 只用在对一些简单外设的操作 如指示灯 数码管显示等 或者用于控制CPU与低速接口之间的信息交换 例如温度 压力 流量等 A D 转换器 由于这些信号变化的速度相对于CPU的处理速度慢得多 所以 CPU可以间隔较长的时间才去访问这些外设 而外设也就有充裕的时间来准备数据 无条件传送分为两种情况 无条件输入 外设 CPU 无条件输出 CPU 外设 若外设是输入设备 由于外设数据更新的速度很慢 所以输入端可直接用 输入缓冲器 作为接口与CPU的数据总线相连 若外设是输出设备 因为外设的速度较慢 所以要求CPU送到外设的数据只能暂时保存在接口中 直到外设取完全部数据 所以此时应选用有锁存能力的接口 锁存器 左旭坤 zxk78 18 第六章 输入 输出接口和数据传输 数据传送方式 无条件传送输入缓冲器 外设送来的数据在接口电路的输入端保持一段时间 以便CPU与慢速的输入设备在速度上进行匹配 输出锁存器 CPU送出的数据在接口电路的输出端保持一段时间 与慢速的输出设备在速度上进行匹配 端口译码器 CPU执行端口读写指令时 地址总线送出端口地址 M IO信号有效 端口译码器有效打开分别控制两个锁存器 缓冲器的或门 这时 若RD信号有效 则打开输入缓冲器 CPU读入输入缓冲器端口中的数据 若WR信号有效 则将CPU送到数据总线的数据打入输出锁存器 输出锁存器保持这个数据 直到外设取走 可以看出 这里的输入输出端口公用相同的端口地址 端口译码器决定端口地址 低 左旭坤 zxk78 19 第六章 输入 输出接口和数据传输 数据传送方式 无条件传送方式 例6 1 图中外设是简单的发光二极管 此外设的接口是用锁存器来实现的 锁存器在打入脉冲CP上升沿将输入端D的数据锁存在它的输出Q端 编写点亮二极管的程序 端口地址为0000H MOVAL 81HMOVDX 0000H 送端口地址OUTDX AL 点亮发光二极管 IOW 由低变高时 74LS237锁存CPU发来的数据 左旭坤 zxk78 20 第六章 输入 输出接口和数据传输 数据传送方式 无条件传送方式 例6 2 类似于例6 1中 让接在Q0 Q7上的二极管自上而下轮流点亮3s 编写程序实现 MOVAL 01H 使Q0为1 LED0先亮MOVDX 0000Hnext OUTDX AL 将信息送0000H端口CALLDELAY 调用延时3S子程序ROLAL 1 循环左移1位JMPnext 循环点亮LED 左旭坤 zxk78 21 循环子程序设计采用多重循环程序 内循环完成10ms的延时 外层循环300次即可 DELAYPROCNEARMOVDL 300DELAY1 MOVCX 2800HDELAY2 LOOPDELAY2DECDLJNZDELAY1RETDELAYENDP 第六章 输入 输出接口和数据传输 数据传送方式 左旭坤 zxk78 22 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式查询传送也称条件方式传送 用查询方式传送时 CPU通过执行程序不断读取并测试外设的状态 如果外设处于准备好状态 输入设备 或者空闲状态 输出设备 则CPU执行输入指令或输出指令与外设交换信息 因此 接口电路除了有传送数据的端口 还要求有传送状态的端口 对于查询传送来说 一个数据传送过程由3个环节组成 CPU从接口中读取状态字 CPU检测状态字的对应位是否满足 就绪 的条件 如果不满足 则回到前一步读取状态字 如状态字表明外设已处于 就绪 状态 则传送数据 左旭坤 zxk78 23 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式 否 否 左旭坤 zxk78 24 输入设备在数据准备好以后便往接口发一个选通信号 这个选通信号有两个作用 一方面将外设的数据送到接口的锁存器中 另一方面使接口中的一个D触发器输出1 从而使接口中状态缓冲器的READY位置1 数据信息和状态信息从不同的端口经过数据总线送到CPU 按数据传送过程的3个步骤 CPU从外设输入数据时先读取状态字 检查状态字看数据是否准备就绪 即数据是否已进入接口的锁存器中 如准备就绪 则执行输入指令读取数据 同时 状态位清0 这样 便开始下一个数据传输过程 用查询方式进行输入的接口电路的工作原理 端口译码器决定端口地址 READY 左旭坤 zxk78 25 当CPU要往一个外设输出数据时 先读取接口中的状态字 如果状态字表明外设有空 或 不忙 则说明可以往外设输出数据 此时CPU执行输出指令 否则CPU必须等待 CPU执行输出指令时 由选择信号M IO和写信号WR产生的选通信号将数据总线上的数据打入接口锁存器 同时使D触发器输出1 D触发器的输出信号一方面为外设提供一个联络信号 告诉外设现在接口中已有数据可供提取 另一方面 D触发器的输出信号使状态寄存器的对应标志位置1告诉CPU 当前外设处于 忙 状态 从而阻止CPU输出新的数据 用查询方式进行输出的接口电路工作原理 左旭坤 zxk78 26 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式 例6 3 现欲将48000H为首地址的顺序100个单元的数据 利用查询方式输出到外设 外设经输入输出接口与8086的系统总线连接 CPU通过三态接口 74LS244 可以查询外设的状态 而且当外设状态信号BUSY 1时 可以接收CPU由锁存器 74LS273 输出的数据 BUSY 0时 表示外设处于忙状态 不能接收数据 两个端口地址都是00FFH 左旭坤 zxk78 27 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式START MOVAX 4000HMOVDS AX 数据段址 DSMOVSI 8000H 数据偏移量 SIMOVCX 100 传递100个数据GOON MOVDX 00FFH 端口地址 触发器 锁存器 DXWAIT INAL DXANDAL 01H 测试BUSY是否为1JZWAIT 若BUSY 0 则等待MOVAL SI 若BUSY 1 开始传递数据OUTDX ALINCSILOOPGOONRET 左旭坤 zxk78 28 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式当系统中有多个外设时查询方式如何工作 由图可见 CPU逐个外设进行查询 若发现那个外设准备就绪 就对该外设实施数据传送 然后再对下一外设查询 依次循环 结果 在查询过程中 CPU不能做别的事情 这就大大降低了CPU的效率 而且 假如某一外设刚好在查询过后处于就绪状态 那么它必须等到CPU查询完所有外设 再次查询此外设时才能发现它处于就绪状态 而后对此外设服务 这样就不能对外设进行实时数据交换 这对许多实时性要求较高的外设来说 就有可能丢失数据 左旭坤 zxk78 29 第六章 输入 输出接口和数据传输 数据传送方式 查询传送方式优点 接口电路和程序设计都较为简单 容易实现 缺点 CPU外设不能并行工作 CPU的效率低 外设得不到及时响应 适用场合 这种传送方式适用于一般工作速度较慢的外设 特别是外设数量不多 实时性要求不高的场合 左旭坤 zxk78 30 第六章 输入 输出接口和数据传输 数据传送方式 中断传送方式中断传送方式会在每次外设准备好或空闲时 主动向CPU发出中断请求 以示要传送数据 CPU响应该请求后 执行中断服务程序 实现与外设的数据传送 其工作过程简述如下 暂停主程序 实现程序的转移 即中断响应 保护和恢复有关寄存器的内容 执行I O操作 实现中断返回 左旭坤 zxk78 31 第六章 输入 输出接口和数据传输 数据传送方式 中断传送方式 INTR 左旭坤 zxk78 32 第六章 输入 输出接口和数据传输 数据传送方式 中断传送方式优点 系统的工作效率高 CPU I O设备可以并行工作 外设可以主动向CPU请求 能够得到CPU的及时响应 缺点 每次传送数据 CPU都要做许多额外的工作 传送速度仍然不是很快 适用场合 这种方式适用于一般工作速度不是很快的外设 特别是实时控制 检测场合 左旭坤 zxk78 33 1 DMA传送方式的提出 比起程序方式来 利用中断方式进行数据传送可以大大提高CPU的工作效率 但效率仍然不是很高 在中断方式下 仍然是通过CPU执行中断程序来实现数据的传送 与数据传输无关的额外开销 要使CPU花费很多时间 中断处理子程序都是按字节或字来进行传输数据 不能实现按数据块传输 DMA传送方式的提出DMA是直接存储器访问的英文缩写 顾名思义它不需要经过CPU的中转 由硬件逻辑直接控制实现按数据块直接传输 大大提高了传输效率 在利用DMA方式进行数据传输时 要利用系统的数据总线 地址总线和控制总线 因此在用DMA方式进行数据传输时 DMA接口电路要向CPU发出请求 使CPU让出总线 即把总线控制权交给控制DMA传输的接口电路 这种接口电路就是DMA控制器 第六章 输入 输出接口和数据传输 数据传送方式 DMA DirectMemoryAccess 控制方式 左旭坤 zxk78 34 2 DMA控制器的功能和DMA传送的原理 当外设准备就绪 希望进行DMA操作时 会向DMA控制器发出DMA请求信号 DMA控制器接到此信号后 应能向CPU发总线请求信号

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论