Changeset 111 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Issue_queue/src/Issue_queue.cpp
- Timestamp:
- Feb 27, 2009, 7:37:40 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Issue_queue/src/Issue_queue.cpp
r110 r111 75 75 if (usage_is_set(_usage,USE_SYSTEMC)) 76 76 { 77 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - transition"),_name.c_str()); 77 // Function pointer 78 switch (_param->_queue_scheme) 79 { 80 case ISSUE_QUEUE_SCHEME_IN_ORDER : 81 { 82 function_transition = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::issue_queue::Issue_queue::function_in_order_transition ; 83 function_genMoore = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::issue_queue::Issue_queue::function_in_order_genMoore ; 84 function_genMealy_issue_in = NULL; 85 function_genMealy_issue_out = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::issue_queue::Issue_queue::function_in_order_genMealy_issue_out; 86 87 break; 88 } 89 case ISSUE_QUEUE_SCHEME_OUT_OF_ORDER : 90 { 91 function_transition = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::issue_queue::Issue_queue::function_out_of_order_transition ; 92 function_genMoore = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::issue_queue::Issue_queue::function_out_of_order_genMoore ; 93 function_genMealy_issue_in = NULL; 94 function_genMealy_issue_out = NULL; 95 96 break; 97 } 98 default : 99 { 100 break; 101 } 102 } 78 103 79 SC_METHOD (transition); 80 dont_initialize (); 81 sensitive << (*(in_CLOCK)).pos(); 82 104 if (function_transition != NULL) 105 { 106 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - transition"),_name.c_str()); 107 108 SC_METHOD (transition); 109 dont_initialize (); 110 sensitive << (*(in_CLOCK)).pos(); 111 83 112 # ifdef SYSTEMCASS_SPECIFIC 84 113 // List dependency information 85 114 # endif 115 } 86 116 87 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - genMoore"),_name.c_str()); 117 if (function_genMoore != NULL) 118 { 119 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - genMoore"),_name.c_str()); 120 121 SC_METHOD (genMoore); 122 dont_initialize (); 123 sensitive << (*(in_CLOCK)).neg(); // need internal register 124 125 # ifdef SYSTEMCASS_SPECIFIC 126 // List dependency information 127 # endif 128 } 88 129 89 SC_METHOD (genMoore); 90 dont_initialize (); 91 sensitive << (*(in_CLOCK)).neg(); // need internal register 92 130 if (function_genMealy_issue_in != NULL) 131 { 132 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - genMealy_issue_in"),_name.c_str()); 133 134 SC_METHOD (genMealy_issue_in); 135 dont_initialize (); 136 sensitive << (*(in_CLOCK)).neg(); // need internal register 137 93 138 # ifdef SYSTEMCASS_SPECIFIC 94 139 // List dependency information 95 140 # endif 141 } 142 143 if (function_genMealy_issue_out != NULL) 144 { 145 log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - genMealy_issue_out"),_name.c_str()); 146 147 SC_METHOD (genMealy_issue_out); 148 dont_initialize (); 149 sensitive << (*(in_CLOCK)).neg(); // need internal register 150 151 if (_param->_queue_scheme == ISSUE_QUEUE_SCHEME_IN_ORDER) 152 { 153 for (uint32_t i=0; i<_param->_nb_inst_issue; ++i) 154 sensitive << (*(in_ISSUE_OUT_ACK [i])); 155 } 156 157 # ifdef SYSTEMCASS_SPECIFIC 158 // List dependency information 159 # endif 160 } 96 161 97 162 #endif
Note: See TracChangeset
for help on using the changeset viewer.