2.5 Concurrency Modes 2.7 Threaded Device Model
API Reference Manual  /  2 Threading Model  / 

2.6 Standard Device Model

By default, devices in Simics use the Standard Device Model. Such models run in the Sim_Concurrency_Mode_Serial concurrency mode.

Using the Standard Device Model amounts to being able to assume at least Cell Context when interface methods are invoked. Certain things, like object initialization, run in Global Context, which is the most permissive context.

2.6.1 Properties

Cell Context has the following properties:

In Cell Context, everything within the cell appears to be completely serialized. Under to hood, this may not be the case, and CPUs might be running concurrently. But when a CPU is accessed from a device, it is stopped until the device access is complete. For instance, a device will always see a stable cycle count when it repeatedly queries its associated clock during a register access.
2.5 Concurrency Modes 2.7 Threaded Device Model