The Simics User Guide explains how a Simics configuration is described in terms of objects and attributes . Each device is represented by an object whose attributes correspond to the state of the device.
Most Simics modules work the same way: they define classes describing how an object looks like and registering its attributes and interfaces. Objects can be instantiated from these classes and connected to the rest of the configuration.
Note that the module and class concepts are not linked, so a module does not necessarily define any class and it may also define more than one.
To learn more about classes and objects in DML, refer to section 5.1. For C and Python, refer to sections 6.1 to 6.3.