5.8.2 SystemC Export limitation on calling wait in the middle of a transaction

ARM does not guarantee that when calling wait() in the middle of a transaction for externally triggered signals, signals/transactions come from within the SC_THREAD context of a core.

When an external event triggers a signal, such as the WFI signal in the Cortex-A9, calling wait() in the behavior implementation of a SystemC peripheral responding to this signal causes a runtime error. When the SystemC peripheral must really issue a wait() in reaction to a signal that is changing, buffer the signal in the bridge between the EVS and SystemC. On the next activation of the bridge, set the signal with the thread context of the EVS.

Note

The EVS runs in a temporally decoupled mode using a time quantum. Transaction Level Modeling (TLM) 2.0 targets using the Loosely-Timed coding style do not call wait().
Non-ConfidentialPDF file icon PDF versionARM DUI0370S
Copyright © 2007-2014 ARM. All rights reserved.