📄 sc_sensitive.cpp
字号:
case SC_METHOD_: case SC_THREAD_: { m_handle->add_static_event( interface_.posedge_event() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator << ( const in_if_l_type& interface_ ){ sc_deprecated_sensitive_pos(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: case SC_THREAD_: { m_handle->add_static_event( interface_.posedge_event() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator << ( const in_port_b_type& port_ ){ sc_deprecated_sensitive_pos(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator << ( const in_port_l_type& port_ ){ sc_deprecated_sensitive_pos(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator << ( const inout_port_b_type& port_ ){ sc_deprecated_sensitive_pos(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator << ( const inout_port_l_type& port_ ){ sc_deprecated_sensitive_pos(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_POS_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.pos() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.pos() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_pos&sc_sensitive_pos::operator () ( const in_if_b_type& interface_ ){ warn_no_parens(); return operator << ( interface_ );}sc_sensitive_pos&sc_sensitive_pos::operator () ( const in_if_l_type& interface_ ){ warn_no_parens(); return operator << ( interface_ );}sc_sensitive_pos&sc_sensitive_pos::operator () ( const in_port_b_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_pos&sc_sensitive_pos::operator () ( const in_port_l_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_pos&sc_sensitive_pos::operator () ( const inout_port_b_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_pos&sc_sensitive_pos::operator () ( const inout_port_l_type& port_ ){ warn_no_parens(); return operator << ( port_ );}void sc_sensitive_pos::reset(){ m_mode = SC_NONE_;}// ----------------------------------------------------------------------------// CLASS : sc_sensitive_neg//// Static sensitivity class for negative edge events.// ----------------------------------------------------------------------------static void sc_deprecated_sensitive_neg(){ static bool warn_sensitive_neg=true; if ( warn_sensitive_neg ) { warn_sensitive_neg=false; SC_REPORT_INFO(SC_ID_IEEE_1666_DEPRECATION_, "sc_sensitive_neg is deprecated use sc_sensitive << with neg() instead" ); }}// constructorsc_sensitive_neg::sc_sensitive_neg( sc_module* module_ ): m_module( module_ ), m_mode( SC_NONE_ ), m_handle( 0 ){}// destructorsc_sensitive_neg::~sc_sensitive_neg(){}// changing between process handlessc_sensitive_neg&sc_sensitive_neg::operator << ( sc_process_handle handle_ ){ switch ( handle_.proc_kind() ) { case SC_CTHREAD_PROC_: case SC_THREAD_PROC_: m_mode = SC_THREAD_; break; case SC_METHOD_PROC_: m_mode = SC_METHOD_; break; default: assert(0); } m_handle = (sc_process_b*)handle_; return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( sc_method_handle handle_ ){ m_mode = SC_METHOD_; m_handle = handle_; return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( sc_thread_handle handle_ ){ m_mode = SC_THREAD_; m_handle = handle_; return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const in_if_b_type& interface_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: case SC_THREAD_: { m_handle->add_static_event( interface_.negedge_event() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const in_if_l_type& interface_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: case SC_THREAD_: { m_handle->add_static_event( interface_.negedge_event() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const in_port_b_type& port_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.neg() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.neg() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const in_port_l_type& port_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.neg() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.neg() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const inout_port_b_type& port_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.neg() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.neg() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator << ( const inout_port_l_type& port_ ){ sc_deprecated_sensitive_neg(); // check if( sc_is_running() ) { SC_REPORT_ERROR( SC_ID_MAKE_SENSITIVE_NEG_, "simulation running" ); } // make sensitive switch( m_mode ) { case SC_METHOD_: { port_.make_sensitive( as_method_handle( m_handle ), &port_.neg() ); break; } case SC_THREAD_: { port_.make_sensitive( as_thread_handle( m_handle ), &port_.neg() ); break; } case SC_NONE_: /* do nothing */ break; } return *this;}sc_sensitive_neg&sc_sensitive_neg::operator () ( const in_if_b_type& interface_ ){ warn_no_parens(); return operator << ( interface_ );}sc_sensitive_neg&sc_sensitive_neg::operator () ( const in_if_l_type& interface_ ){ warn_no_parens(); return operator << ( interface_ );}sc_sensitive_neg&sc_sensitive_neg::operator () ( const in_port_b_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_neg&sc_sensitive_neg::operator () ( const in_port_l_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_neg&sc_sensitive_neg::operator () ( const inout_port_b_type& port_ ){ warn_no_parens(); return operator << ( port_ );}sc_sensitive_neg&sc_sensitive_neg::operator () ( const inout_port_l_type& port_ ){ warn_no_parens(); return operator << ( port_ );}void sc_sensitive_neg::reset(){ m_mode = SC_NONE_;}} // namespace sc_core// Taf!
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -