README revision 13373
111986Sandreas.sandberg@arm.comThis directory holds several examples which show how to build and run systemc
211986Sandreas.sandberg@arm.comcode and models within gem5. To build a particular example, set the EXTRAS
311986Sandreas.sandberg@arm.comvariable when running scons so that it gets picked up as part of gem5's build.
411986Sandreas.sandberg@arm.comFor example:
511986Sandreas.sandberg@arm.com
611986Sandreas.sandberg@arm.comscons build/ARM/gem5.opt \
711986Sandreas.sandberg@arm.com          EXTRAS=util/systemc/systemc_within_gem5/systemc_sc_main
811986Sandreas.sandberg@arm.com
911986Sandreas.sandberg@arm.comThen when running gem5, you can use the config.py in the corresponding
1011986Sandreas.sandberg@arm.comdirectory.
1111986Sandreas.sandberg@arm.com
1211986Sandreas.sandberg@arm.combuild/ARM/gem5.opt util/systemc/systemc_within_gem5/systemc_sc_main/config.py \
1311986Sandreas.sandberg@arm.com        --word Hello --word World
1411986Sandreas.sandberg@arm.com
1511986Sandreas.sandberg@arm.com
1611986Sandreas.sandberg@arm.comTo rebuild gem5 excluding the example code, be sure to clear the EXTRAS
1711986Sandreas.sandberg@arm.comvariable:
1811986Sandreas.sandberg@arm.com
1911986Sandreas.sandberg@arm.comscons build/ARM/gem5.opt EXTRAS=
2011986Sandreas.sandberg@arm.com
2111986Sandreas.sandberg@arm.comWhen building your own models, you don't have to use the EXTRAS mechanism and
2211986Sandreas.sandberg@arm.comcan instead put your source files alongside regular gem5 sources.
2311986Sandreas.sandberg@arm.com
2411986Sandreas.sandberg@arm.com
2511986Sandreas.sandberg@arm.comExisting examples:
2611986Sandreas.sandberg@arm.com
2711986Sandreas.sandberg@arm.comsystemc_sc_main - Run code based on an sc_main function.
2811986Sandreas.sandberg@arm.comsystemc_simple_object - Build systemc objects into a gem5 object hierarchy.
2911986Sandreas.sandberg@arm.com
3011986Sandreas.sandberg@arm.com
3111986Sandreas.sandberg@arm.comNote that these directories all have a systemc_ prefix so that when EXTRAS
3211986Sandreas.sandberg@arm.compastes them into the build directory, they won't conflict with any existing
3311986Sandreas.sandberg@arm.comtop level directory.
3411986Sandreas.sandberg@arm.com