SH7751 Group, SH7751R Group
Section 8 Pipelining
R01UH0457EJ0301 Rev. 3.01
Page 225 of 1128
Sep 24, 2013
(a) Serial execution: non-parallel-executable instructions
ADD R2,R1
MOV.L @R4,R5
MOV R1,R2
next
SHAD R0,R1
ADD R2,R3
next
I
D
EX
NA
S
I
D
EX
NA
S
I
D
...
1 stall cycle
(b) Parallel execution: parallel-executable and no dependency
I
D
EX
NA
S
I
D
EX
MA
S
(c) Issue rate: multi-step instruction
AND.B#1,@(R0,GBR)
I
D
SX
MA
S
D
SX
MA
S
D
SX
NA
S
D
SX
NA
S
I
I
(d) Branch
1 issue cycle
1 issue cycle
4 issue cycles
...
I
D
EX
NA
S
I
D
EX
NA
S
2-cycle latency for I-sta
g
e of branch destination
1 stall cycle
I
D
I
D
EX
NA
S
I
D
EX
NA
S
I
D
EX
NA
S
BT/S L_far
ADD R0,R1
SUB R2,R3
BT/S L_far
ADD R0,R1
L_far
I
D
EX
NA
S
I
D
I
D
—
—
—
...
No stall
BT L_skip
ADD #1,R0
L_skip:
...
i
D
E
A
S
4 stall cycles
EX-
g
roup SHAD and EX-
g
roup ADD
cannot be executed in parallel. Therefore,
SHAD is issued first, and the followin
g
ADD is recombined with the next
instruction.
EX-
g
roup ADD and LS-
g
roup MOV.L can
be executed in parallel. Overlappin
g
of
sta
g
es in the 2nd instruction is possible.
AND.B and MOV are fetched
simultaneously, but MOV is stalled due to
resource lockin
g
. After the lock is released,
MOV is refetched to
g
ether with the next
instruction.
No stall occurs if the branch is not taken.
If the branch is taken, the I-sta
g
e of the
branch destination is stalled for the period
of latency. This stall can be covered with a
delay slot instruction which is not parallel-
executable with the branch instruction.
Even if the BT/BF branch is taken, the I-
sta
g
e of the branch destination is not
stalled if the displacement is zero.
Figure 8.3 Examples of Pipelined Execution
Содержание SH7751 Group
Страница 2: ...Page ii of liv R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 30: ...Page xxx of liv R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 46: ...Page xlvi of liv R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 54: ...Page liv of liv R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 190: ...Section 4 Caches SH7751 Group SH7751R Group Page 136 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 226: ...Section 5 Exceptions SH7751 Group SH7751R Group Page 172 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 264: ...Section 7 Instruction Set SH7751 Group SH7751R Group Page 210 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 320: ...Section 9 Power Down Modes SH7751 Group SH7751R Group Page 266 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 344: ...Section 10 Clock Oscillation Circuits SH7751 Group SH7751R Group Page 290 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 388: ...Section 12 Timer Unit TMU SH7751 Group SH7751R Group Page 334 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 800: ...Section 17 Smart Card Interface SH7751 Group SH7751R Group Page 746 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 848: ...Section 19 Interrupt Controller INTC SH7751 Group SH7751R Group Page 794 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 876: ...Section 20 User Break Controller UBC SH7751 Group SH7751R Group Page 822 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 1036: ...Section 22 PCI Controller PCIC SH7751 Group SH7751R Group Page 982 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 1152: ...Appendix C Mode Pin Settings SH7751 Group SH7751R Group Page 1098 of 1128 R01UH0457EJ0301 Rev 3 01 Sep 24 2013 ...
Страница 1185: ......
Страница 1186: ... SH7751 Group SH7751R Group User s Manual Hardware R01UH0457EJ0301 Previous Number REJ09B0370 0400 ...