微机原理 f5-接口与外设数据传送方式
微机原理
第五章
接口与外设数据传送方式
外设接口的一般结构
CPU可以直接连接内存(唯一),但是要通过接口再去连接外设(多样性)。
CPU向接口提出A(要求,协议等等),接口再向外设提出B(要求 ,只要满足即可连接)。那么外设就可以独立发展。
I/O接口的基本功能
- 进行端口地址译码设备选择。
- 向CPU提供I/O设备的状态信息和进行命令译码。(隔离,可以理解为承上启下)
进行定时和相应时序控制。- 对传送数据进行缓冲。
微型计算机需要用外设接口的原因
隔离 转化 缓冲
- 可以使外设的工作方式多种多样。
- CPU只能识别数字量(’0’/’1’),而有些外设的信息是模拟(电压)量。(仅了解:接口需要完成一个AD转化的过程。)
- CPU只能处理并行(一次传递8/16位)的信息,而有些外设的信息是串行(按位加,加满8位再进行传递)的。
- CPU工作速度较快,而外设的工作速度慢得多。
- CPU与外设之间的信号电平有很多是不一致的。
CPU不能直接控制外设的原因
- CPU与外设二者的信号不兼容。
- CPU与外设的速度不匹配。
- 若不通过接口,而由CPU直接对外设进行控制,会使CPU处于应付与外设打交道之中,大大地降低了CPU的效率。
- 若外设直接由CPU控制,会使外设的硬件结构依赖于CPU,对外设本身的发展不利。
I/O接口:接口电路。将外设连接到总线上的一组逻辑电路的总称,用以实现外设与主机之间的信息交换。
I/O端口:端口地址(分数据端口、状态端口、控制端口)。接口中的寄存器,可以由CPU读或写。
8255是一个并行接口的芯片,有4个地址(端口地址)。
图解:
CPU向I/O接口发出数据交换,外设也同样。
CPU通过控制口发出控制信息(例如:运行)。
外设通过状态口反馈给CPU状态信息(例如:操作完毕之后发出停止信息)。
此外数据交换还有多种方式。
CPU同外设间交换的信息由三类
- 数据信息
三种类型:数字量、模拟量、开关量。
数字量:由8位二进制数,或ACII码表示的数或字符。
模拟量:可以理解为实际的电压值。(仅了解:如果要读入CPU就需要AD转化芯片)
开关量:一位二进制(因为只有开/关)。 - 状态信息:外设当前所处的工作状态。(反馈信息)
- 控制信息:由CPU发出的,用于控制I/O接口的工作方式以及外设的启停等。
I/O端口的访问
以CPU为中心,通过预先编写好的I/O程序实现数据的传送。
(2)速度较低,传送路径经过CPU内部寄存器,同时数据I/O相应也比较慢。
无条件传送方式(***)
无条件传送方式,也叫做同步传送方式。
特点:适用于总是处于准备好状态的外设。(比如开关,只有开/关)外设的工作时间已知(几秒内开/关)。不需要状态口。
方法:把I/O指令插入到程序中。当执行到该指令,外设已做好准备。
优点:软件及接口硬件简单。
缺点:CPU效率低(IN/OUT时无法处理其他指令),只适用于简单外设。
查询传送方式(***)
查询传送方式,也叫做异步传送方式。
当CPU和外设不同步且不知道外设工作速率时,采用此传送方式,传送前,CPU必须先对外设进行状态检测。
适用场合: 外设并不总是准备好。 (***)对传送速率和效率要求不高。
对外设及接口的要求: 外设应提供设备状态信息。 接口应具备状态端口。
优点:软件比较简单。(程序比较方便)
缺点:CPU效率低,数据传送的实时性差,速度较慢。
p1(对传送速率和效率要求不高)因为CPU是单线程,所以当CPU在查询数据时无法处理其他事情。所以查询传送方式慢。
P2(***)完成一次传送过程的步骤(主动查询)
中断传送方式
无条件和查询传送的缺点是:CPU和外设只能串行工作。
中断传送方式可以并行操作,为提高系统的工作效率,引入了“中断”系统。
特点:外设在需要时向CPU提出请求,CPU再去为它服务。服务结束后或在外设不需要时,CPU可执行自己的程序。
中断使CPU和外设以及外设之间能并行工作。
(-)工作过程:通常在程序中安排好某一时刻启动某一台外设,然后CPU继续执行其主程序,当外设完成数据传送的准备后,向CPU发起中断,CPU可以响应的情况下执行“中断服务程序”,完成一次CPU与外设之间的数据传送,传送完成后仍返回被中断的主程序,从断点处继续执行。
优点:CPU效率高(并行),实时性好(被动响应),速度快。
缺点:程序编制较为复杂(先写好某一时刻启动某一台外设,之后并进行响应等)。
以上三种I/O方式的共性
均需CPU作为中介。
DMA(直接存储器存取)传递方式
外设和内存之间直接传送数据的方式,不需要CPU干预也不需软件介入。对这一数据传送过程进行控制的硬件称为DMA控制器(DMAC)。