Font Size: a A A

Retargetable code generation based on data flow graph with storage for embedded systems

Posted on:2001-02-18Degree:Ph.DType:Dissertation
University:Case Western Reserve UniversityCandidate:Xu, ChaoFull Text:PDF
GTID:1468390014452579Subject:Computer Science
Abstract/Summary:
The advent of embedded systems has dramatically changed the concepts and approaches for the electronic system design. It is now more desirable to use high level language (HLL) like C as the programming language. A compiler, which translates the HLLs into assembly code, becomes the essential tool for the embedded system design.; However, traditional compilation and optimization techniques fail to generate efficient code for embedded processors due to their irregularities. This dissertation represents our efforts to cope with these problems. We propose a novel code generation approach which is suitable for the heterogeneous systems such as DSP processors. Two important issues concerning the embedded processors are discussed.; First, we addressed the problem of code generation with high quality. Since the irregularities of embedded processor make traditional code generation phases highly interdependent, we use a new approach which couples all these phases together and generates code in one step. This phase-coupled approach utilizes the list scheduling as the driving engine. We present a new heuristics which considers the costs of code selection, register allocation and possible instruction-level parallelism. A new intermediate representation format—Data Flow Graph with Storage (DFGS)—is introduced. DFGS has the characteristics of capturing the data flow of programs as well as the execution status of the processor. It is used as the basis of our code generator.; Retargetability is another issue addressed in our code generator. We use table representation to specify the target processor. This format has the advantage of easy to be understood and used. With the help of the specific description, our code generator can be retarget to the similar architectures with little efforts.; Experimental results show that this approach produces high-quality code which is comparable with manually written one and is especially useful for the heterogeneous systems.
Keywords/Search Tags:Code, Embedded, Systems, Data flow, Approach
Related items