Changeset 88 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit
- Timestamp:
- Dec 10, 2008, 7:31:39 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/SelfTest/Makefile
r81 r88 24 24 library_clean : Dependency_checking_unit_library_clean 25 25 26 local_clean : 27 26 28 include $(DIR_COMPONENT)/Makefile.deps 27 29 include $(DIR_MORPHEO)/Behavioural/Makefile.flags -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/SelfTest/src/main.cpp
r81 r88 48 48 _nb_general_register, 49 49 _nb_special_register, 50 _nb_inst_insert ); 50 _nb_inst_insert , 51 true //is_toplevel 52 ); 51 53 52 54 msg(_("%s"),param->print(1).c_str()); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/SelfTest/src/test.cpp
r82 r88 24 24 #endif 25 25 26 Tusage_t _usage = USE_ALL; 27 28 // _usage = usage_unset(_usage,USE_SYSTEMC ); 29 // _usage = usage_unset(_usage,USE_VHDL ); 30 // _usage = usage_unset(_usage,USE_VHDL_TESTBENCH ); 31 // _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT); 32 // _usage = usage_unset(_usage,USE_POSITION ); 33 // _usage = usage_unset(_usage,USE_STATISTICS ); 34 // _usage = usage_unset(_usage,USE_INFORMATION ); 35 26 36 Dependency_checking_unit * _Dependency_checking_unit = new Dependency_checking_unit 27 37 (name.c_str(), … … 30 40 #endif 31 41 _param, 32 USE_ALL);42 _usage); 33 43 34 44 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/include/Parameters.h
r82 r88 31 31 public : uint32_t _nb_inst_insert ; 32 32 33 34 35 36 37 38 39 33 //public : uint32_t _size_front_end_id ; 34 //public : uint32_t _size_context_id ; 35 //public : uint32_t _size_general_register ; 36 //public : uint32_t _size_special_register ; 37 38 //public : uint32_t _have_port_context_id ; 39 //public : uint32_t _have_port_front_end_id; 40 40 41 41 //-----[ methods ]----------------------------------------------------------- … … 44 44 uint32_t nb_general_register , 45 45 uint32_t nb_special_register , 46 uint32_t nb_inst_insert ); 46 uint32_t nb_inst_insert , 47 bool is_toplevel=false 48 ); 47 49 // public : Parameters (Parameters & param) ; 48 50 public : ~Parameters () ; 49 51 50 52 public : Parameters_test msg_error (void); 53 54 public : void copy (void); 51 55 52 56 public : std::string print (uint32_t depth); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit.cpp
r81 r88 39 39 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin"); 40 40 41 #if DEBUG_Dependency_checking_unit == true 42 log_printf(INFO,Dependency_checking_unit,FUNCTION,_("<%s> Parameters"),_name.c_str()); 43 44 std::cout << *param << std::endl; 45 #endif 46 41 47 log_printf(INFO,Dependency_checking_unit,FUNCTION,"Allocation"); 42 48 … … 48 54 49 55 #ifdef STATISTICS 50 if ( _usage & USE_STATISTICS)56 if (usage_is_set(_usage,USE_STATISTICS)) 51 57 { 52 58 log_printf(INFO,Dependency_checking_unit,FUNCTION,"Allocation of statistics"); … … 57 63 58 64 #ifdef VHDL 59 if ( _usage & USE_VHDL)65 if (usage_is_set(_usage,USE_VHDL)) 60 66 { 61 67 // generate the vhdl … … 67 73 68 74 #ifdef SYSTEMC 69 if ( _usage & USE_SYSTEMC)75 if (usage_is_set(_usage,USE_SYSTEMC)) 70 76 { 71 77 # if defined(STATISTICS) or defined(VHDL_TESTBENCH) … … 86 92 SC_METHOD (genMealy); 87 93 dont_initialize (); 88 sensitive << (*(in_CLOCK)).neg(); 94 // sensitive << (*(in_CLOCK)).neg(); // don't need internal register 89 95 for (uint32_t i=0;i<_param->_nb_inst_insert; i++) 90 96 { … … 221 227 222 228 #ifdef STATISTICS 223 if ( _usage & USE_STATISTICS)229 if (usage_is_set(_usage,USE_STATISTICS)) 224 230 { 225 231 log_printf(INFO,Dependency_checking_unit,FUNCTION,"Generate Statistics file"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit_allocation.cpp
r81 r88 113 113 114 114 #ifdef POSITION 115 _component->generate_file(); 115 if (usage_is_set(_usage,USE_POSITION)) 116 _component->generate_file(); 116 117 #endif 117 118 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit_deallocation.cpp
r81 r88 24 24 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin"); 25 25 26 if ( _usage & USE_SYSTEMC)26 if (usage_is_set(_usage,USE_SYSTEMC)) 27 27 { 28 28 delete in_CLOCK ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit_end_cycle.cpp
r81 r88 26 26 27 27 #ifdef STATISTICS 28 _stat->end_cycle(); 28 if (usage_is_set(_usage,USE_STATISTICS)) 29 _stat->end_cycle(); 29 30 #endif 30 31 … … 32 33 // Evaluation before read the ouput signal 33 34 // sc_start(0); 34 _interfaces->testbench(); 35 if (usage_is_set(_usage,USE_VHDL_TESTBENCH)) 36 _interfaces->testbench(); 35 37 #endif 36 38 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit_genMealy.cpp
r81 r88 23 23 void Dependency_checking_unit::genMealy (void) 24 24 { 25 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin"); 25 log_begin(Dependency_checking_unit,FUNCTION); 26 log_function(Dependency_checking_unit,FUNCTION,_name.c_str()); 26 27 27 28 // Tcontrol_t val [_param->_nb_inst_insert]; … … 77 78 num_reg_re_phy_new [i] = PORT_READ(in_RENAME_IN_NUM_REG_RE_PHY_NEW [i]); 78 79 80 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * (before) [%d] %.2d %.2d, %.1d %.2d %.5d, %.1d %.2d %.5d, %.1d %.2d %.5d, %.1d %.2d %.5d -> %.5d, %.1d %.2d %.5d -> %.5d", 81 i, 82 front_end_id [i], 83 context_id [i], 84 read_ra [i], 85 num_reg_ra_log [i], 86 num_reg_ra_phy [i], 87 read_rb [i], 88 num_reg_rb_log [i], 89 num_reg_rb_phy [i], 90 read_rc [i], 91 num_reg_rc_log [i], 92 num_reg_rc_phy [i], 93 write_rd [i], 94 num_reg_rd_log [i], 95 num_reg_rd_phy_old [i], 96 num_reg_rd_phy_new [i], 97 write_re [i], 98 num_reg_re_log [i], 99 num_reg_re_phy_old [i], 100 num_reg_re_phy_new [i]); 101 79 102 // ================================================================ 80 103 // =====[ Write after Write ]====================================== … … 88 111 (context_id [j] == context_id [i]) ) 89 112 { 113 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * RD : WAW dependency with inst[%d].RD",j); 90 114 num_reg_rd_phy_old [i] = num_reg_rd_phy_new [j]; 91 115 break; // find the most recently dependency … … 100 124 (context_id [j] == context_id [i]) ) 101 125 { 126 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * RE : WAW dependency with inst[%d].RE",j); 102 127 num_reg_re_phy_old [i] = num_reg_re_phy_new [j]; 103 128 break; // find the most recently dependency … … 114 139 (context_id [j] == context_id [i]) ) 115 140 { 141 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * RA : RAW dependency with inst[%d].RD",j); 116 142 num_reg_ra_phy [i] = num_reg_rd_phy_new [j]; 117 143 break; // find the most recently dependency … … 126 152 (context_id [j] == context_id [i]) ) 127 153 { 154 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * RB : RAW dependency with inst[%d].RD",j); 128 155 num_reg_rb_phy [i] = num_reg_rd_phy_new [j]; 129 156 break; // find the most recently dependency … … 138 165 (context_id [j] == context_id [i]) ) 139 166 { 167 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * RC : RAW dependency with inst[%d].RE",j); 140 168 num_reg_rc_phy [i] = num_reg_re_phy_new [j]; 141 169 break; // find the most recently dependency 142 170 } 171 172 log_printf(TRACE,Dependency_checking_unit,FUNCTION," * (after ) [%d] %.2d %.2d, %.1d %.2d %.5d, %.1d %.2d %.5d, %.1d %.2d %.5d, %.1d %.2d %.5d -> %.5d, %.1d %.2d %.5d -> %.5d", 173 i, 174 front_end_id [i], 175 context_id [i], 176 read_ra [i], 177 num_reg_ra_log [i], 178 num_reg_ra_phy [i], 179 read_rb [i], 180 num_reg_rb_log [i], 181 num_reg_rb_phy [i], 182 read_rc [i], 183 num_reg_rc_log [i], 184 num_reg_rc_phy [i], 185 write_rd [i], 186 num_reg_rd_log [i], 187 num_reg_rd_phy_old [i], 188 num_reg_rd_phy_new [i], 189 write_re [i], 190 num_reg_re_log [i], 191 num_reg_re_phy_old [i], 192 num_reg_re_phy_new [i]); 143 193 144 194 // =====[ Output ]================================================= … … 168 218 } 169 219 170 log_ printf(FUNC,Dependency_checking_unit,FUNCTION,"End");220 log_end(Dependency_checking_unit,FUNCTION); 171 221 }; 172 222 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Parameters.cpp
r81 r88 24 24 uint32_t nb_general_register , 25 25 uint32_t nb_special_register , 26 uint32_t nb_inst_insert ) 26 uint32_t nb_inst_insert , 27 bool is_toplevel ) 27 28 { 28 29 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin"); … … 34 35 _nb_inst_insert = nb_inst_insert ; 35 36 36 _size_front_end_id = log2(nb_front_end ); 37 _size_context_id = log2(max_nb_context ); 38 _size_general_register = log2(nb_general_register); 39 _size_special_register = log2(nb_special_register); 40 41 _have_port_front_end_id = _size_front_end_id>0; 42 _have_port_context_id = _size_context_id >0; 37 test(); 43 38 44 test(); 39 if (is_toplevel) 40 { 41 _size_front_end_id = log2(nb_front_end ); 42 _size_context_id = log2(max_nb_context ); 43 _size_general_register = log2(nb_general_register); 44 _size_special_register = log2(nb_special_register); 45 46 _have_port_front_end_id = _size_front_end_id>0; 47 _have_port_context_id = _size_context_id >0; 48 49 copy(); 50 } 51 45 52 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"End"); 46 53 }; … … 57 64 #undef FUNCTION 58 65 #define FUNCTION "Dependency_checking_unit::~Parameters" 59 Parameters::~Parameters () 66 Parameters::~Parameters (void) 67 { 68 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin"); 69 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"End"); 70 }; 71 72 #undef FUNCTION 73 #define FUNCTION "Dependency_checking_unit::copy" 74 void Parameters::copy (void) 60 75 { 61 76 log_printf(FUNC,Dependency_checking_unit,FUNCTION,"Begin");
Note: See TracChangeset
for help on using the changeset viewer.