00001 /***************************************************************************** 00002 00003 The following code is derived, directly or indirectly, from the SystemC 00004 source code Copyright (c) 1996-2014 by all Contributors. 00005 All Rights reserved. 00006 00007 The contents of this file are subject to the restrictions and limitations 00008 set forth in the SystemC Open Source License (the "License"); 00009 You may not use this file except in compliance with such restrictions and 00010 limitations. You may obtain instructions on how to receive a copy of the 00011 License at http://www.accellera.org/. Software distributed by Contributors 00012 under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 00013 ANY KIND, either express or implied. See the License for the specific 00014 language governing rights and limitations under the License. 00015 00016 *****************************************************************************/ 00017 00018 /***************************************************************************** 00019 00020 sc_wait_cthread.h -- Wait() and related functions for SC_CTHREADs. 00021 00022 Original Author: Stan Y. Liao, Synopsys, Inc. 00023 Martin Janssen, Synopsys, Inc. 00024 00025 CHANGE LOG AT THE END OF THE FILE 00026 *****************************************************************************/ 00027 00028 00029 #ifndef SC_WAIT_CTHREAD_H 00030 #define SC_WAIT_CTHREAD_H 00031 00032 00033 #include "sysc/kernel/sc_simcontext.h" 00034 #include "sysc/datatypes/bit/sc_logic.h" 00035 #include "sysc/communication/sc_signal_ifs.h" 00036 00037 00038 namespace sc_core 00039 { 00040 00041 // for SC_CTHREADs 00042 00047 // 08/19/2015 GL: modified for the OoO simulation 00048 extern 00049 void 00050 halt( int, 00051 sc_simcontext* = sc_get_curr_simcontext() ); 00052 00053 00058 // 08/19/2015 GL: modified for the OoO simulation 00059 extern 00060 void 00061 wait( int, 00062 int, 00063 sc_simcontext* = sc_get_curr_simcontext() ); 00064 00065 00070 // 08/19/2015 GL: modified for the OoO simulation 00071 extern 00072 void 00073 at_posedge( const sc_signal_in_if<bool>&, 00074 int, 00075 sc_simcontext* = sc_get_curr_simcontext() ); 00076 00081 // 08/19/2015 GL: modified for the OoO simulation 00082 extern 00083 void 00084 at_posedge( const sc_signal_in_if<sc_dt::sc_logic>&, 00085 int, 00086 sc_simcontext* = sc_get_curr_simcontext() ); 00087 00092 // 08/19/2015 GL: modified for the OoO simulation 00093 extern 00094 void 00095 at_negedge( const sc_signal_in_if<bool>&, 00096 int, 00097 sc_simcontext* = sc_get_curr_simcontext() ); 00098 00103 // 08/19/2015 GL: modified for the OoO simulation 00104 extern 00105 void 00106 at_negedge( const sc_signal_in_if<sc_dt::sc_logic>&, 00107 int, 00108 sc_simcontext* = sc_get_curr_simcontext() ); 00109 00110 00111 } // namespace sc_core 00112 00113 /* 00114 $Log: sc_wait_cthread.h,v $ 00115 Revision 1.6 2011/08/26 20:46:11 acg 00116 Andy Goodrich: moved the modification log to the end of the file to 00117 eliminate source line number skew when check-ins are done. 00118 00119 Revision 1.5 2011/08/24 22:05:51 acg 00120 Torsten Maehne: initialization changes to remove warnings. 00121 00122 Revision 1.4 2011/02/18 20:27:14 acg 00123 Andy Goodrich: Updated Copyrights. 00124 00125 Revision 1.3 2011/02/13 21:47:38 acg 00126 Andy Goodrich: update copyright notice. 00127 00128 Revision 1.2 2008/05/22 17:06:27 acg 00129 Andy Goodrich: updated copyright notice to include 2008. 00130 00131 Revision 1.1.1.1 2006/12/15 20:20:05 acg 00132 SystemC 2.3 00133 00134 Revision 1.2 2006/01/03 23:18:45 acg 00135 Changed copyright to include 2006. 00136 00137 Revision 1.1.1.1 2005/12/19 23:16:44 acg 00138 First check in of SystemC 2.1 into its own archive. 00139 00140 Revision 1.10 2005/09/02 19:03:30 acg 00141 Changes for dynamic processes. Removal of lambda support. 00142 00143 Revision 1.9 2005/04/04 00:16:08 acg 00144 Changes for directory name change to sys from systemc. 00145 Changes for sc_string going to std::string. 00146 Changes for sc_pvector going to std::vector. 00147 Changes for reference pools for bit and part selections. 00148 Changes for const sc_concatref support. 00149 00150 Revision 1.6 2005/01/10 17:52:20 acg 00151 Addition of namespace specifications. 00152 00153 Revision 1.5 2004/09/27 20:49:10 acg 00154 Andy Goodrich, Forte Design Systems, Inc. 00155 - Added a $Log comment so that CVS checkin comments appear in the 00156 checkout source. 00157 00158 */ 00159 00160 #endif