8087 数字数据处理器


8087数字数据处理器也称为数学协处理器、数字处理器扩展浮点单元。它是英特尔设计的首款与 8086/8088 配合使用的数学协处理器,可实现更轻松、更快速的计算。

一旦指令被 8086/8088 处理器识别,就会分配给 8087 协处理器进一步执行。

8087 支持的数据类型是 -

  • 二进制整数
  • 压缩十进制数
  • 实数
  • 临时真实格式

8087 数字数据处理器最突出的特点如下 -

  • 它支持整数、浮点和实数类型的数据,范围为 2-10 字节。

  • 处理速度非常快,可以在约 27 µs 内计算两个 64 位实数的乘法,并在约 35 µs 内计算平方根。

  • 它遵循 IEEE 浮点标准。

8087 建筑

8087架构分为两组,即控制单元(CU)和数字扩展单元(NEU)。

  • 控制单元处理处理器和存储器之间的所有通信,例如接收和解码指令、读写存储器操作数、维护并行队列等。所有协处理器指令都是ESC指令,即以“F”开头,协处理器只执行ESC指令,其他指令由微处理器执行。

  • 数字扩展单元处理所有数字处理器指令,如算术、逻辑、超越和数据传输指令。它有8个寄存器堆栈,保存指令的操作数及其结果。

8087协处理器的架构如下 -

8087的架构

8087 引脚说明

我们先看一下8087的引脚图 -

引脚图8087

以下列表提供了 8087 的引脚描述 -

  • AD 0 – AD 15 – 这些是时间复用地址/数据线,在第一个时钟周期期间传送地址,并从第​​二个时钟周期开始传送数据。

  • A 19 / S 6 – A 16 /S - 这些线是时分复用地址/状态线。它的功能与 8086 的相应引脚类似。S 6、S 4和 S3 永久为高电平,而 S 5永久为低电平。

  • $\overline{BHE}$/S 7 - 在第一个时钟周期期间,$\overline{BHE}$/S 7用于启用数据到 8086 数据总线的高字节,然后用作状态线S 7 .

  • QS 1, QS 0 - 这些是队列状态输入信号,提供指令队列的状态,其条件如下表所示 -

质量标准0 质量标准1 地位
0 0 无操作
0 1 队列中操作码的第一个字节
1 0 清空队列
1 1 队列中的后续字节
  • INT - 它是一个中断信号,当执行期间收到未屏蔽的异常时,该信号变为高电平。

  • BUSY - 它是一个输出信号,当它为高电平时,表明 CPU 处于繁忙状态。

  • READY - 它是一个输入信号,用于通知协处理器总线是否准备好接收数据。

  • RESET - 它是一个输入信号,用于拒绝协处理器的内部活动,并为 CPU 需要时的进一步执行做好准备。

  • CLK - CLK 输入提供处理器操作的基本时序。

  • VCC - 电源信号,电路工作需要+5V电源。

  • S 0、S 1、S 2 - 这些是提供操作状态的状态信号,总线控制器8087使用该状态信号来生成存储器和I/O控制信号。这些信号在第四个时钟周期内有效。

S 2 S 1 0 _ 队列状态
0 X X 没用过
1 0 0 没用过
1 0 1 内存读取
1 1 0 内存写入
1 1 1 被动的
  • RQ/GT 1和 RQ/GT 0 - 这些是8087 处理器使用的请求/授权信号,用于从主机处理器 8086/8088 获取总线控制以进行操作数传输。