41 sc_core::sc_prim_channel(name), _changeStamp(~0
ULL),
42 _gem5WriterPort(nullptr)
93 std::ostringstream
ss;
94 ss <<
"\n signal " <<
"`" << sig->
name() <<
"' (" << sig->
kind() <<
")";
95 ss <<
"\n first driver `" << first->
name() <<
"' (" <<
97 ss <<
"\n second driver `" << second->
name() <<
"' (" <<
98 second->
kind() <<
")";
100 ss <<
"\n conflicting write in delta cycle " <<
110 sig(_sig), firstPort(nullptr), proc(nullptr), writeStamp(~0
ULL)
115 std::string iface_type_name, std::string out_name)
117 if (iface_type_name == out_name) {
119 reportSignalError(sig, firstPort, &port);
131 if (proc && proc != p)
132 reportSignalError(sig, proc, p);
138 sig(_sig), proc(nullptr), writeStamp(~0
ULL)
143 std::string iface_type_name, std::string out_name)
155 if (writeStamp == stamp && proc && proc != p)
156 reportSignalError(sig, proc, p, writeStamp == stamp);
const sc_core::sc_event & defaultEvent() const
uint64_t getChangeStamp()
const std::string & name()
const char * name() const
InternalScEvent _posedgeEvent
const sc_core::sc_event & valueChangedEvent() const
InternalScEvent _valueChangedEvent
virtual const char * kind() const
virtual const char * kind() const
#define ULL(N)
uint64_t constant
const sc_time SC_ZERO_TIME
InternalScEvent _negedgeEvent
std::vector< sc_gem5::Reset * > _resets
#define SC_REPORT_ERROR(msg_type, msg)
ScSignalBaseBinary(const char *_name)
const char SC_ID_MORE_THAN_ONE_SIGNAL_DRIVER_[]
ScSignalBase(const char *_name)
sc_dt::uint64 sc_delta_count()
const sc_core::sc_event & negedgeEvent() const
const sc_core::sc_event & posedgeEvent() const