Digital Signal Processing Reference
In-Depth Information
Decomposing an application into actors and their (data) interdependence allows for
more fine-grained resource management. Now, actors are the atomic units for which tiles
need to be allocated. Whenever two different tiles are allocated to two interdependent
actors, the interactor communication requires services from the interconnect between
the tiles of the MP-SoC. In other words, communication needs to be routed through the
network-on-chip (NoC).
If a tile supports multitasking, it can be allocated to multiple actors. In order to
guarantee nonfunctional properties of the application (e.g., throughput and latency),
all multitasking tiles must have deterministic schedulers. More formally, a tile's sched-
uler must be a latency-rate server [44]. This guarantees an upper bound on the latency
between the first request for service and the first service response and a lower bound on
the throughput (rate) from that point onward, provided it is kept busy. This restriction
on multitasking tiles makes it possible to make allocations to actors independent of each
other (composability), i.e., when a tile is already allocated to an actor, allocating it to
another actor does not influence the nonfunctional properties of the first (if the sum of
the actors' rate requirements do not exceed the rate of the scheduler).
To be able to perform the mapping of an application to tiles, a spatial mapping algo-
rithm needs:
• 
A model of the application
• 
A model of the (MP-SoC) platform
• 
The constraints on the nonfunctional properties of the application
• 
Data on the resource requirements of process implementations (e.g., time,
memory, and energy)
The constraints on the nonfunctional properties of the application can only be
checked after it has been mapped. Thus, when a spatial mapping has been determined
and latencies and throughputs of processes running on tiles are known, the constraints
can be checked. A spatial mapping that lets the application meet its constraints on its
nonfunctional properties is considered feasible.
15.4.1 Design Time Mapping
The spatial mapping of applications can be performed at design time, if all applications
are known and the availability of the MP-SoC is guaranteed (what happens when this
is not the case is described in section 15.4.2). This is a (quite often manual) optimiza-
tion problem, in which the best allocation of tiles to actors should be found. A valid
solution must work for all possible user scenarios. When one application is already
running on an MP-SoC and a user starts another, then—assuming the combination of
applications is allowed—the new application should be runnable with the remaining
resources.
For sufficiently small applications and MP-SoCs, exhaustive search techniques can
be used to find optimal allocations for all possible scenarios. The mapping of slightly
larger applications is generally tackled by heuristic search methods that try to direct the
search for a solution, possibly missing the optimum, but yielding an acceptable result.
 
Search WWH ::




Custom Search