Intel 80C186XL User Manual page 287

Intel microprocessor user's manual
Table of Contents

Advertisement

MATH COPROCESSING
The core has an Escape Trap (ET) bit in the PCB Relocation Register (Figure 4-1 on page 4-2) to
control the availability of math coprocessing. If the ET bit is set, an attempted numerics execution
results in a Type 7 interrupt. The 80C187 will not work with the 8-bit bus version of the processor
because all 80C187 accesses must be 16-bit. The 80C188 Modular Core automatically traps ESC
(numerics) opcodes to the Type 7 interrupt, regardless of Relocation Register programming.
11.3 THE 80C187 MATH COPROCESSOR
The 80C187's high performance is due to its 80-bit internal architecture. It contains three units:
a Floating Point Unit, a Data Interface and Control Unit and a Bus Control Logic Unit. The foun-
dation of the Floating Point Unit is an 8-element register file, which can be used either as indi-
vidually addressable registers or as a register stack. The register file allows storage of
intermediate results in the 80-bit format. The Floating Point Unit operates under supervision of
the Data Interface and Control Unit. The Bus Control Logic Unit maintains handshaking and
communications with the host microprocessor. The 80C187 has built-in exception handling.
The 80C187 executes code written for the Intel387™ DX and Intel387 SX math coprocessors.
The 80C187 conforms to ANSI/IEEE Standard 754-1985.
11.3.1 80C187 Instruction Set
80C187 instructions fall into six functional groups: data transfer, arithmetic, comparison, tran-
scendental, constant and processor control. Typical 80C187 instructions accept one or two oper-
ands and produce a single result. Operands are usually located in memory or the 80C187 stack.
Some operands are predefined; for example, FSQRT always takes the square root of the number
in the top stack element. Other instructions allow or require the programmer to specify the oper-
and(s) explicitly along with the instruction mnemonic. Still other instructions accept one explicit
operand and one implicit operand (usually the top stack element).
As with the basic (non-numerics) instruction set, there are two types of operands for coprocessor
instructions, source and destination. Instruction execution does not alter a source operand. Even
when an instruction converts the source operand from one format to another (for example, real to
integer), the coprocessor performs the conversion in a work area to preserve the source operand.
A destination operand differs from a source operand because the 80C187 can alter the register
when it receives the result of the operation. For most destination operands, the coprocessor usu-
ally replaces the destinations with results.
11-2

Advertisement

Table of Contents
loading

This manual is also suitable for:

80c188xl

Table of Contents