Digital Signal Processing Reference
In-Depth Information
a
b
1 actor
a
3
()
i
1
;
i
2
;
i
3
==>
o
1
;
o
2
:
1 actor
a
2
()
i
1
==>
o
1
:
2
Boolean t := false;
3 action
i
1
:[v] ==>
o
1
:[v]
4 guard not
t
5do
t := true;
end
6 action
i
1
:[u,v] ==>
o
1
:[u,v]
7 guard
t
8do
t := false;
end
9 end
2
Boolean t := false;
3 action
i
1
:[v]==>
o
1
:[v]
4 guard
t
5do
t := false;
end
6 action
i
2
:[v]==>
o
2
:[v]
7 guard not
t
end
8ac i on
i
3
:[v]==>[]
9do
t:=v;
end
10 end
Fig. 24
Examples of a
CSDF
actor in
CAL
which is not recognized by the quasi-static scheduling
algorithm presented in [
20
]
. (
a
)A
CSDF
actor which forwards first one token from
i
1
to
o
1
and
then atomically two tokens from
i
1
to
o
1
,(
b
) A forward actor
a
3
which depending on the state
variable
t
forwards either from
i
1
to
o
1
or from
i
2
to
o
2
. The state variable can be reassigned by a
token on
i
3
a
b
a
2
o
1
i
1
1 actor
a
4
()
i
1
;
o
2
:
2 action
i
1
:[u,v,w]==>
o
1
:[u,v,w]
3end
4 action
i
2
:[v]==>
o
2
:[v]
5end
6end
i
2
;
i
3
==>
o
1
;
1
a
3
o
1
o
2
a
4
a
1
i
1
i
2
i
3
i
4
Z
3
Z
5
Z
6
Z
7
1
1
1
1
11
3
3
1
1
1
i
1
i
1
o
1
o
2
o
1
o
2
Z
1
1
1
i
2
i
3
i
2
Z
2
Z
4
1
Fig. 25
Alast
CAL
actor and a dataflow graph containing the presented
CAL
actors. The dataflow
graph has seven
statically related groups Z
1
-
Z
7
which are denoted with a
dashed border
.(
a
)A
forward actor
a
4
which forwards three tokens atomically from
i
1
to
o
1
or one token from
i
2
to
o
2
,
(
b
) A dataflow graph containing the
CAL
actors
a
1
to
a
4
their ports and the partitioning of these
ports into
statically related groups
is straightforward and can be done fully statically. Subgraph
g
1
is a more interesting
case. The repetition vector for
g
1
is 3
Z
5
. However, the action for
the quasi-static schedule for
g
1
must be able to stall until
Z
5
is enabled again. A
similar problem exists due to the feedback loop over actor
a
4
. This problem could
would use the approach of Plishker et al. as described in Sect.
2.3
to obtain a speedup
for
enable-invoke
dataflow.
×
Z
1
,
1
×
Z
3
,
3
×
6
Conclusions
Due to the complexity of current dataflow applications their modeling requires
dynamic behavior. However, these applications still contain large isles of static
actors, which are amenable to compile time analysis. In this chapter, we presented