第六章输入输出接口基础(CPU与外设之间的数据传输)
- 格式:ppt
- 大小:1.74 MB
- 文档页数:82
CPU和外设之间的数据传送方式有哪几种?实际选择某种传输方式时,主要依据是什么?CPU与外设之间的数据传输有以下三种方式:程序方式、中断方式、DMA方式。
其中程序方式又可分为无条件传送方式和条件传送方式两种方式。
在CPU外设传送数据不太频繁的情况下一般采用无条件传送方式。
在CPU用于传输数据的时间较长且外设数目不多时采用条件传送方式。
在实时系统以及多个外设的系统中,为了提高CPU的效率和使系统具有实时性能,采用中断传送方式。
如I/O 设备的数据传输效率较高,那么CPU和这样的外设进行数据传输是,即使尽量压缩程序查询方式和中断方式中的非数据传输时间,也仍然不能满足要求。
这是因为在这两种方式下,还存在另外一个影响速度的原因,即它们都是按字节或字来进行传输的。
为了解决这个问题,实现按数据块传输,就需要改变传输方式,这就是直接存储器传输方式,即DMA方式。
在查询方式、中断方式和DMA方式中,分别用什么方法启动数据传输过程?在查询方式下,是通过程序来检测接口中状态寄存器中的"准备好"(READY)位,以确定当前是否可以进行数据传输的;在中断方式下,当接口中已经有数据要往CPU输入或者准备好接收数据时,接口会向CPU发一个外部中断请求,CPU在得到中断请求后,如果响应中断,便通过运行中断处理程序来实现输入/输出;在DMA方式下,外设要求传输数据时,接口会向DMA控制器发DMA请求信号,DMA控制器转而往CPU发送一个总线请求信号,以请求得到总线控制权,如果得到DMA允许,那么,就可以在没有CPU参预的情况下实现DMA传输。
CPU和输入/输出设备之间传送的信息有哪几类?CPU和输入/输出设备之间传送的信息有以下几类:数据信息、状态信息、控制信息。
什么叫端口?通常有哪几类端口?计算机对I/O端口编址时通常采用哪两种方法?在8086/8088系统中,用哪种方法对I/O端口进行编址?CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为端口。
科学、政治、文化、经济、心理、哲学在微型计算机系统中,CPU与外设之间的数据传送方式主要有程序传送方式、中断传送方式和直接存储器存取(DMA)传送方式,分别介绍如下。
7.2.1 程序传送方式程序传送方式是指直接在程序控制下进行数据的输入/输出操作。
程序查询方式分为无条件传送方式和查询方式(条件传送方式)两种。
一.无条件传送方式微机系统中的一些简单的外设,如开关、继电器、数码管、发光二极管等,在它们工作时,可以认为输入设备已随时准备好向CPU提供数据,而输出设备也随时准备好接收CPU送来的数据,这样,在CPU需要同外设交换信息时,就能够用IN或OUT指令直接对这些外设进行输入/输出操作。
由于在这种方式下CPU对外设进行输入/输出操作时无需考虑外设的状态,故称之为无条件传送方式。
对于简单外设,若采用无条件传送方式,其接口电路也很简单。
如简单外设作为输入设备时,输入数据保持时间相对于CPU的处理时间要长得多,所以可直接使用三态缓冲器和数据总线相连,如图7.5(a)所示()。
当执行输入的指令时,读信号RD有效,选择信号M/IO处于低电平,因而三态缓冲器被选通,使其中早已准备好的输入数据送到数据总线上,再到达CPU。
所以要求CPU在执行输入指令时,外设的数据是准备好的,即数据已经存入三态缓冲器中。
简单外设为输出设备时,由于外设取数的速度比较慢,要求CPU送出的数据在接口电路的输出端保持一段时间,所以一般都需要锁存器,如图7.5(b)所示。
CPU执行输出指令时,M/IO和WR信号有效,于是,接口中的输出锁存器被选中,CPU输出的信息经过数据总线送入输出锁存器中,输出锁存器保持这个数据,直到外设取走。
无条件传送方式下,程序设计和接口电路都很简单,但是为了保证每一次数据传送时外设都能处于就绪状态,传送不能太频繁。
对少量的数据传送来说,无条件传送方式是最经济实用的一种传送方法。
二.查询传送方式查询传送也称为条件传送,是指在执行输入指令(IN)或输出指令(OUT)前,要先查询相应设备的状态,当输入设备处于准备好状态、输出设备处于空闲状态时,CPU才执行输入/输出指令与外设交换信息。
科学、政治、文化、经济、心理、哲学在微型计算机系统中,CPU与外设之间的数据传送方式主要有程序传送方式、中断传送方式和直接存储器存取(DMA)传送方式,分别介绍如下。
7.2.1 程序传送方式程序传送方式是指直接在程序控制下进行数据的输入/输出操作。
程序查询方式分为无条件传送方式和查询方式(条件传送方式)两种。
一.无条件传送方式微机系统中的一些简单的外设,如开关、继电器、数码管、发光二极管等,在它们工作时,可以认为输入设备已随时准备好向CPU提供数据,而输出设备也随时准备好接收CPU送来的数据,这样,在CPU需要同外设交换信息时,就能够用IN或OUT指令直接对这些外设进行输入/输出操作。
由于在这种方式下CPU对外设进行输入/输出操作时无需考虑外设的状态,故称之为无条件传送方式。
对于简单外设,若采用无条件传送方式,其接口电路也很简单。
如简单外设作为输入设备时,输入数据保持时间相对于CPU的处理时间要长得多,所以可直接使用三态缓冲器和数据总线相连,如图7.5(a)所示()。
当执行输入的指令时,读信号RD有效,选择信号M/IO处于低电平,因而三态缓冲器被选通,使其中早已准备好的输入数据送到数据总线上,再到达CPU。
所以要求CPU在执行输入指令时,外设的数据是准备好的,即数据已经存入三态缓冲器中。
简单外设为输出设备时,由于外设取数的速度比较慢,要求CPU送出的数据在接口电路的输出端保持一段时间,所以一般都需要锁存器,如图7.5(b)所示。
CPU执行输出指令时,M/IO和WR信号有效,于是,接口中的输出锁存器被选中,CPU输出的信息经过数据总线送入输出锁存器中,输出锁存器保持这个数据,直到外设取走。
无条件传送方式下,程序设计和接口电路都很简单,但是为了保证每一次数据传送时外设都能处于就绪状态,传送不能太频繁。
对少量的数据传送来说,无条件传送方式是最经济实用的一种传送方法。
二.查询传送方式查询传送也称为条件传送,是指在执行输入指令(IN)或输出指令(OUT)前,要先查询相应设备的状态,当输入设备处于准备好状态、输出设备处于空闲状态时,CPU才执行输入/输出指令与外设交换信息。
第六章基本输入输出接口第一节概述一、CPU与外部设备的信息交换1.I/O的信息组成CPU与外界之间传递的信息具有三种不同的信号。
(1)数据信号:数据信号大致可分为三种:D数字量2)开关量3)模拟量(2)状态信号:I/O设备的状态信息,由CPU接收并测试以确定其状态。
(3)控制信号:CPU发送给I/O设备的命令。
2.一般I/O接口的构成I/O接口电路:用来实现CPU与外设之间的数据、状态和控制信息的传递。
典型的I/O接口(见图7-1)。
包括:数据端口(双向)、状态端口(CPU一接口)、控制端口(CPUf接口)。
每个I/O端口对应一个I/O地址。
从硬件上看,端口可以理解为寄存器,CPU用I/O指令可以对其进行访问(读/写)。
二、I/O端口的编址方式1统一编址方式(存贮器映象编址)I/O端口和存贮器统一编址,给每个I/O端口分配一个存贮器地址。
优点:I)不需要专门的I/O指令及接口信号;2)CPU访内指令可以全部用于I/O操作,使I/O的功能更加灵活。
缺点:1)真正的存储空间有所减少;2)在程序中对I/O接口的操作不易看清,程序不够清晰。
2.独立编址方式I/O端口单独编址。
CPU使用专门的I/O指令及I/O控制信号来访问I/O端口。
优点:由于使用专用的I/O指令,程序中对I/O端口的操作十分清晰。
缺点:I)I/O指令远不如访内指令丰富,所以编程不够灵活;2)端口地址译码电路比较复杂。
Inte180X86系统CPU使用的都是I/O端口独立编址方式。
第二节CPU与外部设备之间数据传递的控制方式三种方式:程序控制传递方式、DMA方式和I/O处理机方式。
主要介绍程序控制传递方式。
一、程序控制传递方式可以分为以下三种:1.无条件传递方式这种方式的条件是:外设已经“准备好(RCady)”或“空(Empty)”了对于一些简单的输入输出设备,如发光二极管等设备,CPU在从外部设备输入或向外部设备输出数据时不需要判断外部设备是否准备就绪,可以直接输入输出。