Texas Instruments MSP430x4xx Computer Hardware User Manual


 
Hardware Multiplier Operation
7-6 Hardware Multiplier
7.2.4 Indirect Addressing of RESLO
When using indirect or indirect autoincrement addressing mode to access the
result registers, At least one instruction is needed between loading the second
operand and accessing one of the result registers:
; Access multiplier results with indirect addressing
MOV #RESLO,R5 ; RESLO address in R5 for indirect
MOV &OPER1,&MPY ; Load 1st operand
MOV &OPER2,&OP2 ; Load 2nd operand
NOP ; Need one cycle
MOV @R5+,&xxx ; Move RESLO
MOV @R5,&xxx ; Move RESHI
7.2.5 Using Interrupts
If an interrupt occurs after writing OP1, but before writing OP2, and the
multiplier is used in servicing that interrupt, the original multiplier mode
selection is lost and the results are unpredictable. To avoid this, disable
interrupts before using the hardware multiplier or do not use the multiplier in
interrupt service routines.
; Disable interrupts before using the hardware multiplier
DINT ; Disable interrupts
NOP ; Required for DINT
MOV #xxh,&MPY ; Load 1st operand
MOV #xxh,&OP2 ; Load 2nd operand
EINT ; Interrupts may be enable before
; Process results