Hi Jonathan,
You can put the bridge wherever you would like. For MMIO things, you can
put it after the point of coherence, which is where we usually put the "I/O
crossbar."
You can poke around in configs/examples and util/systemc for some examples.
Cheers,
Jason
On Wed, Apr 26, 2023 at 4:30 PM
Great, thanks. I’m looking to have this shuttle memory requests to my external
cache and memory model (in SystemC) so it’d be before the point of coherence.
In a normal membus system, that’d be before the membus right? Or perhaps one of
the ports of the membus.
I’ll take a look at the
Hi Jonathan,
Absolutely! You can set up a "bridge" which will take a subset of addresses
and route to a different gem5 port. If you can convert from the port
interface to the AXI, then it should "just work". Note that there are also
already bindings to SystemC/TLM in gem5 as well that could serve
I’m looking to integrate a Gem5 full system model with some of our internal IP.
The IP and memory (caches) will be memory mapped. So I’d like it if the Gem5
full system could handle some parts of the system (file IO, system calls) but
route requests to certain memory address regions to an
Thanks!
Would you have an example of how to instantiate this bridge? Also, I imagine
this bridge is right after the CPU I and D side ports and before any membus
that Gem5 has internally right?
From: Jason Lowe-Power
Date: Wednesday, April 26, 2023 at 4:27 PM
To: The gem5 Users mailing list
Hi:
I am currently trying to boot ubuntu-18.04-arm64-docker.img using QEMU. The
image file was extracted from aarch-system-20220707.tar.bz2, which I downloaded
from https://www.gem5.org/documentation/general_docs/fullsystem/guest_binaries.
I compiled my own kernel using the following
Hi,
I am not surprised. The disk image contains an init script with m5 operations
(probably m5 readfile).
m5 is a gem5 specific pseudo-instruction and does not get recognised by QEMU.
You should either amend the init file within the disk or point to a different
init executable from QEMU