gem5 v24.1.0.1
|
#include <sc_clock.hh>
Public Member Functions | |
sc_clock () | |
sc_clock (const char *name) | |
sc_clock (const char *name, const sc_time &period, double duty_cycle=0.5, const sc_time &start_time=SC_ZERO_TIME, bool posedge_first=true) | |
sc_clock (const char *name, double period_v, sc_time_unit period_tu, double duty_cycle=0.5) | |
sc_clock (const char *name, double period_v, sc_time_unit period_tu, double duty_cycle, double start_time_v, sc_time_unit start_time_tu, bool posedge_first=true) | |
sc_clock (const char *name, double period, double duty_cycle=0.5, double start_time=0.0, bool posedge_first=true) | |
virtual | ~sc_clock () |
virtual void | write (const bool &) |
const sc_time & | period () const |
double | duty_cycle () const |
const sc_time & | start_time () const |
bool | posedge_first () const |
virtual const char * | kind () const |
![]() | |
sc_signal () | |
sc_signal (const char *name) | |
sc_signal (const char *name, const bool &initial_value) | |
virtual | ~sc_signal () |
sc_signal< bool, SC_ONE_WRITER > & | operator= (const bool &t) |
sc_signal< bool, SC_ONE_WRITER > & | operator= (const sc_signal< bool, SC_ONE_WRITER > &s) |
![]() | |
ScSignalBaseT (const char *_name) | |
ScSignalBaseT (const char *_name, const T &initial_value) | |
virtual | ~ScSignalBaseT () |
virtual void | register_port (sc_core::sc_port_base &port, const char *iface_type_name) |
virtual const T & | read () const |
operator const T & () const | |
virtual void | write (const T &t) |
virtual const sc_core::sc_event & | default_event () const |
virtual const sc_core::sc_event & | value_changed_event () const |
virtual void | print (std::ostream &os=std::cout) const |
virtual void | dump (std::ostream &os=std::cout) const |
virtual bool | event () const |
virtual sc_core::sc_writer_policy | get_writer_policy () const |
![]() | |
const char * | name () const |
const char * | basename () const |
virtual const std::vector< sc_object * > & | get_child_objects () const |
virtual const std::vector< sc_event * > & | get_child_events () const |
sc_object * | get_parent_object () const |
bool | add_attribute (sc_attr_base &) |
sc_attr_base * | get_attribute (const std::string &) |
sc_attr_base * | remove_attribute (const std::string &) |
void | remove_all_attributes () |
int | num_attributes () const |
sc_attr_cltn & | attr_cltn () |
const sc_attr_cltn & | attr_cltn () const |
sc_simcontext * | simcontext () const |
![]() | |
virtual | ~sc_interface () |
Static Public Member Functions | |
static const sc_time & | time_stamp () |
Protected Member Functions | |
virtual void | before_end_of_elaboration () |
![]() | |
virtual void | update () |
![]() | |
ScSignalBasePicker (const char *_name) | |
![]() | |
ScSignalBase (const char *_name) | |
virtual | ~ScSignalBase () |
const sc_core::sc_event & | defaultEvent () const |
const sc_core::sc_event & | valueChangedEvent () const |
bool | event () const |
void | _signalChange () |
![]() | |
sc_prim_channel () | |
sc_prim_channel (const char *) | |
virtual | ~sc_prim_channel () |
void | request_update () |
void | async_request_update () |
void | next_trigger () |
void | next_trigger (const sc_event &) |
void | next_trigger (const sc_event_or_list &) |
void | next_trigger (const sc_event_and_list &) |
void | next_trigger (const sc_time &) |
void | next_trigger (double, sc_time_unit) |
void | next_trigger (const sc_time &, const sc_event &) |
void | next_trigger (double, sc_time_unit, const sc_event &) |
void | next_trigger (const sc_time &, const sc_event_or_list &) |
void | next_trigger (double, sc_time_unit, const sc_event_or_list &) |
void | next_trigger (const sc_time &, const sc_event_and_list &) |
void | next_trigger (double, sc_time_unit, const sc_event_and_list &) |
bool | timed_out () |
void | wait () |
void | wait (int) |
void | wait (const sc_event &) |
void | wait (const sc_event_or_list &) |
void | wait (const sc_event_and_list &) |
void | wait (const sc_time &) |
void | wait (double, sc_time_unit) |
void | wait (const sc_time &, const sc_event &) |
void | wait (double, sc_time_unit, const sc_event &) |
void | wait (const sc_time &, const sc_event_or_list &) |
void | wait (double, sc_time_unit, const sc_event_or_list &) |
void | wait (const sc_time &, const sc_event_and_list &) |
void | wait (double, sc_time_unit, const sc_event_and_list &) |
virtual void | end_of_elaboration () |
virtual void | start_of_simulation () |
virtual void | end_of_simulation () |
![]() | |
sc_object () | |
sc_object (const char *) | |
sc_object (const sc_object &) | |
sc_object & | operator= (const sc_object &) |
virtual | ~sc_object () |
![]() | |
sc_signal_inout_if () | |
![]() | |
sc_signal_in_if () | |
![]() | |
sc_interface () | |
![]() | |
sc_signal_write_if () | |
Private Member Functions | |
sc_clock (const sc_clock &) | |
sc_clock & | operator= (const sc_clock &) |
void | tickUp () |
void | tickDown () |
Private Attributes | |
sc_time | _period |
double | _dutyCycle |
sc_time | _startTime |
bool | _posedgeFirst |
::sc_gem5::ClockTick * | _gem5UpEdge |
::sc_gem5::ClockTick * | _gem5DownEdge |
Friends | |
class | ::sc_gem5::ClockTick |
Additional Inherited Members | |
![]() | |
T | m_cur_val |
T | m_new_val |
WriteChecker< WRITER_POLICY > | _checker |
![]() | |
InternalScEvent | _valueChangedEvent |
uint64_t | _changeStamp |
sc_core::sc_port_base * | _gem5WriterPort |
Definition at line 49 of file sc_clock.hh.
sc_core::sc_clock::sc_clock | ( | ) |
Definition at line 93 of file sc_clock.cc.
References sc_core::sc_gen_unique_name().
|
explicit |
Definition at line 98 of file sc_clock.cc.
sc_core::sc_clock::sc_clock | ( | const char * | name, |
const sc_time & | period, | ||
double | duty_cycle = 0.5 , |
||
const sc_time & | start_time = SC_ZERO_TIME , |
||
bool | posedge_first = true |
||
) |
Definition at line 102 of file sc_clock.cc.
References _gem5DownEdge, _gem5UpEdge, duty_cycle(), name(), period(), sc_core::SC_ID_CLOCK_HIGH_TIME_ZERO_, sc_core::SC_ID_CLOCK_LOW_TIME_ZERO_, sc_core::SC_ID_CLOCK_PERIOD_ZERO_, SC_REPORT_ERROR, and sc_core::SC_ZERO_TIME.
sc_core::sc_clock::sc_clock | ( | const char * | name, |
double | period_v, | ||
sc_time_unit | period_tu, | ||
double | duty_cycle = 0.5 |
||
) |
Definition at line 134 of file sc_clock.cc.
sc_core::sc_clock::sc_clock | ( | const char * | name, |
double | period_v, | ||
sc_time_unit | period_tu, | ||
double | duty_cycle, | ||
double | start_time_v, | ||
sc_time_unit | start_time_tu, | ||
bool | posedge_first = true |
||
) |
Definition at line 140 of file sc_clock.cc.
sc_core::sc_clock::sc_clock | ( | const char * | name, |
double | period, | ||
double | duty_cycle = 0.5 , |
||
double | start_time = 0.0 , |
||
bool | posedge_first = true |
||
) |
Definition at line 147 of file sc_clock.cc.
|
virtual |
Definition at line 153 of file sc_clock.cc.
References _gem5DownEdge, _gem5UpEdge, sc_gem5::Scheduler::deschedule(), sc_gem5::ScEvent::scheduled(), and sc_gem5::scheduler.
|
inlineprivate |
Definition at line 91 of file sc_clock.hh.
|
protectedvirtual |
Reimplemented from sc_core::sc_prim_channel.
Definition at line 181 of file sc_clock.cc.
References _dutyCycle, _gem5DownEdge, _gem5UpEdge, _period, _posedgeFirst, _startTime, sc_gem5::ClockTick::createProcess(), sc_gem5::Scheduler::schedule(), and sc_gem5::scheduler.
double sc_core::sc_clock::duty_cycle | ( | ) | const |
|
inlinevirtual |
Reimplemented from sc_gem5::ScSignalBase.
Definition at line 82 of file sc_clock.hh.
Definition at line 92 of file sc_clock.hh.
const sc_time & sc_core::sc_clock::period | ( | ) | const |
bool sc_core::sc_clock::posedge_first | ( | ) | const |
Definition at line 172 of file sc_clock.cc.
References _posedgeFirst.
const sc_time & sc_core::sc_clock::start_time | ( | ) | const |
Definition at line 171 of file sc_clock.cc.
References _startTime.
|
inlineprivate |
Definition at line 109 of file sc_clock.hh.
References sc_gem5::ScSignalBaseT< T, WRITER_POLICY >::m_new_val, and sc_core::sc_prim_channel::request_update().
|
inlineprivate |
Definition at line 103 of file sc_clock.hh.
References sc_gem5::ScSignalBaseT< T, WRITER_POLICY >::m_new_val, and sc_core::sc_prim_channel::request_update().
|
static |
Definition at line 175 of file sc_clock.cc.
References sc_core::sc_time_stamp().
|
virtual |
Definition at line 164 of file sc_clock.cc.
References panic.
|
friend |
Definition at line 88 of file sc_clock.hh.
|
private |
Definition at line 95 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), and duty_cycle().
|
private |
Definition at line 100 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), sc_clock(), and ~sc_clock().
|
private |
Definition at line 99 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), sc_clock(), and ~sc_clock().
|
private |
Definition at line 94 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), and period().
|
private |
Definition at line 97 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), and posedge_first().
|
private |
Definition at line 96 of file sc_clock.hh.
Referenced by before_end_of_elaboration(), and start_time().