微处理器性能简介(8086)

微处理器性能简介

微处理器职能:执行各种运算和信息处理,控制各个计算机部件自动协调地完成系统规定的各种操作

典型微处理器的主要性能指标
主频:微处理器的时钟频率;
外频:系统总线的工作频率;
倍频:微处理器主频与外频相差的倍数,主频=外屏*倍频

微处理器具有以下基本功能:
(1)指令控制:使计算机中的指令或程序严格按照规定的顺序执行。
(2)操作控制:将计算机指令产生的控制信号送往相应的部件,控制这些部件按指令的要求完成规定的工作。
(3)时间控制:使计算机中各类控制信号严格按照时间上规定的先后顺序进行操作。
(4)数据加工:对数据进行算术运算和逻辑运算等操作,或其他信息的处理。

Intel 8086微处理器的内、外部结构

Intel 8086微处理器是一种具有代表性的处理器,后续推出的各种微处理器均保持与之兼容。

  • 8086微处理器使用+5V电源
  • 40条引脚双列直插式封装
  • 时钟频率为5MHz~10MHz
  • 有16根数据线和20根地址线,可寻址的内存地址空间达1MB(220B)

8086微处理器的特点

  • 采用并行流水线工作方式,通过设置指令预取队列实现
  • 对内存空间实行分段管理,实现对1MB空间的寻址
  • 支持多处理器系统;工作于最小模式和最大模式两种工作模式。

指令执行部件EU

  • 算术逻辑运算单元ALU
    完成8位或16位的二进制算术运算和逻辑运算;
    运算结果送到通用寄存器或标志寄存器或写入存储器。
  • FR标志寄存器
    存放ALU运算后的结果特征或机器运行状态。
  • 数据暂存寄存器
    暂时存放参加运算的操作数,不可编程。
  • 通用寄存器组
    4个16位数据寄存器: AX、BX、CX、DX;
    4个16位地址指针与变址寄存器: SP、BP、SI、DI。
  • EU控制电路
    接收从BIU指令队列中取来的指令,经过指令译码形成各种定时控制信号,对EU的各个部件实现特定的定时操作。

总线接口单元BIU

根据EU的请求,完成CPU与存储器、I/O接口之间的信息传送。
提供从存储器取指令送指令队列或直接送EU执行;
从存储器或外设取数据送EU,或把EU操作结果送存储器或外设。

  • 4个16位段地址寄存器
    CS:代码段寄存器; DS:数据段寄存器; SS:堆栈段寄存器; ES:扩展(附加)数据段寄存器。
  • 16位指令指针寄存器IP
    存放下一条将要执行指令的偏移地址(有效地址EA);
  • 20位地址加法器
    将16位的逻辑地址变换成访存储器的20位物理地址,完成地址加法操作。
  • 6字节指令队列
    预存6个字节的指令代码。
  • 总线控制电路
    发出总线控制信号。 将8086CPU内部总线与外部总线相连。

8086功能上划分:执行部件EU;总线接口部件BIU

  • 当8086指令队列中有2字节空闲时,总线接口部件就自动将指令从内存中预取到指令队列缓冲器中。
  • 当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。
  • EU在执行指令中若需要访问内存或I/O设备,EU就向BIU申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。
  • 遇到转移、调用及返回指令时,BIU就自动清除指令队列中已有内容,从转移、调用或返回的新地址开始,重新从内存中预读取指令并填充指令队列。
  • 这两部分既非同步工作方式,也不完全无关,而是互相配合工作的。

传统微处理器执行程序时先从存储器取出一条指令,然后读出操作数,最后执行指令。取指令和执行指令串行进行,取指令期间,CPU必须等待。

8086中取指令和执行指令分别由BIU和EU来完成,BIU和EU可并行工作。EU负责执行指令,BIU负责取指令、读出操作数和写入结果。大多数的情况下,取指令和执行指令可重叠进行。
8086中BIU和EU并行工作方式,减少了CPU为取指令等待的时间,整个程序运行期间, BIU是充分利用了总线,极大的提高了CPU的工作效率,成为8086突出优点。

