c9cf3077e28d358eb95928ee228caea511b012eb
This simplifies the SPARC FS workload significantly, and removes assumptions about what ROMs exist, where they go, etc. It removes other components from the loop which don't have anything to contribute as far as setting up the ROMs. One side effect of this is that there isn't specialized support for adding PC based events which would fire in the ROMs, but that was never done and the files that were being used were flat binary blobs with no symbols in the first place. This also necessitates building a unified image which goes into the single 8MB ROM that is located at address 0xfff0000000. That is simply done with the following commands: dd if=/dev/zero of=t1000_rom.bin bs=1024 count=8192 dd if=reset_new.bin of=t1000_rom.bin dd if=q_new.bin of=t1000_rom.bin bs=1024 seek=64 dd if=openboot_new.bin of=t1000_rom.bin bs=1024 seek=512 This results in an 8MB blob which can be loaded verbatim into the ROM. Alternatively, and with some extra effort, an ELF file could be constructed which had each of these components as segments, offset to the right location in the ELF header. That would be slightly more work to set up, but wouldn't waste space on regions of the image that are all zeroes. Change-Id: Id4e08f4e047e7bd36a416c197a36be841eba4a15 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27268 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com> Tested-by: Gem5 Cloud Project GCB service account <345032938727@cloudbuild.gserviceaccount.com>
This is the gem5 simulator. The main website can be found at http://www.gem5.org A good starting point is http://www.gem5.org/about, and for more information about building the simulator and getting started please see http://www.gem5.org/documentation and http://www.gem5.org/documentation/learning_gem5/introduction. To build gem5, you will need the following software: g++ or clang, Python (gem5 links in the Python interpreter), SCons, SWIG, zlib, m4, and lastly protobuf if you want trace capture and playback support. Please see http://www.gem5.org/documentation/general_docs/building for more details concerning the minimum versions of the aforementioned tools. Once you have all dependencies resolved, type 'scons build/<ARCH>/gem5.opt' where ARCH is one of ARM, NULL, MIPS, POWER, SPARC, or X86. This will build an optimized version of the gem5 binary (gem5.opt) for the the specified architecture. See http://www.gem5.org/documentation/general_docs/building for more details and options. The basic source release includes these subdirectories: - configs: example simulation configuration scripts - ext: less-common external packages needed to build gem5 - src: source code of the gem5 simulator - system: source for some optional system software for simulated systems - tests: regression tests - util: useful utility programs and files To run full-system simulations, you will need compiled system firmware (console and PALcode for Alpha), kernel binaries and one or more disk images. If you have questions, please send mail to gem5-users@gem5.org Enjoy using gem5 and please share your modifications and extensions.
Description