Related Edinburgh Organisations

Abstract

Embedded systems are hardware and software based equipment. They are subject to many constraints and must run without stopping. To define the behavior of these systems, dataflow programming models are often used. On one hand, this choice is motivated by the fact that dataflow models allow the description of cyclic behavior, which is needed for embedded systems ; secondly because the analysis of these models can provide essential guarantees of correctness and performance. The Kalray company provides an embedded architecture : the MPPA. It is accompanied by the ΣC programming language. This language allows to describe applications in the form of a well-known dataflow model : the Cyclo-Static Dataflow Graph (CSDFG). However, the dataflow graphs that are generated by this language are often too complex to be analysed with existing techniques. The objective of this thesis will be to provide algorithmic tools that solve the various stages of ΣC application analysis, but within a reasonable execution time, as on large instances. We study three different problems : the liveness, the throughput evaluation, and the buffer sizing. For each of these problems, we provide fast algorithmic methods, and we have experimentally verified their efficiency. The proposed methods are based on periodic scheduling. Therefore they provide approximate results without any guarantee of optimality. To overcome this weakness, we also offer new analysis tools based on K-periodic scheduling. This result generalizes our previous work and will allow us in the near future to design more efficient analyzing methods.