8086微处理器的寄存器结构

8086CPU中可供编程使用的有14个16位寄存器。分为3类: 通用寄存器、控制寄存器、段寄存器。

通用寄存器

数据寄存器: 存放操作数或中间结果。

  • 16位寄存器:AX;BX; CX;DX;
  • 可分成8位寄存器使用: AH;AL; BH;BL; CH;CL; DH;DL。

指针和变址寄存器:存放地址偏移量。

  • 16位的指针寄存器SP、BP
    SP 堆栈指针寄存器:给出栈顶偏移地址;
    BP 基址指针寄存器:存放位于堆栈段中数据区基址的偏移地址。
  • 变址寄存器SI、DI :
    用于指令变址寻址,SI和DI用来存放当前数据段的偏移地址 。
    SI:源变址寄存器: DI:目的变址寄存器:

控制寄存器

指令指针寄存器
IP(Instruction Pointer)指令指针寄存器: 存放EU要执行的下一条指令的偏移地址,控制程序中指令的执行顺序。
IP 用来存放代码段中的偏移地址。 在程序的运行过程中,它始终指向下一条指令的偏移地址,和CS一起形成下一条指令的物理地址(CS:IP)

**标志寄存器 **

8086内部标志寄存器的内容,又称为处理器状态字PSW。 存放ALU运算后的结果特征或机器运行状态,只用9位。

条件标志位(6位): 表示前一步操作(如加、减等)执行后,ALU所处的状态,后续操作可以根据这些状态标志进行判断,实现转移;
控制标志位(3位): 通过指令人为设置,用以对某一种特定的功能起控制作用,反映了人们对微机系统工作方式的可控制性。
状态标志位:

  • CF—进位标志位,做加法时最高位出现进位或做减法时最高位出现借位,该位置1。
  • PF—奇偶标志位,当运算结果的低8位中l的个数为偶数时,则该位置1。
  • AF—半进位标志位,做字节加法时,当低四位有向高四位的进位,或在做减法时,低四位有向高四位的借位时,该标志位就置1。通常用于对BCD算术运算结果的调整。

控制标志位:

  • TF—陷阱标志位(单步标志位、跟踪标志)。当该位置1时,将使8086进入单步工作方式,通常用于程序的调试。
  • IF—中断允许标志位,若该位置1,则处理器可以响应可屏蔽中断。
  • DF—方向标志位,若该位置1,则串操作指令的地址修改为自动减量方向,反之,为自动增量方向。

段寄存器

8086微处理器最大寻址1MB存储空间。
1)包含在指令中的地址,以及在指针和变址寄存器中的地址只有16位长;
2)16位地址寻址空间216=64KB,访问不到1MB存储空间。
3)解决该问题,采用存储器分段技术来实现。
4)8086CPU把1MB的存储空间分成若干个逻辑段,逻辑段的长度不超过64KB(216B)。把段地址左移4位和偏移地址相加形成20位地址,可访问1M空间。

4个16位的段寄存器,用来存放每一个逻辑段的段起始地址。
1)代码段寄存器CS:给出当前的代码段起始地址,CPU执行的指令将从代码段取得。
2)数据段寄存器DS:指向程序当前使用的数据段,用来存放数据。
3)堆栈段寄存器SS:给出程序当前所使用的堆栈段,堆栈操作的执行地址就在该段。
4)附加段寄存器ES:指出程序当前所使用的附加段,通常也用来存放数据。

8086微处理器的外部引脚特性

8086CPU具有40个引脚。 可以分成5类信号:

16位数据线:AD0~AD15
20位地址线:AD0~AD19
可直接寻址空间为1M字节。地址/数据总线采用了分时复用方式。 其余为状态线、控制信号线、电源、地线等。

