Freescale Semiconductor MCF5480 User Manual
Page 124

MCF548x Reference Manual, Rev. 3
3-20
Freescale Semiconductor
•
Enhanced support for byte and word-sized operands through new move operations
•
Enhanced support for position-independent code
For descriptions of the ColdFire instruction set, see the latest version of the ColdFire Programmer’s
Reference Manual.
The following list summarizes new and enhanced instructions of ISA_B:
•
New instructions:
— INTOUCH loads blocks of instructions to be locked in the instruction cache.
— MOV3Q.L moves 3-bit immediate data to the destination location.
— MOVE to/from USP loads and stores user stack pointer.
— MVS.{B,W} sign-extends the source operand and moves it to the destination register.
— MVZ.{B,W} zero-fills the source operand and moves it to the destination register.
— SATS.L performs a saturation operation for signed arithmetic and updates the destination
register depending on CCR[V] and bit 31 of the register.
— TAS.B performs an indivisible read-modify-write cycle to test and set the addressed memory
byte.
•
Enhancements to existing Revision_A instructions:
— Longword support for branch instructions (Bcc, BRA, BSR)
— Byte and word support for compare instructions (CMP, CMPI)
— Word support for the compare address register instruction (CMPA)
— Byte and longword support for MOVE.x,where the source is immediate data and the
destination is specified by d16(Ax); that is, MOVE.{B,W} #, d16(Ax)
•
Floating-point instructions. See
Chapter 6, “Floating-Point Unit (FPU).”
•
EMAC instructions. See
Chapter 4, “Enhanced Multiply-Accumulate Unit (EMAC),”
for more
information.
shows the syntax for the new and enhanced instructions. As
shows, some ISA_B
opcodes were defined in the M68000 family and others are new.
Table 3-7. V4 New Instruction Summary
Instruction
Mnemonic
1
Source
Destination
M68000
ISA_B Extensions
Branch Always
bra.l
Yes
Branch Conditionally
bcc.l
Yes
Branch to Subroutine
bsr.l
Yes
Compare
cmp.{b,w,l}
Dx
Yes
Compare Address
cmpa.w
Ax
Yes
Compare Immediate
cmpi.{b,w}
#
Dx
Yes
Instruction Fetch Touch
intouch
Move 3-Bit Data Quick
mov3q.l
#
Move Data Source to Destination
move.{b,w}
#
d16(Ax)
Yes
Move from USP
move.l
USP
Ax
Yes