|
scc
2024.06
SystemC components library
|
configurable tracer for automatic port and signal tracing More...
#include <configurable_tracer.h>


Public Member Functions | |
| configurable_tracer (std::string const &&name, bool enable_tx=true, bool enable_vcd=true, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &name, bool enable_tx=true, bool enable_vcd=true, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &&name, file_type type, bool enable_vcd=true, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &name, file_type type, bool enable_vcd=true, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &&name, file_type tx_type, file_type sig_type, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &name, file_type tx_type, file_type sig_type, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &&name, file_type type, sc_core::sc_trace_file *tf=nullptr, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| configurable_tracer (std::string const &name, file_type type, sc_core::sc_trace_file *tf=nullptr, bool default_enable=false, sc_core::sc_object *top=nullptr) | |
| ~configurable_tracer () | |
| void | add_control () |
Public Member Functions inherited from scc::tracer | |
| tracer (std::string const &&name, file_type tx_type, file_type sig_type, sc_core::sc_object *top=nullptr) | |
| tracer (std::string const &name, file_type tx_type=ENABLE, file_type sig_type=ENABLE, sc_core::sc_object *top=nullptr) | |
| tracer (std::string const &&name, file_type type, bool enable=true, sc_core::sc_object *top=nullptr) | |
| tracer (std::string const &name, file_type type, bool enable=true, sc_core::sc_object *top=nullptr) | |
| tracer (std::string const &&name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top=nullptr) | |
| tracer (std::string const &name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top=nullptr) | |
| virtual | ~tracer () override |
| the destructor | |
Public Member Functions inherited from scc::tracer_base | |
| tracer_base (const sc_core::sc_module_name &nm) | |
| named constructor More... | |
| tracer_base (const sc_core::sc_module_name &nm, sc_core::sc_trace_file *tf, bool owned=true) | |
| named constructor with trace file More... | |
| ~tracer_base () | |
| destructor | |
| void | set_trace_types (trace_types t) |
| set the types to trace More... | |
| const sc_core::sc_trace_file * | get_trace_file () const |
| get the tracefile used by this tracer More... | |
| sc_core::sc_trace_file * | get_trace_file () |
| void | set_trace_file (sc_core::sc_trace_file *trf) |
| set the trace file of this tracer More... | |
Protected Member Functions | |
| void | descend (const sc_core::sc_object *, bool trace_all=false) override |
| depth-first walk thru the design hierarchy and trace signals resp. call trace() function | |
| bool | get_trace_enabled (const sc_core::sc_object *, bool=false) |
| check for existence of 'enableTracing' attribute and return value of default otherwise | |
| void | augment_object_hierarchical (sc_core::sc_object *) |
| add the 'enableTracing' attribute to sc_module | |
| void | end_of_elaboration () override |
Protected Member Functions inherited from scc::tracer | |
| tracer (std::string const &&name, file_type tx_type, file_type sig_type, sc_core::sc_object *top, sc_core::sc_module_name const &nm) | |
| tracer (std::string const &&name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top, sc_core::sc_module_name const &nm) | |
| void | end_of_elaboration () override |
| void | end_of_simulation () override |
Protected Attributes | |
| std::vector< cci::cci_param_untyped * > | params |
| array of created cci parameter | |
| bool | control_added {false} |
Protected Attributes inherited from scc::tracer | |
| scv_tr::scv_tr_db * | txdb {nullptr} |
| lwtr::tx_db * | lwtr_db {nullptr} |
| cci::cci_broker_handle | cci_broker |
| the cci broker | |
Protected Attributes inherited from scc::tracer_base | |
| bool | default_trace_enable {true} |
| the default for tracing if no attribute is configured | |
| sc_core::sc_trace_file * | trf {nullptr} |
| trace_types | types_to_trace {trace_types::ALL} |
Additional Inherited Members | |
Public Types inherited from scc::tracer | |
| enum | file_type { NONE , ENABLE , TEXT , COMPRESSED , SQLITE , FTR , CFTR , LWFTR , LWCFTR , CUSTOM , SC_VCD = TEXT , PULL_VCD = COMPRESSED , PUSH_VCD = SQLITE , FST } |
| defines the transaction trace output type More... | |
Public Attributes inherited from scc::tracer | |
| cci::cci_param< unsigned > | tx_trace_type |
| cci::cci_param< unsigned > | sig_trace_type |
| cci::cci_param< bool > | close_db_in_eos |
Static Protected Member Functions inherited from scc::tracer_base | |
| static std::string | get_name () |
| static void | try_trace (sc_core::sc_trace_file *trace_file, const sc_core::sc_object *object, trace_types t) |
configurable tracer for automatic port and signal tracing
This class traverses the SystemC object hierarchy and registers all signals and ports found with the tracing infrastructure. Using a sc_core::sc_attribute or a CCI param named "enableTracing" this can be switch on or off on a per module basis
Definition at line 35 of file configurable_tracer.h.
| configurable_tracer::configurable_tracer | ( | std::string const && | name, |
| bool | enable_tx = true, |
||
| bool | enable_vcd = true, |
||
| bool | default_enable = false, |
||
| sc_core::sc_object * | top = nullptr |
||
| ) |
constructs a tracer object
| name | basename of the trace file(s) |
| enable_tx | enables transaction tracing |
| enable_vcd | enable VCD (signal based) tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 26 of file configurable_tracer.cpp.
|
inline |
constructs a tracer object
| name | basename of the trace file(s) |
| enable_tx | enables transaction tracing |
| enable_vcd | enable VCD (signal based) tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 55 of file configurable_tracer.h.
| configurable_tracer::configurable_tracer | ( | std::string const && | name, |
| file_type | type, | ||
| bool | enable_vcd = true, |
||
| bool | default_enable = false, |
||
| sc_core::sc_object * | top = nullptr |
||
| ) |
constructs a tracer object
| name | basename of the trace file(s) |
| type | type of trace file for transactions |
| enable | enable VCD (signal based) tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 32 of file configurable_tracer.cpp.
|
inline |
constructs a tracer object
| name | basename of the trace file(s) |
| type | type of trace file for transactions |
| enable_vcd | enable VCD (signal based) tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 76 of file configurable_tracer.h.
| configurable_tracer::configurable_tracer | ( | std::string const && | name, |
| file_type | tx_type, | ||
| file_type | sig_type, | ||
| bool | default_enable = false, |
||
| sc_core::sc_object * | top = nullptr |
||
| ) |
constructs a tracer object
| name | basename of the trace file(s) |
| tx_type | type of trace file for transactions |
| sig_type | type of trace file for signals |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 38 of file configurable_tracer.cpp.
| configurable_tracer::configurable_tracer | ( | std::string const && | name, |
| file_type | type, | ||
| sc_core::sc_trace_file * | tf = nullptr, |
||
| bool | default_enable = false, |
||
| sc_core::sc_object * | top = nullptr |
||
| ) |
constructs a tracer object
| name | basename of the trace file(s) |
| type | type of trace file for transactions |
| tf | the trace file to use for signal and POD tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 44 of file configurable_tracer.cpp.
|
inline |
constructs a tracer object
| name | basename of the trace file(s) |
| type | type of trace file for transactions |
| tf | the trace file to use for signal and POD tracing |
| default_enable | value of parameter enableTracing if not defined by module or CCIs |
Definition at line 110 of file configurable_tracer.h.
| scc::configurable_tracer::~configurable_tracer | ( | ) |
destructor
Definition at line 50 of file configurable_tracer.cpp.
|
inline |
adds default trace control attribute of name 'enableTracing' to each sc_module in a design hierarchy
Definition at line 120 of file configurable_tracer.h.