微处理器(微处理器包括)

Intel 8086微处理器是Intel公司于1987年推出的一种高性能16位微处理器。它是第三代微处理器的代表。它有20条地址线、1MB的直接寻址能力和16条

Intel 8086微处理器是Intel公司于1987年推出的一种高性能16位微处理器。它是第三代微处理器的代表。它有20条地址线、1MB的直接寻址能力和16条数据总线。内部总线和ALU都是16位,可以8位和16位操作。

Intel 8086微处理器具有丰富的指令系统,采用多级中断技术、多种寻址方式、多种数据处理形式、分段存储结构、硬件乘除电路、为预存取指令增加队列寄存器等。,自问世以来就显示出强大的生命力。以它为核心的微型计算机系统的性能已达到中高档小型计算机的水平。8086的一个突出特点是多处理能力。由8086CPU、8087协处理器和8089I/O处理器组成的多处理器系统可以大大提高其数据处理和输入输出能力。另外,与8086匹配的各种外设接口芯片非常丰富,方便用户开发各种系统。

微处理器(微处理器包括)插图

8086CPU内部结构图8086CPU内部结构图

概述8086CPU采用了不同于第二代微处理器的全新结构形式,其内部由两个独立的功能部件组成,分别是总线接口单元(BIU)和执行单元(欧盟)。在指令执行过程中,两个部件形成两级流水线:在执行部件执行指令的同时,总线接口部件提前完成从主存中取出后续指令的工作,使指令的读取和执行可以部分重叠,从而提高总线的利用率。

执行部件EU

执行单元EU由一个16位算术逻辑单元(ALU)、8个16位通用寄存器、一个16位标志寄存器、一个数据临时寄存器和执行单元的控制电路组成。EU负责所有指令的解释和执行,同时管理上述相关寄存器。

微处理器(微处理器包括)插图(1)

执行部件EU内部结构欧盟执行机构的内部结构

(1)EU的组成
①算术逻辑单元
它是16位算术单元,可用于8位和16位二进制算术逻辑单元,也可根据指令的寻址方式计算寻址存储器所需的16位偏移量。
②通用寄存器
它包括四个16位数据寄存器AX、BX、CX、DX和四个16位指针与变址寄存器SP、BP、SI、DI。
③标志寄存器
它是一个16位寄存器,用来反映CPU运行的状态特征,存储一些控制标志。
④数据暂存寄存器
它帮助ALU完成运算,暂存运算中涉及的数据。
⑤EU控制电路
它负责从BIU的指令队列缓冲区中取出指令,对指令进行解码,并根据指令要求向EU内部部件发送控制命令,从而完成每条指令指定的功能。
(2)EU的主要功能
①从指令队列中取出指令代码,由EU控制器解码,然后控制各个部件完成指令指定的操作。
②对操作数进行算术和逻辑运算,并将运算结果的特征状态存储在标志寄存器中。
③当需要用主存或I/O口传输数据时,EU向BIU发出命令,提供要访问的内存地址或I/O口地址以及传输的数据。
执行单元中的部件通过16位ALU总线连接在一起,实现了内部的快速数据传输。值得注意的是,这条内部总线与连接CPU的总线是隔离的,即这两条总线可以同时工作,互不干扰。EU指令的执行从获取指令操作码开始,它从总线接口单元的指令队列缓冲器中一次获取一个字节。如果空在指令队列缓冲区中,EU将等待BIU通过外部总线从存储器中获取指令并发送给EU。通过对解码电路的分析,它会发出相应的控制命令来控制ALU数据总线中的数据流。

如果是运算,运算数据通过临时寄存器送到ALU,运算结果通过ALU数据总线送到相应的寄存器,标志寄存器FLAGS根据运算结果改变状态。在指令执行过程中,经常会发生从内存中读取或写入数据的事件。此时,EU单元提供一个16位有效地址进行寻址,在BIU单元中进行计算,形成一个20位物理地址,发送到外部总线进行寻址。

总线接口部件BUI

总线接口单元BIU是8086CPU在内存和I/O设备之间的接口单元,负责所有管脚的操作,即8086对内存和I/O设备的所有操作都由BIU完成。所有外部总线操作都必须有正确的地址和适当的控制信号,BIU的部件主要是围绕这个目标设计的。它提供16位双向数据总线、20位地址总线和多条控制总线。

它的具体任务是预先从存储单元中取出指令,送到指令队列缓冲区暂存。当CPU执行指令时,总线接口单元要配合执行单元,从指定的存储单元或I/O端口取出数据并发送给执行单元,或者将执行单元的处理结果发送给指定的存储单元或I/O端口。

微处理器(微处理器包括)插图(2)

总线接口部件BUI内部结构BUI总线接口单元的内部结构

(1)BIU的构成

接口单元BIU由一个20位地址加法器、四个16位段寄存器、一个16位指令指针IP、一个指令队列缓冲器和一个总线控制逻辑电路组成。886的指令队列由6个字节组成。
①地址加法器和段寄存器

地址加法器将16位段寄存器的内容左移4位,并将其与16位偏移地址相加,形成20位物理地址。
②16位指令指针IP

指针IP用于存储代码段中要执行的下一条指令的偏移地址。
③指令队列缓冲区

当EU正在执行指令,不需要占用总线时,BIU会自动提前取指令,并将取来的指令按顺序存储在一个6字节的指令队列寄存器中。队列寄存器以“先进先出”的方式工作,并被取到执行单元按顺序执行。它的运行遵循以下原则:
☆每当指令队列缓冲区充满一条指令,EU就会立即开始执行。
☆每当BIU发现队列中有两个字节空时,就会自动寻找空的空闲总线周期提前取指令,直到满为止。
☆每当EU执行传输、调用或返回指令时,都需要清空指令队列缓冲区,并要求BIU从新地址获取指令。第一条新取的指令会直接通过指令队列缓冲区送到EU执行,取指令操作会在新地址的基础上提前进行,实现程序段的转移。
BIU和欧盟各自独立工作。在欧盟执行指令的同时,BIU可以提前记下一条或几条指令。因此,一般来说,CPU执行一条指令后,可以立即执行存储在指令队列中的下一条指令,而不是像以前的8位CPU那样采用先取指令再执行指令的串行操作方式。
④总线控制逻辑电路

总线控制逻辑电路将8086CPU的内部总线与外部总线连接起来,这是8086CPU与存储单元或I/O端口交换数据的唯一途径。它包括16条数据总线、20条地址总线和几条控制总线,CPU通过这些总线与外界取得联系,从而构成各种规模的8086微机系统。
(2)BIU的主要功能

BIU完成CPU与主存或I/O口之间的信息传输,其主要功能如下:

①预先取指令队列,存入指令队列。每当8086CPU的指令队列中有两个空字节,而欧盟不要求BIU进入访问操作数的总线周期时,BIU就会自动从主存中取出指令字节,放入指令队列中。在执行转移指令时,BIU清空空指令队列,从转移的当前地址取出指令并发送给EU执行,然后从主存中取出后续指令字节并发送给指令队列排队,实现了EU和BIU的并行操作。

②将主存储器的逻辑地址转换成实际的物理地址。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/105069.html

发表回复

登录后才能评论