Instructions
www.ti.com
ADDF32 RdH, ReH, RfH
MOV32 RaH, mem32
32-bit Floating-Point Addition with Parallel Move
Operands
RdH
floating-point destination register for the ADDF32 (R0H to R7H).
RdH cannot be the same register as RaH.
ReH
floating-point source register for the ADDF32 (R0H to R7H)
RfH
floating-point source register for the ADDF32 (R0H to R7H)
RaH
floating-point destination register for the MOV32 (R0H to R7H).
RaH cannot be the same register as RdH.
mem32
pointer to a 32-bit memory location. This is the source for the MOV32.
Opcode
LSW: 1110 0011
0001 fffe
MSW: eedd daaa
mem32
Description
Perform an ADDF32 and a MOV32 operation in parallel. Add RfH to the contents of ReH
and store the result in RdH. In parallel move the contents of the 32-bit location pointed to
by mem32 to RaH. mem32 addresses memory using any of the direct or indirect
addressing modes supported by the C28x CPU.
RdH = ReH + RfH,
RaH = [mem32]
Restrictions
The destination register for the ADDF32 and the MOV32 must be unique. That is, RaH
and RdH cannot be the same register.
Any instruction in the delay slot must not use RdH as a destination register or use RdH
as a source operand.
Flags
This instruction modifies the following flags in the STF register:
Flag
TF
ZI
NI
ZF
NF
LUF
LVF
Modified
No
Yes
Yes
Yes
Yes
Yes
Yes
The STF register flags are modified as follows:
•
LUF = 1 if ADDF32 generates an underflow condition.
•
LVF = 1 if ADDF32 generates an overflow condition.
The MOV32 Instruction will set the NF, ZF, NI and ZI flags as follows:
NF = RaH(31);
ZF = 0;
if(RaH(30:23) == 0) { ZF = 1; NF = 0; }
NI = RaH(31);
ZI = 0;
if(RaH(31:0) == 0) ZI = 1;
Pipeline
The ADDF32 takes 2 pipeline cycles (2p) and the MOV32 takes a single cycle. That is:
ADDF32
RdH, ReH, RfH
; 2 pipeline cycles (2p)
|| MOV32
RaH, mem32
; 1 cycle
; <-- MOV32 completes, RaH updated
NOP
; 1 cycle delay or non-conflicting instruction
; <-- ADDF32 completes, RdH updated
NOP
Instruction Set
42
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 ...