Instructions
www.ti.com
MPYF32 RaH, RbH, RcH
SUBF32 RdH, ReH, RfH
32-bit Floating-Point Multiply with Parallel Subtract
Operands
RaH
floating-point destination register for MPYF32 (R0H to R7H)
RaH cannot be the same register as RdH
RbH
floating-point source register for MPYF32 (R0H to R7H)
RcH
floating-point source register for MPYF32 (R0H to R7H)
RdH
floating-point destination register for SUBF32 (R0H to R7H)
RdH cannot be the same register as RaH
ReH
floating-point source register for SUBF32 (R0H to R7H)
RfH
floating-point source register for SUBF32 (R0H to R7H)
Opcode
LSW: 1110 0111
0101 00ff
MSW: feee dddc
ccbb baaa
Description
Multiply the contents of two floating-point registers with parallel subtraction of two
registers.
RaH = RbH * RcH,
RdH = ReH - RfH
Restrictions
The destination register for the MPYF32 and the SUBF32 must be unique. That is, RaH
cannot be the same register as RdH.
Flags
This instruction modifies the following flags in the STF register:.
Flag
TF
ZI
NI
ZF
NF
LUF
LVF
Modified
No
No
No
No
No
Yes
Yes
The STF register flags are modified as follows:
•
LUF = 1 if MPYF32 or SUBF32 generates an underflow condition.
•
LVF = 1 if MPYF32 or SUBF32 generates an overflow condition.
Pipeline
MPYF32 and SUBF32 both take 2 pipeline-cycles (2p). That is:
MPYF32
RaH, RbH, RcH
; 2 pipeline cycles (2p)
||
SUBF32
RdH, ReH, RfH
; 2 pipeline cycles (2p)
NOP
; 1 cycle delay or non-conflicting instruction
; <-- MPYF32, SUBF32 complete. RaH, RdH updated
NOP
Any instruction in the delay slot must not use RaH or RdH as a destination register or as
a source operand.
Example
MOVIZF32
R4H, #5.0
; R4H = 5.0 (0x40A00000)
MOVIZF32
R5H, #3.0
; R5H = 3.0 (0x40400000)
MPYF32
R6H, R4H, R5H
; R6H = R4H * R5H
|| SUBF32
R7H, R4H, R5H
; R7H = R4H - R5H
NOP
; 1 cycle delay for MPYF32 || SUBF32 to complete
; <-- MPYF32 || SUBF32 complete,
; R6H = 15.0 (0x41700000), R7H = 2.0 (0x40000000)
See also
SUBF32 RdH, ReH, RfH || MOV32 RaH, mem32
SUBF32 RdH, ReH, RfH || MOV32 mem32, RaH
Instruction Set
110
SPRUEO2A – June 2007 – Revised August 2008
Summary of Contents for TMS320C28 series
Page 2: ...2 SPRUEO2A June 2007 Revised August 2008 Submit Documentation Feedback ...
Page 12: ...Introduction 12 SPRUEO2A June 2007 Revised August 2008 Submit Documentation Feedback ...
Page 20: ...CPU Register Set 20 SPRUEO2A June 2007 Revised August 2008 Submit Documentation Feedback ...
Page 136: ...Instruction Set 136 SPRUEO2A June 2007 Revised August 2008 Submit Documentation Feedback ...