Giter Site home page Giter Site logo

benthealchemist / sunflower-simulator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from physical-computation/sunflower-embedded-system-emulator

0.0 1.0 0.0 262.2 MB

Sunflower Full-System Hardware Emulator and Physical System Simulator for Sensor-Driven Systems.

Home Page: http://sflr.org

License: BSD 3-Clause "New" or "Revised" License

Makefile 7.18% Objective-C 0.38% C 74.43% C++ 3.05% Redcode 0.01% Python 0.09% SRecode Template 1.26% Shell 2.23% Coq 0.14% Yacc 1.07% TeX 0.77% Perl 6 0.01% HTML 3.67% Perl 0.13% CSS 0.01% Assembly 0.61% M 0.21% Roff 4.65% SAS 0.07% Smalltalk 0.03%

sunflower-simulator's Introduction

Sunflower Simulator Architecture

Installation Instructions

Step 1

Read the manual (sunflowersim-manual-and-cover.pdf) if you can. Building the simulator depends on gawk, so install it. Building the gcc cross-compilers depends on gcc (you will likely run into issues trying to build the cross-compiler using clang), libmpc, mpfr, and gmp, so make sure you have them installed or the cross-compiler build will fail.

Step 2

Edit conf/setup.conf and set $SUNFLOWERROOT, $HOST, TOOLCC, and TOOLCXX appropriately. You will need to set your $OSTYPE environment variable in your shell if it is not already set. Examples include darwin for MacOSX, and the eponymous OpenBSD, linux, and solaris. You will also need to set MACHTYPE. A common correct value (depends on your host platform) is i386.

Step 3

cd to sim/ and type make. The build should work automatically on MacOS, Linux, and Solaris. This builds the console version of the simulator.

Step 4

  • Add $SUNFLOWERROOT/tools/bin to your path (substitute $SUNFLOWERROOT as appropriate)

  • To build the cross-compiler, first populate tools/source with the appropriate distributions. There is a script in tools/source which will automate this for you by downloading the files using wget, and then uncompressing. You can also manually download the above into tools/source. You can delete or overwrite the existing empty stub directories.

  • Due to some bugs in the binutils documentation texinfo files, which are caught by newer versions of makeinfo, you must make sure that your version of makeinfo is older than 5.0 (or you can temporarily make makeinfo unexecutable so that the build skips generating the man pages). Next, type 'make cross' (see NOTE below!) from the root of the installation (the directory containing this README file). That will start the process of configuring the aforementioned distributions to build the cross-compiler suite for the simulator.

  • On Mac OS 10.5 and later, make cross CFLAGS=-Os will prevent the build of the cross-compiler from generating .dylib debugging symbol files, which currently causes many problems with autoconf related tools.

  • If the cross compiler build fails due, e.g., to difference in behavior between the perl or makeinfo expected by the GCC build versus what is on your system, you might be able to recover by going into tools/source/gcc-4.2.4/objdir, running make install, then going to tools/ and completing the cross compilation by running make gcc-post; make newlib

If you use Sunflower in your research, please cite it as:

Phillip Stanley-Marbell and Michael Hsiao. “Fast, Flexible, Cycle-accurate Energy Estimation”. In Proceedings of the 2001 International Symposium on Low Power Electronics and Design, ISLPED ’01. Huntington Beach, California, USA: ACM, pp. 141–146. ISBN: 1-58113-371-5. doi: 10.1145/ 383082.383120.

BibTeX:

@inproceedings{Stanley-Marbell:2001:FFC,
 author = {Phillip Stanley-Marbell and Michael Hsiao},
 title = {Fast, Flexible, Cycle-accurate Energy Estimation},
 booktitle = {Proceedings of the 2001 International Symposium 
              on Low Power Electronics and Design},
 series = {ISLPED '01},
 year = {2001},
 isbn = {1-58113-371-5},
 location = {Huntington Beach, California, USA},
 pages = {141--146},
 numpages = {6},
 publisher = {ACM},
 address = {New York, NY, USA},
}

Phillip Stanley-Marbell and Diana Marculescu. “Sunflower: Full-system, Embedded, Microarchitecture Evaluation”. In Proceedings of the 2nd International Conference on High Performance Embedded Architectures and Compilers. HiPEAC’07. Ghent, Belgium: Springer-Verlag, pp. 168–182. ISBN: 978-3-540-69337-6.

BibTeX:

@inproceedings{Stanley-Marbell:2007:SFE,
 author = {Phillip Stanley-Marbell and Diana Marculescu},
 title = {Sunflower: Full-system, Embedded, Microarchitecture Evaluation},
 booktitle = {Proceedings of the 2nd International Conference on 
              High Performance Embedded Architectures and Compilers},
 series = {HiPEAC'07},
 year = {2007},
 isbn = {978-3-540-69337-6},
 location = {Ghent, Belgium},
 pages = {168--182},
 numpages = {15},
 publisher = {Springer-Verlag},
 address = {Berlin, Heidelberg},
}

sunflower-simulator's People

Contributors

phillipstanleymarbell avatar z-gu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.