中断服务程序流程图

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一讲:

第六章I/O接口原理-接口、端口、编址

回顾:微机系统的层次结构,CPU、主机、接口电路及外部设备之间的结构关联,输入/输出的一般概念。

重点和纲要:微机系统主机与外部设备之间的数据传送,包括I/O端口的寻址方式,输入/输出的传送控制方式。

讲授内容:

6. 1 输入/输出数据的传输控制方式

一、输入/输出的一般概念

1.引言

输入/输出是微机系统与外部设备进行信息交换的过程。输入/输出设备称为外部设备,与存储器相比,外部设备有其本身的特点,存储器较为标准,而外部设备则比较复杂,性能的离散性比较大,不同的外部设备,其结构方式不同,有机械式、电动式、电子式等;输入/输出的信号类型也不相同,有数字信号,也有模拟信号;有电信号,也有非电信号;输入/输出信息的速率也相差很大。因此,CPU与外部设备之间的信息交换技术比较复杂。

CPU与外设之间的信息交换,是通过它们之间接口电路中的I/O端口来进行的,由于同一个外部设备与CPU之间所要传送的信息类型不同,方向不同,作用也不一样(例如数据信息、状态信息、控制信息、输入/输出等),所以接口电路中可以设置多个端口来分别处理这些不同的信息。

2.输入/输出端口的寻址方式

微机系统采用总线结构形式,即通过一组总线来连接组成系统的各个功能部件(包括CPU、内存、I/O端口),CPU、内存、I/O端口之间的信息交换都是通过总线来进行的,如何区分不同的内存单元和I/O端口,是输入/输出寻址方式所要讨论解决的问题。

根据微机系统的不同,输入/输出的寻址方式通常有两种形式:(1).存储器对应的输入、输出寻址方式

这种方式又称为存储器统一编址寻址方式或存储器映象寻址方式。

方法:把外设的一个端口与存储器的一个单元作同等对待,每一个I/O端口都有一个确定的端口地址,CPU与I/O端口之间的信息交换,与存储单元的读写过程一样,内存单元与I/O端口的不同,只在于它们具有不同的的地址。优点:

①CPU对I/O端口的读/写操作可以使用全部存储器的读/写操作指令,也可

以用对存储器的不同寻址方式来对I/O端口中的信息,直接进行算术、逻辑运算及循环、移位等操作。

②内存与外设地址的分配,可以用统一的分布图。

③不需要专门的输入、输出操作指令。

缺点:

①内存与I/O端口统一编址时,在地址总线根数一定的情况下,使系统中

实际可以直

接寻址的内存单元数减少。

②一般情况下,系统中I/O端口数远小于内存单元数,所以在用直接寻址方

式来寻址这些端口时,要表示一个端口地址,必须用与表示内存单元地址相同的字节数,使得指令代码较长,相应地读/写执行时间也较长,这对提高系统的运行速度是不利的。

Mortorola公司的M6800CPU等均采用这种寻址I/O端口的方式。

3. CPU与外设之间所传送的信息类型

CPU与I/O端口之间所交换的信息,可以有下列几种类型:

①数据信息:包括数字量、模拟量、开关量等,可以输入、也可以输出

②状态信息:这是I/O端口送给CPU的有关本端口所对应的外设当前状态

的信息。供CPU进行分析、判断、决策。

③控制信息:这是CPU送给I/O端口的控制命令,使相应的外部设备完成

特定的操作。

数据信息、状态信息和控制信息是不同类型的信息,它们所起的作用也不一样。但在8086/8088微机系统中,这三种不同类型的信息的输入、输出过程是相同的。为了加以区分,可以使它们具有不同的端口地址,在端口地址相同的情况下,可以规定操作的顺序,或者在输入/输出的数据中设置特征位。

二、CPU与外设之间输入/输出数据的传输控制方式

CPU与外设之间传输数据的控制方式通常有三种:程序方式、中断方式和DMA方式。

1.程序方式

指用输入/输出指令,来控制信息传输的方式,是一种软件控制方式,根

据程序控制的方法不同,又可以分为无条件传送方式和条件传送方式。

①无条件传送方式

条件:利用程控方式与外设交换信息时,如果输入/输出的时刻,都可以保证外设总是处于“准备好”状态,则可以直接利用输入/输出指令进行信息的输入/输出操作。

图5-1

如图5-1,从硬件电路上来看:

输入:加三态缓冲器(控制端由地址译码信号和RD信号选中,CPU用IN指令)输出:加锁存器(控制端由地址译码信号和WR信号选中,CPU用OUT指令)这种方式下的硬、软件设计都比较简单,但应用的局限性较大,因为很难保证外设在每次信息传送时都处于“准备好”状态,一般只用在诸如开关控制、七段数码管的显示控制等场合。

②条件传送方式

又称查询方式,即通过程序查询相应设备的状态,若状态不符合,则CPU 不能进行输入/输出操作,需要等待;只有当状态信号符合要求时,CPU才能进行相应的输入/输出操作。

一般外设均可以提供一些反映其状态的信号,如对输入设备来说,它能够提供“准备好”(“READY”)信号,“READY”=1 表示输入数据已准备好。输出设备则提供“忙”(“BUSY”)信号,“BUSY”

=1表示当前时刻不能接收CPU来的数据,只有当

“BUSY”=0时,才表明它可以接受来自于CPU

的输出数据。

过程:

输入操作的程序流程如图5-2所示:

对READY的状态查询,是通过读状态端口的

相应位来实现的,输出的情况亦大致相同,这种传

送控制方式的最大优点是,能够保证输入/输出数据的正确性。

✧输入接口

以输入设备将数据送入锁存,发选通信号开始,→READY=1→CPU查询(读

READY)→读数据→清除READY。见图5- 3 图5-2

✧输出接口

CPU送数据至锁存器,发选通信号,→a。通知外设取数据;→b。BUSY→

输出设备取完数据→ACK→清BUSY→CPU查询。见图5-4

图5-3

图5-4

例1 假设从某输入设备上输入一组数据送缓冲区,接口电路如图5-3,若缓冲区

已满则输出一组信息“BOFFER OVERFLOW”,然后结束。设该设备的启动地址

为0FCH,数据端口为0F8H,状态端口为FAH

DA TA SEGMENT

相关文档
最新文档