分类: LINUX
2011-02-27 12:12:25
与或外部设备通信,是通过20位分时多路/来实现的。为了取出或传输数据,CPU要执行一个总线周期。
我们通常把8086CPU经外部总线对存储器或I/O端口进行一次信息的输入或输出过程,称为总线操作。而把执行该操作所需要的时间,称为总线周期或总线操作周期。由于总线周期全部由来完成,所以也把总线周期称为BIU总线周期。 8086的总线周期至少由4个时钟周期组成。每个时钟周期称为T状态,用T1、T2、T3和T4表示。在T1状态期间,CPU将存储地址或的地址置于总线上。若要将数据写入存储器或I/O设备,则在T2~T4这段时间内,要求CPU在总线上一直保持要写的数据;若要从存储器或I/O设备读入信息,则CPU在T3~T4状态由存储器或I/O设备置于总线上的信息。 BIU只有在下列情况下,执行一个总线周期: ①在指令的执行过程中,根据指令的需要,由执行单元EU,请求BIU执行一个总线周期。例如,取操作数或存放指令执行结果等。 ②当指令队列寄存器已经空出两个字节,BIU必须填写指令队列的时候。这样,在这两总线操作周期之间,就有可能存在着BIU不执行任何操作的时钟周期。
在两个总线周期之间,存在着BIU不执行任何操作的时钟周期,这些不起作用的时钟周期称为空闲状态,用TI表示。空闲状态可以由几种情况引起。例如,当8086CPU的把总线的主控权交给的时候;当8086执行一条长指令--16位的乘法指令,或除法DIV的时候(MUL的执行时间为124时钟周期+EA,DIV的执行时间为155时钟周期+EA)。这时BIU有相当长的一段时间不执行任何操作,其时钟周期处于空闲状态。 8086的总线周期中,除了空闲状态TI以外,还有一种等待状态TW。
8086CPU与慢速的和I/O接**换信息时,为了防止丢失数据,在总线周期的T3和T4之间插入一些必要的等待状态TW,用来给予必要的时间补偿。在等待状态期间,总线上的信息保持不变,其他一些控制信号也都保持不变。
在CPU当中,一般操作控制器根据设计方式的不同,操作控制器可以分为硬布线控制器,微程序控制器,以及前两种的综合方式的控制器。操作控制器的功能就是根据操作码和时序产生器产生的时序信号,产生各种操作控制信号,以便正确地建立数据通路(通常把许多寄存器之间传送信息的通路成为数据通路,信息从什么地方开始,中间经过哪个寄存器或者多路开关,最后传到哪个寄存器,都由操作控制器控制完成),从而完成取指令和执行指令的控制。
微程序设计技术是利用软件方式来设计硬件的一门技术。微程序控制的基本思想是仿照通常的解题程序方式,把操作控制信号编成所谓的“微指令”,存放到一个只读存储器中。当机器运行时候,一条又一条地读出这些微指令,从而产生全机所需要的各种操作控制信号,使相应部件执行所规定的操作。
微指令和微操作
一台数字计算机基本上可以划分为两大部分---控制部件和执行部件。控制器就是控制部件,而运算器、存储器、外围设备相对控制器来说就是执行部件。那么两者是这么联系的呢?控制部件与执行部件的一种联系就是通过控制线。控制部件通过控制线向执行部件发出各种控制命令,通常这种控制命令叫做微命令,而执行部件接受微命令后所执行的操作就叫做微操作。控制部件与执行部件之间的另一种联系就是反馈信息。执行部件通过反馈线向控制部件反映操作情况,以便使得控制部件根据执行部件的状态来下达新的微命令,这也叫做“状态测试”。微操作在执行部件中是组基本的操作。由于数据通路的结构关系,微操作可分为相容性和相斥性两种。
在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。一般的微指令格式由操作控制和顺序控制两部分构成。操作控制部分用来发出管理和指挥全机工作的控制信号。其顺序控制部分用来决定产生下一个微指令的地址。事实上一条机器指令的功能是由许多条微指令组成的序列来实现的。这个微指令序列通常叫做微程序。既然微程序是有微指令组成的,那么当执行当前的一条微指令的时候。必须指出后继微指令的地址,以便当前一条微指令执行完毕以后,取下一条微指令执行。
机器指令和微指令的关系归纳如下:
1. 一条机器指令对应一个微程序,这个微程序是由若干条微指令构成的。因此,一条机器指令的功能是若干条微指令组成的序列来实现的。简而言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。
2.从指令与微指令,程序与微程序,地址与微地址的一一对应关系上看,前者与内存储器有关,而后者与控制存储器(它是微程序控制器的一部分。微程序控制器主要由控制存储器、微指令寄存器和地址转移逻辑三部分组成。其中,微指令寄存器又分为微地址寄存器和微命令寄存器两部分)有关,与此相关也有相对应的硬设备。
3.从一般指令的微程序执行流程图可以看出。每个CPU周期就对于一条微指令。这就告诉我们怎么设计微程序,也将使得我们进一步体验到机器指令很微指令的关系。
参考资料:1.google
2.计算机组成原理 白中英主编 科学出版社
3.单片机原理与接口技术 李朝青编著 北京航空航天大学出版社