Researchers: | Shamik Bandyopadhyay |
---|---|
Christopher Brooks | |
Elaine Cheong | |
Jackie Man-Kit Leung | |
Gang Zhou | |
Rachel Zhou | |
Advisor: | Edward A. Lee |
In the real-time systems project, we are studying real-time software systems including models of computation with time and concurrency, metaprogramming techniques, code generation and optimization, domain-specific languages, schedulability analysis, and programming of sensor networks.
Ptolemy II [1] is a graphical modeling environment for embedded software design. We are developing a code generator for Ptolemy II models which will generate fast, portable C code for real-time systems.
The code generator needs to create C code according to:
We define code generation helper classes that are associated with each Ptolemy II actor. These helper classes contain C code that describe the behaviors of the associated actors. Many primitive features and/or functionalities of the Ptolemy II actors are directly transformable to the C helpers; however, there are still non-trivial conversions that prevent the automation of creating the C helpers. In particular, code generation must overcome issues such as converting Java object types to C primitive types and using language-specific hardware APIs.
[1] Christopher Brooks, Edward A. Lee, Xiojun Liu, Stephen Neuendorffer, Yang Zhao, and Haiyang Zheng. Heterogeneous concurrent modeling and design in Java. Technical Report UCB/ERL M05/21, EECS, University of California, Berkeley, 2005.
Last updated 10/17/05