Branch Using a Displacement
B
3-41
TMS320C62x/C67x Fixed-Point Instruction Set
Target Instruction
Pipeline
Stage
E1
PS
PW
PR
DP
DC
E1
Read
Written
Branch
Taken
n
Unit in use
.S
Instruction Type
Branch
Delay Slots
5
Table 3–9 gives the program counter values and actions for the following code
example.
Example
0000 0000
B
.S1
LOOP
0000 0004
ADD
.L1
A1, A2, A3
0000 0008
|| ADD
.L2
B1, B2, B3
0000 000C
LOOP: MPY
.M1X
A3, B3, A4
0000 0010
|| SUB
.D1
A5, A6, A6
0000 0014
MPY
.M1
A3, A6, A5
0000 0018
MPY
.M1
A6, A7, A8
0000 001C
SHR
.S1
A4, 15, A4
0000 0020
ADD
.D1
A4, A6, A4
Table 3–9. Program Counter Values for Example Branch Using a Displacement
Cycle
Program Counter
Value
Action
Cycle 0
0000 0000h
Branch command executes
(target code fetched)
Cycle 1
0000 0004h
Cycle 2
0000 000Ch
Cycle 3
0000 0014h
Cycle 4
0000 0018h
Cycle 5
0000 001Ch
Cycle 6
0000 000Ch
Branch target code executes
Cycle 7
0000 0014h
Pipeline