地址/数据总线16条

  • AD15-AD0(2—16,三态):地址/数据复用信号,输入/输出引脚,低16位地址信号及数据信号的输入/输出。
  • 地址/数据总线采用分时复用方式。
  • 总线分时复用:同一总线在不同时间传输的是不同的信号。8086采用总线分时复用方法在不影响CPU功能的情况下,减少了CPU的引脚数目,使系统得到简化。

地址/状态线4条:

  • A19/S6A16/S3(3538,三态):地址/状态信号,输出引脚。
  • 在存储器操作总线周期的第一个时钟周期,输出20位地址高4位A19A16,与AD15AD0组成20位地址信号。
  • 其他时钟周期输出状态信号S6~S3。其中S6为0,指示8086CPU当前与总线连通; S5为1表明8086CPU可以响应可屏蔽中断;
  • S4、S3共有四个组合状态,指明当前使用的段寄存器,00-ES,01-SS,10-CS,11-DS。

控制总线9条:

  • BHE/ S7 (34,三态):高8位数据允许/状态复用信号,输出。
  • 在总线周期的第一个时钟周期输出总线高字节允许信号BHE,表示高8位数据线D15—D8上的数据有效。
  • 其余时钟周期输出状态S7 。
  • BHE和地址线A0配合用来产生存储体的选择信号。

RD(32,三态):

  • 读控制输出信号,低电平有效,用以指明要执行一个对内存单元或I/O端口的读操作,具体是读内存单元还是I/O端口,取决于控制信号M/IO。
  • CPU部分引脚的三态性
  • 所谓三态是指总线输出可以有三个状态:高电平、低电平和高阻状态。当处于高阻状态时,该总线在逻辑上与所有连接负载电气断开。

READY(22):“准备好”状态信号输入,高电平有效。“Ready” 引脚接收来自内存或I/O向CPU发来的“准备好”状态信号。表明内存或I/O已经准备好进行读写操作。协调CPU与内存或I/O之间进行信息传送的联络信号。

TEST(23):测试信号输入,低电平有效。TEST信号与WAIT指令结合起来使用,CPU执行WAIT指令后,处于等待状态,当TEST引脚输入低电平时,系统脱离等待状态,继续执行被暂停执行的指令。

INTR(18):可屏蔽中断请求信号输入引脚,引入中断源向CPU提出的中断请求信号,高电平有效。

NMI(17) 非屏蔽中断请求信号输入引脚,高电平有效。该信号不受中断允许标志IF状态的影响,NMI比INTR的优先级别高。

RESET(21):复位信号输入,高电平有效。复位信号输入之后,CPU结束当前操作,并对处理器的标志寄存器、IP、DS、SS、ES寄存器及指令队列进行清零操作,而将CS设置为0FFFFH。

CLK/(19):时钟信号输入,8086CPU的时钟频率为5MHz,即从该引脚输入的时钟信号的频率为5MHz。

MN/MX(33):最小/最大模式设置信号输入引脚。

  • 该输入引脚电平的高、低决定了CPU工作在最小模式还是最大模式。
  • 当该引脚接+5V时,CPU工作于最小模式下,当该引脚接地时,CPU工作于最大模式下。

电源线和地线3条: VCC(40)、GND(1、20):电源、接地引脚,8086CPU采用单一的+5V电源,有两个接地引脚。

总结

8086微处理器从功能结构上可以划分为执行部件总线接口部件两大部分。8086并行工作方式,减少了CPU等待取指令的时间,充分利用了总线,有力地提高了CPU的工作效率,成为8086的突出优点。

8086微处理器的寄存器使用非常灵活,可供编程使用的有14个16位寄存器。按其用途可分为3类:通用寄存器、段寄存器、指针和标志寄存器。

8086微处理器有40条引脚,按作用可分为5类:

  • 地址/数据总线16条;
  • 地址/状态线4条;
  • 控制总线9条;
  • 电源线和地线3条;
  • 其他控制线8条。
posted @ 2022-05-29 12:30  卓亦苇  阅读(2573)  评论(0编辑  收藏  举报