Exercise7 - Introduction For Embedded Systems
Exercise7 - Introduction For Embedded Systems
Exercise7 - Introduction For Embedded Systems
Task 1: Scheduling
NOP 0
1 2 6 8 10
3 7 9 11
n
NOP
All the operations are handled by the same resource type and have the same execution time:
D∗ = D− = D< = D+ = 1.
b) Set up an optimization model for the optimization of the latency L. Resource constraints need not
be taken into account. (Hint: add an objective function to the system of inequations to get a linear
program).
Indicate valid starting times for the operations in both cases and check the validity of the schedules by
means of the system of inequations determined previously.
1
Task 2: Design Space Exploration
Consider again the sequence graph and the specification of task 1. Assume that there is only one resource
type which can compute all operations (+, −, <, ∗) and has an area of 1. The cost of an implementation is
given by the total required area. The goal is to find the Pareto-points of the design space which is given by
the parameters cost and latency. The number of allocated resources is not yet fixed.
a) Compute a lower and an upper bound for the latency in order to limit the possible Pareto-points.
b) Find a lower and an upper bound for the cost in order to limit the possible Pareto-points.
Consider the marked graph in Figure 2. The node labeled with + represents an addition of the two input
values.
I) At the input a a sequence of numbers is read in, with a(k) representing the k-th number. Determine
the outgoing sequence b(k) as function of the input values.
II) The initial mark with the value s is replaced by n marks s1 , ..., sn . Determine a recursive formula for
the output sequence b(k).
Input Output
Suppose that two adders (r1 ) and a multiplier (r2 ) are available as resources. Addition takes one time unit and
multiplication takes two time units. The first operation starts at t = 0 and the top node (’nop’) is executed
within zero time units. The priority is assigned for each operation as maximal distance to the bottom node
(’nop’).
a) Fill out Table 1 using the list scheduling algorithm. For a timestep t, Ut,k denotes the set of operations
that are ready to be scheduled on resource rk (to be more specific, the set of operations that can be
mapped on resource rk and whose predecessors are all completed). St,k denotes the set of operations
that starts at time t on resource rk , while Tt,k is the set of operations in execution at time t on resource
rk .
c) Suppose that area costs for the adder and multiplier are 1 and 2 respectively. If it is allowed to spend
additional hardware by 2 area units, which resource should be added to shorten the latency? Two adders
or one multiplier? Explain why.
2
Figure 3: Sequence graph for Task 4
3
t k Ut,k Tt,k St,k
r1
0
r2
r1
1
r2
r1
2
r2
r1
3
r2
r1
4
r2
r1
5
r2
r1
6
r2
r1
7
r2
r1
8
r2
r1
9
r2
r1
10
r2
r1
11
r2
r1
12
r2
r1
13
r2
Table 1: Table for Task 2