English
Language : 

MC68030 Datasheet, PDF (413/602 Pages) Motorola, Inc – ENHANCED 32-BIT MICROPROCESSOR
Coprocessor Interface Description
15
14 13 12 11 10
9
8
7
0
CA
PC DR
0
0
0
0
1
LENGTH
Figure 10-37. Transfer Multiple Coprocessor Registers Primitive Format
This primitive uses the CA, PC, and DR bits as previously described.
Bits [7-0] of the primitive format indicate the length in bytes of each operand transferred. The
operand length must be an even number of bytes; odd length operands cause the MC68030
to initiate protocol violation exception processing (refer to 10.5.2.1 Protocol Violations).
When the main processor reads this primitive, it calculates the effective address specified
in the coprocessor instruction. The scanPC should be pointing to the first of any necessary
effective address extension words when this primitive is read from the response CIR; the
scanPC is incremented by two for each extension word referenced during the effective
address calculation. For transfers from the effective address to the coprocessor (DR=0), the
control addressing modes and the postincrement addressing mode are valid. For transfers
from the coprocessor to the effective address (DR=1), the control alterable and
predecrement addressing modes are valid. Invalid addressing modes cause the MC68030
to abort the instruction by writing an abort mask (refer to 10.3.2 Control CIR) to the control
CIR and to initiate F-line emulator exception processing (refer to 10.5.2.2 F-Line Emulator
Exceptions).
After performing the effective address calculation, the MC68030 reads a 16-bit register
select mask from the register select CIR. The coprocessor uses the register select mask to
specify the number of operands to transfer; the MC68030 counts the number of ones in the
register select mask to determine the number of operands. The order of the ones in the
register select mask is not relevant to the operation of the main processor. As many as 16
operands can be transferred by the main processor in response to this primitive. The total
number of bytes transferred is the product of the number of operands transferred and the
length of each operand specified in bits [0-7] of the primitive format.
MOTOROLA
MC68030 USER’S MANUAL
10-53