Figure 6–8. Dependency Graph of Floating-Point Dot Product With LDDW (Showing
Functional Units)
Example 6–18. Linear Assembly for Floating-Point Dot Product Inner Loop With LDDW
(With Allocated Resources)
LDDW
.D1
LDDW
.D2
MPYSP .M1X
MPYSP .M2X
ADDSP .L1
ADDSP .L2
SUB
.S1
[A1] B
.S2
Using Word Access for Short Data and Doubleword Access for Floating-Point Data
A side
LDDW
.D1
ai & ai+1
5
5
MPYSP
pi
.M1X
4
ADDSP
.L1
4
sum0
SUB
1
.S1
cntr
1
*A4++,A3:A2
; load ai and ai+1 from memory
*B4++,B3:B2
; load bi and bi+1 from memory
A2,B2,A6
; ai * bi
A3,B3,B6
; ai+1 * bi+1
A6,A7,A7
; sum0 += (ai * bi)
B6,B7,B7
; sum1 += (ai+1 * bi+1)
A1,1,A1
; decrement loop counter
LOOP
; branch to loop
Optimizing Assembly Code via Linear Assembly
B side
LDDW
bi & bi+1
5
5
MPYSP
pi+1
.M2X
4
ADDSP
4
sum1
.L2
B
LOOP
.S2
.D2
6-25
Need help?
Do you have a question about the TMS320C6000 and is the answer not in the manual?
Questions and answers