欢迎来到天天文库
浏览记录
ID:33486587
大小:455.64 KB
页数:18页
时间:2019-02-26
《第6章 微型计算机和外设之间的数据传输》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章微型计算机和外设之间的数据传输教学目的和要求:通过本章的学习,使学生掌握接口电路的基本概念、接口电路的主要功能、两种I/O端口的编址方式、32位微处理器采用I/O编址的译码、微处理器与I/O设备数据传送的查询式输入输出方式以及中断方式输入输出。熟悉32位微处理器保护模式下的I/O空间,直接存储器存取(DMA)方式以及I/O处理器控制方式。重点:I/O端口的编址方式微处理器与I/O设备数据传送的查询式输入输出方式以及中断方式输入输出难点:微处理器与I/O设备数据传送的几种方式6.1接口及接口技术6.1.1接口电路的概述一个微型计算机系统的构成,
2、除了必须有微处理器之外,还必须有各种输入/输出接口电路。这是因为计算机的强大功能往往是由接口外围设备的能力和处理外界信息的能力所表现出来的。所谓接口(Interface)就是微处理器与外围设备(简称外设)之间的连接电路,它是两者之间进行信息交换时的必要通路,不同的外设有不同的输入/输出接口电路。例如,键盘输入有键盘接口电路,CRT显示器有显示器输出接口电路,打印机也有打印输出接口电路等等,微型计算机系统的各类接口如图6-1所示。图6-1微型计算机各种接口框图微处理器为什么要通过输入/输出接口与外设相连接呢?能否将外设的有关信号直接与1CPU的数据总线、地
3、址总线以及控制总线相连接呢?回答是不可能的,主要有如下几个原因:第一,I/O设备的种类繁多,CPU与外设两者之间的信号线不兼容,外设的数据线可能与CPU数据线兼容,而外设的其它许多信号线在功能定义、逻辑定义以及工作时序上不可能与CPU相关总线完全一致;第二,外设的工作速度比往往CPU的工作速度慢得多,二者工作速度严重不匹配;第三,一个微处理器往往要带许多个外围设备,应当使各外设与CPU处于并行工作状态,一旦某一外设要求微处理器对其进行服务,就可以通过所设置的中断方式接口,CPU暂时停止当前程序的执行,转去为申请服务的外设执行一个服务程序,从而可以实现CP
4、U与所有外设处于并行工作状态,因而可以大大提高CPU的工作效率。第四,如果外设直接由CPU控制,会使外设的硬件结构完全依赖于CPU,不利于外围设备的统一设计与发展。第五,有些外围设备,特别是微机所监测的对象,本身是模拟信号,并非数字信号,因此,要经过模/数转换接口电路,将模拟信号变换成数字信号后才能输入到计算机中,反之,对生产过程的控制,往往还需要数/模转换接口电路,将数字信号变换成模拟信号后才能控制生产过程。综上所述,微处理器只有配接上各类I/O接口电路后,才能可靠地与外围设备实现数据的输入输出操作,有利于提高CPU的工作效率,有利于外设的统一发展,有
5、利于增强微型计算机系统的功能。微机接口不是一些逻辑电路的简单组合。因此,所谓微机接口技术是采用计算机硬件与软件相结合的方法,使微处理器与外围设备之间进行最佳耦合与匹配,以便在CPU与外围设备之间实现可靠、有效交换信息的一门技术。微机接口技术涉及知识面很宽,包括微处理器、汇编语言(或高级语言)程序设计、通信原理与有关协议、电子技术、监测与控制等多学科的基础理论与专业知识。6.1.2接口电路的主要功能不同的外围设备有不同的I/O接口,各接口的功能也不相同,综合分析微型计算机的接口电路,其主要功能分为如下几点:一、设备选择功能在微机系统中,往往有多个外设,每个
6、外设中可能有多个要访问的寄存器,而微处理器在某一瞬间,只能与一台外设或者对一台外设中某一个寄存器进行读/写访问。一个寄存器对应CPU中一个地址编号,当CPU访问外设时,实质上是访问某一寄存器,那么,在接口电路中,首先要设置I/O端口地址译码电路,把CPU发出的地址代码翻译成I/O设备的选择信号,被称之为“片选”信号。一般把CPU发出的低位地址用作接口芯片内部的寄存器选择,高位地址用于接口芯片选择,以选定CPU所要进行信息交换的外围设备,只有被选中的设备才能被CPU进行读(输入)或写(输出)操作。二、数据缓冲功能为了解决高速微处理器与低速外设之间的矛盾,避
7、免因速度不一致而丢失数据甚至无法正常工作,接口电路中一般还设有数据缓冲寄存器,实际上是用于存放I/O数据的寄存器,简称数据缓存器(或数据缓存)。数据缓存器分为输入缓存器和输出缓存器,前者用于暂存外设传送来的数据,等待CPU取走,后者用于暂存CPU传送给外设的数据,等待外设取走。例如:手动键盘和打印机的响应速度都是几十毫秒,远低于CPU的工作速度,因此,在这类外设与CPU之间,必须要设置数据缓冲寄存器。三、接收和执行CPU命令的功能CPU对外围设备的控制命令一般是以二进制代码的形式首先送到接口电路的命令寄存器(称为命令口)中存放,再由此接口电路对此二进制代
8、码进行分析识别,产生若干控制信2号,最后送往外围设备,产生相应的操作,当然,对于
此文档下载收益归作者所有