Invalid Delay Instructions
www.ti.com
Example 3-11. Parallel Instruction Destination/Source Exception
; Valid parallel operation.
MPYF32 R2H, R1H, R0H
; 2p/1 instruction
|| MOV32
mem32, R2H
; <-- Uses R2H before the MPYF32
; <-- mem32 updated
NOP
; <-- Delay for MPYF32
; <-- R2H updated
Likewise, the source register for the 2nd operation within a parallel instruction can be the same as one of
the source registers of the first operation. The MPYF32 operation in
uses the R1H register
as one of its sources. This register is also updated by the MOV32 register. The multiplication operation will
use the value in R1H before the MOV32 updates it.
Example 3-12. Parallel Instruction Destination/Source Exception
; Valid parallel instruction
MPYF32 R2H, R1H, R0H
; 2p/1 instruction
|| MOV32
R1H, mem32
; Valid
NOP
; <-- MOV32 completes, R1H valid
; <-- MPYF32, R2H valid
Note:
Operations within parallel instructions cannot use the same destination register.
When two parallel operations have the same destination register, the result is invalid.
For example, see
.
If both operations within a parallel instruction try to update the same destination register as shown in
the assembler will issue an error.
Example 3-13. Invalid Destination Within a Parallel Instruction
; Invalid parallel instruction. Both operations use the same destination register
MPYF32 R2H, R1H, R0H
; 2p/1 instruction
|| MOV32
R2H, mem32
; Invalid
Some instructions access or modify the STF flags. Because the instruction requiring a delay slot will also
be accessing the STF flags, these instructions should not be used in delay slots. These instructions are
SAVE, SETFLG, RESTORE and MOVST0.
Note:
Do not use SAVE, SETFLG, RESTORE, or the MOVST0 instruction in a delay slot.
Pipeline
26
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 ...