The design of functionally correct systems greatly bene¯ts from modularity. When ex- pressed in a formalism that possesses a compositional semantics, reasoning about the cor- rectness of these designs is considerably simpli¯ed. In this thesis we have extended such an approach to include compositional performance analysis, enabling e±cient assessment of the change in performance, when parts of a system are replaced by functional equivalent ones. We apply our approach to data-independent stream processing systems, a class of elec- tronic systems of considerable interest, since it includes most digital signal processing applications. For these systems we present a compositional approach to their design and performance analysis, which is suitable for early design space exploration. Its key ingre- dients are: a design style in which systems are composed from a prede¯ned set of basic components using a single universal composition operator, a CSP-oriented hardware de- scription language to describe systems, two calculi to reason about the location of data within streams, a schedule calculus in which schedules are syntactic objects, a performance calculus based on truthful metrics, and a quantitative approach to elasticity, a novel per- formance metric that indicates how well a system can cope with small °uctuations in the temporal behavior of its environment. Truthful metrics are performance metrics that can be computed e±ciently and that allow a reliable comparison of designs without accurate prediction of their performance. This makes them eminently suitable for the determination of the Pareto-optimal points of a design space. This thesis uses the concept of weight to capture causal dependencies between the inputs and outputs of a system. Using weights, three classes of data-independent systems are de¯ned: data-conservative systems, block-conservative systems, and weight-conservative systems. An analytic design space exploration is performed for a representative application from each class. In terms of functionality, data-conservative systems perform the simplest computations. A main result of this thesis is that data-conservative systems obey Little's law, which states that the product of throughput and latency equals occupancy, no matter how the system's events are scheduled. A speci¯c class of data-conservative systems is formed by bu®er systems. This thesis de¯nes a taxonomy of bu®ers according to structural complexity. For each class of the taxonomy, a design space exploration is performed that ¯nds optimally elastic bu®ers. Of the three classes, weight-conservative systems are capable of the most complex com- putations. In particular, they can perform window computations, and many digital signal processing applications are formulated as window computations. Performance metrics and analysis techniques established for data-conservative systems are extended to weight- conservative systems. In particular, we have established a novel version of Little's law involving weights. As a case-study for this class of systems, we have explored a number of ¯nite impulse respons ¯lter designs. Block-conservative systems are weight-conservative systems that are special in the sense that their performance analysis can be done as if they are data-conservative. As a case- study for this class of systems, we have analyzed the performance of various block sorters known from the literature. Our approach helps to alleviate a major problem in electronic system design, namely that present design productivity does not increase fast enough to exploit the increase in computational resources o®ered by the rapid advances in semiconductor technology.
|Qualification||Doctor of Philosophy|
|Award date||9 Sept 2008|
|Place of Publication||Eindhoven|
|Publication status||Published - 2008|