DOC PREVIEW
Berkeley ELENG C249A - Metropolis Infrastructure

This preview shows page 1-2-3-4 out of 11 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Part I – Metropolis Infrastructure 1) Formal models of executions of Metropolis meta-model Formal semantics of metropolis meta-model is being developed. The semantics is automata based, i.e. for each syntactic construct in the meta-model, we define an automaton specifying its semantics. The goal of this project is be able to automatically generate these automata for a meta-model netlist. Ideally, automata would be specified in an analyzable format, e.g. SMV. Then they could be used as an abstraction for formal verification. Number of people: 1 Mentors: Felice Ballarin ([email protected] ) 2) FSM generation for Metropolis constraints Part of Metropolis meta-model is a set of constraints that could be specified in a logic called LOC (Logic Of Constraints). Not all LOC formulas can be represented by FSMs, but some of theme can. Your goal is to define a subset which may be converted to FSMs and to develop the conversion procedure. Alternatively, you may try to find a conversion procedure from an LOC subset to a decidable temporal logic like LTL. Number of people: 1 Mentors: Felice Ballarin ([email protected] ) 3) Hardware synthesis from Metropolis processes This project has the goal of extending the existing translator from the Metropolis meta-model to the CDFG form used by high-level synthesis. In particular, it must handle multi-dimensional array accesses, function calls and port methods. It must also implement a translator back from the scheduled CDFG into Metropolis process code, this time using a synchronous (clocked) semantics. Pre-requisites: Java programming (no knowledge of HLS is required) Number of people: 1 Mentors: Yosinori Watanabe ([email protected]) Luciano Lavagno ([email protected]) 4) Co-simulation interface in Metropolis meta-model In Metropolis, one can model both function and architecture specifications made of heterogeneous components using the same modeling mechanism called the meta-model. Tools are available to generate semantically equivalent descriptions in many differentlanguages, such as Java, C++, SystemC, which can be executed for simulation. It is often the case, however, the designs captured in Metropolis need to be co-simulated with the rest of the system (or environment) that are modeled in the same target language (say SystemC) but not within the Metropolis environment. Typical examples of this case are when such designs are provided by third-parties that do not want to disclose the source code, or when the part being designed in Metropolis has to interact with code inherited from products of the previous generation. This project investigates various approaches to achieve such co-simulation. In one way or another, an interface must be defined between the two designs. A generic interface that can be used for many design scenarios will be attractive for its versatility, while specific one may have advantages for efficiency, and such trade-off will be experimented. Number of people: 1 Mentors: Yosinori Watanabe ([email protected]) 5) Metroshell to explore platform-based design space Metroshell is the text-based user interface of the Metropolis environment. It allows one to load or browse designs for both functions and architecture, specify refinement or abstraction, relate two platforms, successively apply various checks on the designs or call simulation, synthesis, verification tools. It is written in Jacl, the Java version of Tcl script language. This project enhances the capability of Metroshell, which involves necessary enhancement of the compiler of the Metropolis language. It will add more interactive features such as design debugging and more commands for design validity checking. The resulting features will be tested on design examples being specified in the Metropolis project. Number of people: 1 (Knowledge on compilers and Java programming recommended) Mentors: Yosinori Watanabe ([email protected] ) 6) Synchronous Modeling in the Metamodel and Esterel This project involves the development of a library of synchronous constructs for use in the Metropolis Metamodel, their translation into an appropriate input for an Esterel compiler, and the re-incorporation of the result of the compiler back into the MMM. The latter would be in the form of a single process, with the same behavior as the original synchronous composition of processes. Number of people: 2 Mentors: Trevor Conrad Meyerowitz [email protected] Luciano Lavagno ([email protected])Roberto Passerone ([email protected]) Ellen Sentovich <[email protected]> Harry Hsieh <[email protected]> 7) Interfacing SUIF (and/or Trimaran) with Metropolis SUIF is a publicly available compiler infrastructure that has been developed by several universities, including Stanford and Illinois, to support research in the software compiler domain, with a particular emphasis on parallelizing compilers. Trimaran is also publicly available, but it is an effort sponsored in particular by HP for its EPIC VLIW architecture (one of the roots of Intel's Itanium architecture). Both of them provide powerful algorithms for dismantling high-level program into low-level simple instruction, discovering parallelism, performing data flow analysis, and so on. An interface with those tools would significantly enhance the Metropolis toolbox both for software and for hardware compilation and synthesis. The task of this project is to pick one (or both, if more than one person is interested) of these compilation frameworks, and build translators from the MMM Abstract Syntax Tree to their Intermediate Representations, and vice-versa. Background: programming in C++. Number of people: 1 Mentors: Luciano Lavagno ([email protected]) Harry Hsieh <[email protected]> Watanabe ([email protected]) Part II – Metropolis Applications 8) Modeling continuous-time sub-systems in Metropolis In several application domains it is difficult or inconvenient to model the discrete and continuous components in separate environments. A typical example is offered by the real-time control community: in order to access how the performance of a controller is affected by architectural and mapping choices, the closed loop system should be considered. Realistic and quantitative answers to this question during the early phases of the development are a precious tool for product development. The first step in allowing the two types of subsystems to co-exist is defining the way they can


View Full Document

Berkeley ELENG C249A - Metropolis Infrastructure

Documents in this Course
Load more
Download Metropolis Infrastructure
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Metropolis Infrastructure and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Metropolis Infrastructure 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?