This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Question about fetch phases in spru732j.pdf

Hi,

The code below the dot line is from spru732j.pdf, page 517/686. I do not understand the red comments.LOOP1 is a

single EP, 8 instructions. Why does it have PW and PG phases there? And PR, PS are in the next EP?

 

 

 

 

 

..............................

Example 4-1. Execute Packet in

Figure 4-7

SADD .L1 A2,A7,A2 ; E1 Phase

|| SADD .L2 B2,B7,B2

|| SMPYH .M2X B3,A3,B2

|| SMPY .M1X B3,A3,A2

|| B .S1 LOOP1

|| MVK .S2 117,B1

LDW .D2 *B4++,B3 ; DC Phase

|| LDW .D1 *A4++,A3

|| MV .L2X A1,B0

|| SMPYH .M1 A2,A2,A0

|| SMPYH .M2 B2,B2,B10

|| SHR .S1 A2,16,A5

|| SHR .S2 B2,16,B5

LOOP1:

STH .D1 A5,*A8++[2] ; DP, PW, and PG Phases

|| STH .D2 B5,*B8++[2]

|| SADD .L1 A2,A7.A2

|| SADD .L2 B2,B7,B2

|| SMPYH .M2X B3,A3,B2

|| SMPY .M1X B3,A3,A2

|| [B1] B .S1 LOOP1

|| [B1] SUB .S2 B1,1,B1

LDW .D2 *B4++,B3 ; PR and PS Phases

|| LDW .D1 *A4++,A3

|| SADD .L1 A0,A1,A1

|| SADD .L2 B10,B0,B0

|| SMPYH .M1 A2,A2,A0

|| SMPYH .M2 B2,B2,B10

|| SHR .S1 A2,16,A5

|| SHR .S2 B2,16,B5

 

  • I feel that because LOOP1 is a single EP. All 4 fetch phases should be in this line. That is:

    LOOP1:

    STH .D1 A5,*A8++[2] ; DP, PG, PS, PW and PR Phases

    || STH .D2 B5,*B8++[2]

    || SADD .L1 A2,A7.A2

    || SADD .L2 B2,B7,B2

    || SMPYH .M2X B3,A3,B2

    || SMPY .M1X B3,A3,A2

    || [B1] B .S1 LOOP1

    || [B1] SUB .S2 B1,1,B1

     

    Am I wrong?