
Enhanced Multiply-Accumulate Unit (EMAC)
4-12
Freescale Semiconductor
movem.l (a7),#0x00ff
; restore the state from memory
move.l #0,macsr
; disable rounding in the macsr
move.l d0,acc0
; restore the accumulators
move.l d1,acc1
move.l d2,acc2
move.l d3,acc3
move.l d4,accext01
; restore the accumulator extensions
move.l d5,accext23
move.l d6,mask
; restore the address mask
move.l d7,macsr
; restore the macsr
Executing this sequence type can correctly save and restore the exact state of the EMAC programming
model.
4.3.1.3
MULS/MULU
MULS and MULU are unaffected by fractional-mode operation; operands remain assumed to be integers.
4.3.1.4
Scale Factor in MAC or MSAC Instructions
The scale factor is ignored while the MAC is in fractional mode.
4.3.2
EMAC Instruction Set Summary
summarizes EMAC unit instructions.
Table 4-8. EMAC Instruction Summary
Command
Mnemonic
Description
Multiply Signed
muls <ea>y,Dx
Multiplies two signed operands yielding a signed result
Multiply Unsigned
mulu <ea>y,Dx
Multiplies two unsigned operands yielding an unsigned result
Multiply Accumulate
mac Ry,RxSF,ACCx
msac Ry,RxSF,ACCx
Multiplies two operands and adds/subtracts the product
to/from an accumulator
Multiply Accumulate
with Load
mac Ry,Rx,<ea>y,Rw,ACCx
msac Ry,Rx,<ea>y,Rw,ACCx
Multiplies two operands and combines the product to an
accumulator while loading a register with the memory operand
Load Accumulator
move.l {Ry,#imm},ACCx
Loads an accumulator with a 32-bit operand
Store Accumulator
move.l ACCx,Rx
Writes the contents of an accumulator to a CPU register
Copy Accumulator
move.l ACCy,ACCx
Copies a 48-bit accumulator
Load MACSR
move.l {Ry,#imm},MACSR
Writes a value to MACSR
Store MACSR
move.l MACSR,Rx
Write the contents of MACSR to a CPU register
Store MACSR to CCR
move.l MACSR,CCR
Write the contents of MACSR to the CCR
Load MAC Mask Reg
move.l {Ry,#imm},MASK
Writes a value to the MASK register
Store MAC Mask Reg
move.l MASK,Rx
Writes the contents of the MASK to a CPU register
Load Accumulator
Extensions 01
move.l {Ry,#imm},ACCext01
Loads the accumulator 0,1 extension bytes with a 32-bit
operand
MCF5329 Reference Manual, Rev 3
Summary of Contents for MCF5329
Page 106: ...ColdFire Core 3 32 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 148: ...Cache 5 22 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 154: ...Static RAM SRAM 6 6 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 184: ...Power Management 8 18 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 204: ...Reset Controller Module 10 8 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 220: ...System Control Module SCM 11 16 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 228: ...Crossbar Switch XBS 12 8 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 268: ...General Purpose I O Module 13 40 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 392: ...SDRAM Controller SDRAMC 18 30 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 436: ...Fast Ethernet Controller FEC 19 44 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 594: ...FlexCAN 23 30 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 678: ...Pulse Width Modulation PWM Module 26 22 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 684: ...Watchdog Timer Module 27 6 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 704: ...DMA Timers DTIM0 DTIM3 29 12 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 754: ...UART Modules 31 34 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 770: ...I2 C Interface 32 16 Freescale Semiconductor MCF5329 Reference Manual Rev 3...
Page 866: ...Debug Module 36 50 Freescale Semiconductor MCF5329 Reference Manual Rev 3...