Font Size: a A A

Research On Fast Generation Of Compilers For Embedded System

Posted on:2005-12-28Degree:MasterType:Thesis
Country:ChinaCandidate:X X RenFull Text:PDF
GTID:2168360125958893Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Embedded system is character by its flexibility and fast-to-market, which has made system developers be faced with great challenges. Compiler is the primary tool used in software development of embedded system. Obtaining a compiler for a special embedded system early is important to reducing development cycle.This paper discusses quickly compiler's generation method of embedded system. It takes GNU C Compiler (GCC) as study object, covering currently retargetable method in compiler design, and porting GCC to a new embedded system Nios. The manual porting is simple, but requires lots of work and developing time. So the paper studies a method based on architecture description language for automatic generation of a compiler. This method mainly solves the problem of fast compiler generation, but the generated compiler emits codes with poor quality. The paper proposes a new compiler design method by taking the advantages of manual porting and compiler's automatic generation. This novel method combines certain retargetable compiler including code optimization with compiler's automatic generation. It describes target system using architecture description language, then generates machine descriptions automatically which are needed to port the compiler to a new system. This method takes Sim-nML as architecture description language, and uses its corresponding tools that are IR-Generator and genmd. Following the idea proposed above, this paper analyses a GCC machine description generator -genmd, and constructs a model on instruction reorganization and machine description generation by using the theory of automation machine, aiming at solving its lack of support on JUMP instructions. A solution is given according to the model, as well as correspond modifications on genmd source codes.This paper tests the work of manual porting GCC to Nios system and the modifications of genmd in supporting JUMP instructions. The conclusions show that, the manually ported GCC can produce assemble codes from C program correctly; and the modified genmd can generate correct machine description for JUMP instructions. By analyzing and comparing the manual porting with automatic porting, we can see that automatic generation can provide a compiler more quickly and meet the requirements of embedded system better.
Keywords/Search Tags:automatic generation of compiler, retargetable, ADL, genmd, embedded system
PDF Full Text Request
Related items