Bus Operation
MOTOROLA
MC68030 USER’S MANUAL
7-13
7.2.2 Misaligned Operands
Since operands may reside at any byte boundaries, they may be misaligned. A byte
operand is properly aligned at any address; a word operand is misaligned at an odd address;
a long word is misaligned at an address that is not evenly divisible by four. The MC68000,
MC68008, and MC68010 implementations allow long-word transfers on odd-word
boundaries but force exceptions if word or long-word operand transfers are attempted at
odd-byte addresses. Although the MC68030 does not enforce any alignment restrictions for
data operands (including PC relative data addresses), some performance degradation
occurs when additional bus cycles are required for long-word or word operands that are
misaligned. For maximum performance, data items should be aligned on their natural
boundaries. All instruction words and extension words must reside on word boundaries.
Attempting to prefetch an instruction word at an odd address causes an address error
exception.
Figure 7-7. Example of Word Transfer to Byte Port
DATA BUSD31 D24
WORD OPERAND
OP2 OP3
15 0
BYTE MEMORY
OP2
OP3
MC68EC030
SIZ1 SIZ0 A1
A0
1000
0101
MEMORY CONTROL
DSACK1 DSACK0
LH
LH