Efficient Implementation of Stream Applications on processor Arrays
Sammanfattning: This thesis concludes work conducted on exploring the usage of parallel and reconfigurableprocessor architectures in industrial high-performance embedded systems. This kind ofsystems has by tradition been built using a mix of digital signal processors and custommade hardware. Digital signal processors provide full functional flexibility, but at the costof lower performance. Custom made hardware can be optimized for specific functions forhigh performance, but at the cost of inflexibility and high development costs. A desire is tocombine flexibility and performance using commercial hardware, without trading too muchof performance for flexibility.Parallel and reconfigurable architectures provide a flexible computing space constitutingprocessing elements that are coupled through configurable communication structures.Architectures designed with less complex processing elements renders a high degree ofutilizable parallelism at the cost of having to use a portion of the processing elements forcontrol functions. In the thesis it is shown that it is possible to utilize this kind of architectureto achieve high performance efficiency, despite the fact that a large fraction of PEs arerequired to implement control-oriented portions in a fairly complex algorithm.A major problem is that architectures of this kind expose a very complex programmingabstraction for compilers and programmers. The approach taken in this work is adomain-specific stream processing model which provides means to express applicationspecificdataflows and computations in terms of streams. An extensive application studycomprising the baseband processing in radio base stations has been used to define sufficientdata types, operators and language constructs. Furthermore, to support industrial requirementson portability to different architectures, it must be possible to express parallelismand characteristic computations without exposing of hardware details in the source code.To be able to prototype and set up experiments with stream processing languages anexperimental programming framework has been developed. A first prototype language withspecific primitive types, operators and stream constructs has been implemented in order toelaborate with baseband programing. It is demonstrated how these types and operatorscan be used to express machine-independent bit field and other fine-grained data parallelcomputations. Furthermore, the language has been designed with constructs for efficientand flexible programming of reconfiguration of distributed function parameters.Keywords: Parallel processing, reconfigurable architectures, stream processing, baseband.i
Denna avhandling är EVENTUELLT nedladdningsbar som PDF. Kolla denna länk för att se om den går att ladda ner.