Design Environment for Heterogeneous Systems

Forum

Welcome to the metropolis Forum.

Downloads

Metropolis-1.0.2
More recent releases can be found here.

Metropolis-1.0.2 is available for download.

Metropolis consists of an infrastructure, a tool set, and design methodologies for various application domains. The infrastructure provides a mechanism such that heterogeneous components of a system can be represented uniformly and tools for formal methods can be applied naturally.

February 17, 2005 Metropolis-1.0.2 released

Metropolis-1.0.2 includes support for SystemC-2.1 and Cygwin.

  • README.txt Information about installing Metropolis
  • metropolis-1.0.2a.src.tar.gz Metropolis-1.0.2a sources in Unix/Linux format.

    (April 4, 2005: Metropolis-1.0.2a includes a change to configure and configure.in that now warns if jar -i fails.
    Formerly, configure would error out instead of warn.
    This problem appears primary under Linux, where /usr/bin/jar is the GNU jar, which does not handle -i.)
  • metropolis-1-0-2-src.zip Metropolis-1.0.2 sources in Windows format.
  • November 5, 2004 Metropolis-1.0.1 released.

    The only differences between the Metropolis 1.0 release and the Metropolis 1.0.1 release are minor updates to the documentation.

    September 15, 2004 Metropolis-1.0 released

    This first public release of Metropolis.

    Metropolis GUI
    The Metropolis Graphical User Interface (GUI) runs under Eclipse. It is a work in progress. Currently, it contains a graphical netlist structure viewer.

    MetroUI_2006_07_13.zip contains online help for the plugin within Eclipse.

    Installation Instructions and screen shots

    Metropolis-1.1 beta
    This is version 1.1 of Metropolis. The primary motivation for creating this release is to support the metro_ui Eclipse plugin.

    metropolis-1.1.src.tar.gz is the release in a gzip'd tar file for installation on Linux systems.

    metropolis-1-1-src.zip is the same release in Windows format, for installation under Cygwin.

    Summary of changes between Metropolis 1.0.2 and 1.1:

    • SystemC-2.1.v1 supported.
    • Support for metro_ui Eclipse plugin:
      • Add -dir option to Compiler to specify working directory for elaboration files.
      • frontend/MetaModeLibrary.initLibraries() now throws catchable exception if called twice.
      • Allow constructing CustomClassLoader to use a specified delegate class loader.
      • "make metro.jar" creates jar file for the Eclipse plugin.
    • Improvements to global time and quantity management, details below.
    • GME example added to $METRO/util.
    • Mapping tutorial PDF document added to $METRO/examples/simpleMapping.

    More details:

    2005-11-28 12:16 guyang
    src/metropolis/metamodel/backends/systemc/:
    GlobalTime.cpp, GlobalTime.h, SystemCBackend.java, scoreboard.cpp, scoreboard.h:
    additional changes to GlobalTime resolution algorithm
    2005-11-14 12:37 guyang
    src/metropolis/metamodel/backends/systemc/:
    GlobalTime.cpp, GlobalTime.h, SystemCBackend.java:
    Change GlobalTime resolution algorithm: Add static analysis to find out which processes are timed. Then register such timed processes to corresponding time domain (GlobalTime quantity manager). During simulation, resolve time until all timed processes have made time requests or all other quantity annotations are blocked.
    2005-09-06 09:41 guyang
    src/metropolis/metamodel/backends/systemc/scoreboard.cpp:
    smarter self-adaptive quantity resolution
    2005-08-26 17:05 guyang
    src/metropolis/metamodel/backends/systemc/:
    event.h, programcounter.cpp, scoreboard.cpp, scoreboard.h, statemedium.cpp, event.cpp:
    Two major improvements: 1. -mc switch is replaced by self-adaptive quantity annotation frequency control 2. the way checking event enableness status is changed. This information is now embedded in the event itself. This results in a ~4x performance improvement when simulating mapped design.
    2005-08-25 23:34 guyang
    src/metropolis/metamodel/backends/systemc/:
    event.cpp, scoreboard.cpp:
    fix -mc and improve performance by changing event::isEnabled
    2005-08-19 18:09 guyang
    src/metropolis/metamodel/backends/systemc/:
    GlobalTime.cpp, SystemCCodegenVisitor.java, global.cpp, global.h, medium.h, scoreboard.cpp, scoreboard.h:
    Add control to maximum number of cycles between quantity resolutions
    2005-08-19 17:59 guyang
    src/metropolis/metamodel/backends/systemc/SystemCCodegenVisitor.java:
    change => to -> for LTL formula enforcement in simulator
    2005-07-25 16:35 guyang
    src/metropolis/metamodel/frontend/FileLoader.java:
    Change FileLoader._resolvePass1(CompileUnitNode). Changes are indicated by GY at the very beginning of the comments. Do not resolve all files that pass pass0, instead just resolve the ast that is passed in as the argument.

    Metropolis-1.1.2
    October 12, 2006: Metropolis 1.1.2 is available for download

    metropolis-1.1.2.tar.gz is the release in a gzip'd tar file for installation on Linux systems.

    metropoils-1-1-2-src.zip is the same release in Windows format, for installation under Cygwin.
    January 16, 2008: metropolis-1-1-2-src.zip has a corrupt pdf:
    examples/simpleMapping/mapping_tutorial.pdf.
    Download Metropolis 1.1.3 instead.

    Only the 1.1.2 .zip file has this problem, the 1.1.2 tar.gz file is fine.

    Summary of changes between Metropolis 1.1.beta and 1.1.2:

    • Support for gcc-4.1.1
    • Code cleaning

    systemc-2.1.v1 under cygwin notes

    If you are building systemc-2.1.v1 under gcc-4.1.1 under Cygwin, you might see:
    ../../../../src/sysc/kernel/sc_process_int.cpp:441: error: 'sc_thread_cor_fn' was not declared in this scope
    
    The solution is to edit systemc-2.1.v1/src/sysc/kernel/sc_process_int.cpp and move the definition of sc_thread_cor_fn to before its first use.

    System-2.2.0 under cygwin

    make pthreads_check fails:
    make[6]: Entering directory `/cygdrive/c/cxh/src/tmp/systemc-2.2.0/objdir/examples/sysc/fft/fft_flpt'
    g++ -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT=""  -I. -I../../../../../examples/sysc/fft/fft_flpt -I/cygdrive/c/cxh/src/tmp/systemc-2.2.0/include    -Wall -DSC_INCLUDE_FX -DSC_USE_PTHREADS -c -o fft.o `test -f 'fft.cpp' || echo '../../../../../examples/sysc/fft/fft_flpt/'`fft.cpp
    In file included from fft.cpp:37:
    /cygdrive/c/cxh/src/tmp/systemc-2.2.0/include/systemc.h:175: error: `std::wctomb' has not been declared
    /cygdrive/c/cxh/src/tmp/systemc-2.2.0/include/systemc.h:177: error: `std::wcstombs' has not been declared
    
    Hiren Patel came up with a patch for Systemc-2.2.0.

    To use the patch, download and untar systemc-2.2.0.tgz

    wget http://embedded.eecs.berkeley.edu/metropolis/forum/26/systemc-2.2.0-cygwin-3.4.4.patch
    tar -zxf systemc-2.2.0.tgz
    patch -p0 systemc-2.2.0-cygwin-3.4.4.patch
    
    Then install SystemC as usual:
    cd systemc-2.2.0
    mkdir objdir
    cd objdir
    ../configure --prefix=/cygdrive/c/src/systemc
    make pthreads
    make pthreads install
    make pthreads_check
    
    • metropolis-1.1.2.src.tar.gz · View · Download · 3868 kbytes
    • metropolis-1-1-2-src.zip · View · Download · 4748 kbytes
    • systemc-2.2.0-cygwin-3.4.4.patch · View · Download · 1 kbytes

    Metropolis-1.1.3

    June 4, 2017: Metropolis 1.1.4 is available.


    This page is for Metropolis 1.1.3 January 16, 2008: Metropolis 1.1.3 is available for download

    metropolis-1.1.3.tar.gz is the release in a gzip'd tar file for installation on Linux systems.

    metropoils-1.1.3.zip is the same release in Windows format, for installation under Cygwin.

    copyright.txt: the license file for Metropolis. Metropolis itself has a BSD license, but Metropolis uses software with other licenses.

    Summary of changes between Metropolis 1.1.2 and 1.1.3:

    • examples/simpleMapping/mapping_tutorial.pdf was corrupt

    systemc-2.1.v1 under cygwin notes

    If you are building systemc-2.1.v1 under gcc-4.1.1 under Cygwin, you might see:
    ../../../../src/sysc/kernel/sc_process_int.cpp:441: error: 'sc_thread_cor_fn' was not declared in this scope
    
    The solution is to edit systemc-2.1.v1/src/sysc/kernel/sc_process_int.cpp and move the definition of sc_thread_cor_fn to before its first use.

    System-2.2.0 under cygwin

    make pthreads_check fails:
    make[6]: Entering directory `/cygdrive/c/cxh/src/tmp/systemc-2.2.0/objdir/examples/sysc/fft/fft_flpt'
    g++ -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT=""  -I. -I../../../../../examples/sysc/fft/fft_flpt -I/cygdrive/c/cxh/src/tmp/systemc-2.2.0/include    -Wall -DSC_INCLUDE_FX -DSC_USE_PTHREADS -c -o fft.o `test -f 'fft.cpp' || echo '../../../../../examples/sysc/fft/fft_flpt/'`fft.cpp
    In file included from fft.cpp:37:
    /cygdrive/c/cxh/src/tmp/systemc-2.2.0/include/systemc.h:175: error: `std::wctomb' has not been declared
    /cygdrive/c/cxh/src/tmp/systemc-2.2.0/include/systemc.h:177: error: `std::wcstombs' has not been declared
    
    Hiren Patel came up with a patch for Systemc-2.2.0.

    To use the patch, download and untar systemc-2.2.0.tgz

    wget http://embedded.eecs.berkeley.edu/metropolis/forum/26/systemc-2.2.0-cygwin-3.4.4.patch
    tar -zxf systemc-2.2.0.tgz
    patch -p0 systemc-2.2.0-cygwin-3.4.4.patch
    
    Then install SystemC as usual:
    cd systemc-2.2.0
    mkdir objdir
    cd objdir
    ../configure --prefix=/cygdrive/c/src/systemc
    make pthreads
    make pthreads install
    make pthreads_check
    

    Metropolis-1.1.4
    Metropolis-1.1.4 was released on June 4, 2017.

    With help from Purva Tendulkar, this release supports SystemC-2.3.1.

    The documentation was not significantly updated.

    The sources were checked in to GitHub, see https://github.com/terraswarm/metropolis

    Note that src/util/locgen fails to compile:

    g++ -O2 -g -Wno-deprecated    -g -Wall -Wno-deprecated -o fir_violation.check fir_violation.cc
    fir_violation.cc:37:10: fatal error: 'deque.h' file not found
    #include 
             ^
    1 error generated.
    
    • metropolis-1.1.4.src.tar.gz · View · Download · 3854 kbytes
    You are not logged in 
    Contact 
    ©2002-2017 U.C. Regents