Hello,

I am trying to create a fault which will stop the simulation. I tried calling ThreadContext::halt from within FaultBase::invoke (or rather a subclass of FaultBase). This successfully stops simulation of the CPU, but then it endlessly simulates memory refreshes.

So how should I properly shut down the simulated system so that the gem5.opt process finishes? Do I have to do something in addition to calling ThreadContext::halt? Is ThreadContext::halt the wrong tool for the job? Or perhaps do I have something else set up wrong?

For context, I implemented most of the NIOS II ISA in gem5, and I am running an executable which is designed to run on bare metal. There is a particular 'magic' instruction which signals that the executable is finished, and I want to stop the simulation sometime after committing such an instruction.

Thanks is advance,
David

Attachment: OpenPGP_0xD28851A6445A0247.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to