Hi,
I am learning some knowledge of asm. The following code is from the pdf manual. The original code has a '||' sign before line 7. I found that it passes 6 and 7 when exec line 5. When I step through the following code of TMS320C6678, the core steps line 4, 5, then 9 even after I remove '||' sign of line 7. I do not understand why it can pass line 6 and 7 together with line 5. Is it true that line 5,6 and 7 execute as a one cycle? It is not the same way as the execute packet as the manual says to me.
The second question is: I notice that line 6, 7 each has 32 bit instruction code. DSP can exec line 6 and 7 no matter the '||' sign exists or not?
Thanks.
.................................................
4 MVK 1, A1
cpyer_asm:
0c016000: 24A6 MVK.L1 1,A1
5 B .S1 LOOP
0c016002: 014A BNOP.S1 LOOP (PC+10 = 0x0c01600a),0
6 ADD .L1 A1, A2, A3
0c016004: 2130 ADD.L1 A1,A2,A3
7 ADD .L2 B1, B2, B3
0c016006: 2131 ADD.L2 B1,B2,B3
9 ADD .D1 A4, A6, A4
0c016008: 8336 ADD.D1 A4,A6,A4
10 LOOP: MPY.M1X A3, B3, A4
.......................................................................