dsp56800e Freescale Semiconductor, Inc, dsp56800e Datasheet - Page 286

no-image

dsp56800e

Manufacturer Part Number
dsp56800e
Description
16-bit Digital Signal Controller Core
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Instruction Pipeline
Several pipeline effects occur in the code in Example 10-2:
10-6
Pipeline
Stage
OP2
EX2
AG
P1
P2
EX
ID
IF
No pipeline effect between ASL (n3) and MOVE.W (n4), since the ASL is done in Execute
Pipeline stall occurs because the result of MPY (n5) is not available for write to memory (n6) until
the end of cycle #12
No pipeline effect between successive MAC and data ALU instructions (n7, n8, and n9)
Pipeline stall because result of SUB (n9) is not available for write to memory (n10) until the end of
cycle #17
Pipeline stall because result of ASRR.W (n11) is not available for conditional branching (n12) until
cycle #20
n1
1
NOP
ADD
ASL
MOVE.W
MPY
MOVE.W
MAC
MAC
SUB
MOVE.W
ASRR.W
BNE
n2
n1
2
Table 10-3. Execution of Data ALU Instructions in the Pipeline
Example 10-2. Demonstrating the Data ALU Execution Stages
n3
n2
n1
3
nop add asl mov mpy
n4
n3
n2
4
X0,A
A
A,X:(R0)+
X0,Y0,B
B,X:(R0)+
X0,Y0,A
X0,Y0,A
Y1,A
A,X:(R0)+
#3,A
LABEL
n5
n4
n3
5
add
n6
n5
n4
6
DSP56800E Core Reference Manual
add
asl
n7
n6
n5
7
; n1: Non-data ALU (restores to Normal state)
; n2: Normal Execution (Execute phase)
; n3: Normal Execution (Execute phase)
; n4: Normal Execution (no dependency)
; n5: Two-Stage (Execute and Execute 2)
; n6: (dependency occurs--1 stall cycle)
; Non-data ALU (restores to Normal state)
; n7: Two-Stage (Execute and Execute 2)
; n8: Two-Stage (Execute and Execute 2)
; n9: Late Execution (Execute 2 phase)
; n10: (dependency occurs--1 stall cycle)
; Non-data ALU (restores to Normal state)
; n11: Two-Stage (Execute and Execute 2)
; n12: (dependency occurs--1 stall cycle)
; Non-data ALU (restores to Normal state)
mov mpy
add
asl
n8
n7
n6
8
mov mpy
asl
n9
n8
n7
9
Instruction Cycle
mov mac mac sub
mov mpy
10
mov mac mac sub
n10 n11 n12
11
n9
n8
mov mac mac sub
mpy
n10 n11 n12
12
n9
mov mac mac
n10 n11
13
14
mov asrr
mac mac sub
15
mov asrr
n12
16
Freescale Semiconductor
mov asrr
17
mov asrr
bcc
18
bcc
19
asrr
bcc
20
bcc
21

Related parts for dsp56800e