5.20.1 Hierarchical instance names and instance classes

Every entity in a simulation is uniquely identified by a hierarchical instance name string. Hierarchy levels are separated by dots.

The first hierarchy level in the string defines the instance class that this instance belongs to. It can be one of the following:

component

An entity that primarily is controlled and observed, typically:

  • Components that are part of the component tree of the system and that model a specific piece of hardware, for example a core, memory, or peripheral.
  • In-process plug-ins or out-of-process clients that model a component.

Following component. is the name of the top-level component of the component tree, or root if it has no name. This is followed by the instance names of all components in the hierarchical path up to and including the instance name that is being registered, for example component.cluster0.cpu0.

client

An entity that primarily observes other instances or controls the simulation. Typically:

  • Debuggers.
  • Trace consumers.
  • In-process plug-ins that primarily observe and control. In other words, DSOs that are loaded using the FM_PLUGINS environment variable, or built-in plug-ins that are statically linked into the simulator executable.
  • Out-of-process clients, in other words, anything that connects to the IrisTcpServer.

Following client. is the instance name of the client, which might or might not be hierarchical, for example client.plugin.ListInstances.

framework

An entity that is part of the simulation framework. The following instance names are defined for this instance class:

  • framework.GlobalInstance.
  • framework.SimulationEngine.

Note:

  • All instances can discover and communicate with all other instances. The instance class only gives an indication of the role of the instance to other instances. It does not limit what the instance can do, for example only producing or only consuming events.
  • Physical entities, for example DSO plug-ins, can register multiple instances, for example one or more components, and also a client, if the entity contains one.
Non-ConfidentialPDF file icon PDF version101196_0100_03_en
Copyright © 2018, 2019 Arm Limited or its affiliates. All rights reserved.