Changeset 118 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include
- Timestamp:
- May 21, 2009, 12:01:32 AM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Parameters.h
r115 r118 24 24 25 25 26 26 27 class Parameters : public morpheo::behavioural::Parameters 27 28 { 28 29 //-----[ fields ]------------------------------------------------------------ 29 public : uint32_t _size_queue;30 public : uint32_t _nb_context;31 public : uint32_t _nb_front_end;32 public : uint32_t _nb_ooo_engine;33 public : uint32_t _nb_packet;34 //public : uint32_t _size_general_data;35 public : uint32_t _nb_general_register;36 //public : uint32_t _size_special_data;37 public : uint32_t _nb_special_register;38 public : uint32_t _nb_bypass_write;39 public : Twrite_queue_scheme_t _queue_scheme;40 41 public : uint32_t _nb_gpr_write;42 public : uint32_t _nb_spr_write;43 44 //public : uint32_t _size_context_id;45 //public : uint32_t _size_front_end_id;46 //public : uint32_t _size_ooo_engine_id;47 //public : uint32_t _size_packet_id;48 //public : uint32_t _size_general_register;49 //public : uint32_t _size_special_register;50 public : uint32_t _size_internal_queue;51 52 //public : bool _have_port_context_id;53 //public : bool _have_port_front_end_id;54 //public : bool _have_port_ooo_engine_id;55 //public : bool _have_port_packet_id;30 public : uint32_t _size_queue ; 31 public : uint32_t _nb_context ; 32 public : uint32_t _nb_front_end ; 33 public : uint32_t _nb_ooo_engine ; 34 public : uint32_t _nb_packet ; 35 //public : uint32_t _size_general_data ; 36 public : uint32_t _nb_general_register ; 37 //public : uint32_t _size_special_data ; 38 public : uint32_t _nb_special_register ; 39 public : uint32_t _nb_bypass_write ; 40 public : Twrite_queue_scheme_t _queue_scheme ; 41 public : Tbypass_write_scheme_t _bypass_write_scheme ; 42 public : uint32_t _nb_gpr_write ; 43 public : uint32_t _nb_spr_write ; 44 45 //public : uint32_t _size_context_id ; 46 //public : uint32_t _size_front_end_id ; 47 //public : uint32_t _size_ooo_engine_id ; 48 //public : uint32_t _size_packet_id ; 49 //public : uint32_t _size_general_register ; 50 //public : uint32_t _size_special_register ; 51 public : uint32_t _size_internal_queue ; 52 53 //public : bool _have_port_context_id ; 54 //public : bool _have_port_front_end_id ; 55 //public : bool _have_port_ooo_engine_id; 56 //public : bool _have_port_packet_id ; 56 57 57 58 //-----[ methods ]----------------------------------------------------------- -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Types.h
r115 r118 25 25 ,WRITE_QUEUE_SCHEME_MEALY // Write register and pop can be in same cycle 26 26 } Twrite_queue_scheme_t; 27 28 typedef enum 29 { 30 BYPASS_WRITE_FROM_ALU, 31 BYPASS_WRITE_FROM_QUEUE 32 } Tbypass_write_scheme_t; 27 33 28 34 class write_queue_entry_t … … 108 114 }; 109 115 116 template<> inline std::string toString<morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Tbypass_write_scheme_t>(const morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Tbypass_write_scheme_t& x) 117 { 118 switch (x) 119 { 120 case morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_ALU : return "alu" ; break; 121 case morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_QUEUE : return "queue"; break; 122 default : return ""; break; 123 } 124 }; 125 126 template<> inline morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Tbypass_write_scheme_t fromString<morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Tbypass_write_scheme_t>(const std::string& x) 127 { 128 if ( (x.compare(toString(static_cast<uint32_t>(morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_ALU))) == 0) or 129 (x.compare("alu") == 0)) 130 return morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_ALU; 131 if ( (x.compare(toString(static_cast<uint32_t>(morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_QUEUE))) == 0) or 132 (x.compare("queue") == 0)) 133 return morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::BYPASS_WRITE_FROM_QUEUE; 134 135 throw (ErrorMorpheo ("<fromString> : Unknow string : \""+x+"\"")); 136 }; 137 110 138 }; // end namespace morpheo 111 139 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Write_queue.h
r115 r118 172 172 public : void transition (void); 173 173 public : void genMoore (void); 174 public : void genMealy (void); 174 public : void genMealy_write (void); 175 public : void genMealy_bypass (void); 175 176 #endif 176 177 #ifdef STATISTICS
Note: See TracChangeset
for help on using the changeset viewer.