Change-Id: I2cb0c95773b8c6d15ffdffffaafbe3133a392a54 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59549 Reviewed-by: Jason Lowe-Power <power.jg@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com> Maintainer: Jason Lowe-Power <power.jg@gmail.com>
35 lines
1.1 KiB
Plaintext
35 lines
1.1 KiB
Plaintext
This directory holds several examples which show how to build and run systemc
|
|
code and models within gem5. To build a particular example, set the EXTRAS
|
|
variable when running scons so that it gets picked up as part of gem5's build.
|
|
For example:
|
|
|
|
scons build/ARM/gem5.opt \
|
|
EXTRAS=util/systemc/systemc_within_gem5/systemc_sc_main
|
|
|
|
Then when running gem5, you can use the config.py in the corresponding
|
|
directory.
|
|
|
|
build/ARM/gem5.opt util/systemc/systemc_within_gem5/systemc_sc_main/config.py \
|
|
--word Hello --word World
|
|
|
|
|
|
To rebuild gem5 excluding the example code, be sure to clear the EXTRAS
|
|
variable:
|
|
|
|
scons build/ARM/gem5.opt EXTRAS=
|
|
|
|
When building your own models, you don't have to use the EXTRAS mechanism and
|
|
can instead put your source files alongside regular gem5 sources.
|
|
|
|
|
|
Existing examples:
|
|
|
|
systemc_sc_main - Run code based on an sc_main function.
|
|
systemc_simple_object - Build systemc objects into a gem5 object hierarchy.
|
|
systemc_tlm - Simple LT-Based TLM system
|
|
|
|
|
|
Note that these directories all have a systemc_ prefix so that when EXTRAS
|
|
pastes them into the build directory, they won't conflict with any existing
|
|
top level directory.
|