一、8088/8086 CPU介绍
1、8088与8086CPU的区别
8086和8088都是第三代微处理器的代表。
微处理器由运算器、控制器和寄存器三个部分组成。
①内部
首先是指令队列容量的差别,8086的指令队列可容纳6个字节,而8088的指令队列可容纳4个字节。
其次是访问存储器和输入输出控制信号含义不同。8088当IO/M=0表示访问内存,高电平访问接口;而8086当IO/M=1时表示访问内存,低电平时访问接口。
还有部分引线功能有区别。
②外部(主要区别)
8086和8088在芯片内部均采用16位数据传输,所以都称为16位微处理器。
但是在外部数据总线上有差异,8086外部数据总线有16位,而8088外部数据总线只有8位。最初大部分设备和芯片是8位的,而8088的外部8微数据传送、接收能与这些设备相兼容。
2、8088/8086 CPU的特点(相比较更早期的微处理器)
- 采用并行流水线工作方式,通过设置指令预取队列实现,跟CPU内部结构 有关;
- 对内存空间实现分段管理,将内存分为4个段并设置地址段寄存器,以实现对1MB空间的寻址,与实模式存储器寻址有关;
- 支持协处理器,与工作模式有关;
3、8088/8086 CPU的两种工作模式
8088/8086可工作于最小模式和最大模式两种模式下。
最小模式
最小模式是单处理器模式,没有和其它处理器之间的信息交互,所有控制信号由微处理器产生。
最大模式
最大模式为多处理器模式,用于包含协处理器的情况下,部分控制信号由外部总线控制器产生。
两种工作模式的选择方式
8088是工作在最小还是最大模式由MN/MX(取反,底电平有效)引线的状态决定:MN/MX低电平时工作于最大模式,反之最小模式。
4、8088 CPU最小模式下的主要引脚信号
(1)完成一次访问内存或接口所需要的主要信号
地址线和数据线:
- AD0–AD7:低8位地址和低8位数据信号分时复用。在传送地址信号时为单向,传送数据信号时为双向。
- A16–A19:高4位地址信号,与状态信号分时复用。
- A8–A15:8位地址信号
20位地址信号意味着可产生220=1M个编码,
8位数据信号意味着可同时传输8bit二进制码
主要控制信号
- #WR:写信号;(#代表上横线,即低电平有效)
- #RD:读信号;
- IO/#M:为0时表示访问内存,为1时表示访问接口;
- #DEN:低电平有效时,允许进行读/写操作;
- DT/#R:数据收发器的传送方向控制;
- ALE:地址锁存信号;
- RESET:复位信号
例题:
当#WR=1,#RD=0,IO/#M=0时,表示CPU当前正在进行读存储器操作
(2)与外部同步控制信号
- READY信号,高电平有效
(3)中断请求和响应信号
- INTR:可屏蔽中断请求输入端
- NMI:非屏蔽中断请求输入端
INTA:中断响应输出端
(4)总线保持和相应信号
- HOLD:总线保持请求信号输入端。当CPU以外的其他设备要求占用总线时,通过该引脚向CPU发出请求。
- HLDA:总线保持响应信号输出端。CPU对HOLD信号的响应信号。
5、8088内部结构(逻辑)
8088内部结构从逻辑上分为执行单元(EU)和总线接口单元(BIU)。
(1)执行单元
构成:运算器、8个通用寄存器、1个标志寄存器还有EU部分控制电路。
功能:①指令译码②指令执行③暂存中间运算结果④保存运算结果特征。
(2)总线接口单元
功能:①从内存中取指令到指令预取队列②负责与内存或输入/输出接口之间的数据传送③在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。
指令预取队列是并行流水线工作的基础。它的存在使EU和BIU两个部分可同时进行工作,提高了CPU的效率,也降低了对存储器存取速度的要求