All,
in the current norm, instances of the class sc_event do not have any
name "attributes" and cannot
be retrieved in the SystemC object hierarchy in contrary to many other
SystemC classes (sc_module,
sc_port/export, primitive channels, etc). This has several negative
consequences:
- From a user code, introspection on sc_event objects included inside
a module (for instance) cannot be performed,
whereas SystemC already provides useful framework for such introspection
on other objects.
- When providing specific implementations of SystemC targeted toward
"tracing" what happened during
the simulation (events occurrence, processes activations , etc.), there
is no name to be associated to the event
being traced.
- Previous item from the user point of view: any tool/implementation
that wants to provide such enhancement needs that the user pass the
event name to a new sc_event constructor that is not in the norm.
Therefore, the modified user code does not compile
with other SystemC implementations.
Our proposal on this topic is simple: to have sc_event inherits from
sc_object, and add a constructor
with name to the existing default constructor (as is done with other
SystemC classes deriving from sc_object).
This would greatly benefit the SystemC ecosystem: it would both allow
users to leverage SystemC
introspection capabilities and CAD vendors to provide added value on top
of the same capabilities
while complying to the norm.
Outside our own internal tools, we have seen at least one major CAD
vendor SystemC implementation proposing such enhancement.
Regards,
Jerome
ps: we can obviously provide implementation of this.
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Mar 10 02:20:37 2010
This archive was generated by hypermail 2.1.8 : Wed Mar 10 2010 - 02:20:41 PST