to the effective addressing mode specified in the operation word or immediate operands
that are part of the instruction. The general format of an FPCP instruction is illustrated in
Figure 7-5.
OPERATION WORD
COPROCESSOR COMMAND WORD IIF ANY)
EFFECTIVE AOORESS EXTENSION WORDS (1 TO 6, IF ANY)
Figure 7-5. Coprocessor Instruction General Format
All coprocessor operations are based on the F-line operation codes (i.e., operation words
with bits [15:12]=$F) which instruct the MPU to call upon a coprocessor for execution of
the instruction. Figure 7-6 illustrates the format of this word.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
i,,,,i i I ,',.O,P,NO,,T I
Figure 7-6. FPCP Instruction Operation Word
The Cp-ID field indicates which coprocessor is to be selected. Cp-IDs of 000-101 are reserved
by Freescale, and Cp-IDs 110 and 111 are reserved for user definition. The Freescale MPU
and FPCP assembler supplies 001 as the Cp-ID for FPCP instructions by default. The type
field indicates to the MPU which type of coprocessor operation is selected: general, branch,
conditional, save, or restore. The type and type-dependent fields and the coprocessor
command word for all FPCP instructions are described in 4.7 INSTRUCTION ENCODING
DETAILS.
7.4.1 Instruction Protocol
All FPCP instructions have a typical protocol which the MPU and FPCP use. This com-
munication protocol is as follows:
1. When the MPU detects an F-line operation word, communication is initiated by writing
information (a command, condition selector, or restore format word) to the appro-
priate FPCP coprocessor interface register location. (The FPCP save instruction is
initiated by a read operation.)
2. The MPU then reads the coprocessor response to the previous write operation. The
response may indicate any of the following:
a. The FPCP is busy. MPU checks for interrupts, processes them if any are pending,
and then queries the coprocessor again. This allows synchronizing the main pro-
cessor and coprocessor.
b. An exception condition exists, and the FPCP instructs the MPU to take an exception
using a specific exception vector, The MPU acknowledges the exception and ini-
tiates exception processing.
MC68881/MC68882 USER'S MANUAL
FREESCALE
7-9