[Objective] [User View] [Features] [Software infrastructure] [Collaboration] [Documentation] [History] [Publications] [Acknowledgment]
Scate

Source Code Analysis and Transformation Environment

Objective

The objective of SCATE is to provide a generic environment for fine grained C++/C parsing/analysis/transformation and hardware mapping tasks. The name environment is significant here. It means that the whole infra structure is a software platform which can help you to implement your own C++/C based analysis/transformation/mapping tasks. You are free to use it, but there where functionality is (still) lacking, you are invited to contribute to it as well. To allow new functionality to get in, SCATE is Open Source under the GPL License.
The functionality of SCATE that has been developed so far is a system-level design and programming environment for embedded multiprocessors. Here we consider the mapping of C++ based specifications of embedded systems functions onto heterogeneous multiprocessors containing hardware and software components. In practice this relates to a number of source code transformations on process networks.
Transformations should be specified by a system designer. The enforcement of these design decisions in the source code is automated by the SCATE tool. The source code after transformation can - with or without additional manual modifications - be used as input for existing hardware and ⁄ or software compiler(s).

User view

User View
Figure 1: High level user view on the tools.

Features

Software infrastructure

Software infrastructure
Figure 2: Component view from a SCATE tool designer perspective. The dashed dotted line represents data type generation. The dotted line represents the generation of input files for ANTLR. Finally, the dashed line represents parser generation.

Collaboration

In addition, we are thinking about the following future challenges to which we would warmly welcome your collaboration. If you would like to contribute to any of these subjects, or any other relevant subject you might think of, please drop us a line: ondrejpopp@users.sourceforge.net, dalders@users.sourceforge.net

Documentation

History

SCATE has been developed in the Triple-M project at Philips Research. Currently, the project is hosted at SourceForge.net

Publications

Pieter van der Wolf, Erwin de Kock, Thomas Hendriksson, Wido Kruijtzer and Gerben Essink, Design and Programming of Embedded Multiprocessors: An Interface-Centric Approach, CODES ISSS, Stockholm, Sweden, September 8-10, 2004.

Acknowledgment

We gratefully acknowledge the contributions to the development of SCATE from Erwin de Kock.

Finally, we thank SourceForge.net for hosting this project.


You can subscribe to the SCATE user's mailing-list. Please submit bugs, support requests, and feature requests through the SourceForge.net site.