Changeset 76 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue
- Timestamp:
- Feb 2, 2008, 12:39:01 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config0.cfg
r66 r76 13 13 4 4 *2 # nb_gpr_write 14 14 2 2 *2 # nb_spr_write 15 4 4 *2 # size_store_queue 16 4 4 *2 # size_load_queue -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config1.cfg
r68 r76 13 13 2 4 *2 # nb_gpr_write 14 14 2 4 *2 # nb_spr_write 15 4 4 *2 # size_store_queue 16 4 4 *2 # size_load_queue -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config2.cfg
r68 r76 13 13 1 1 *2 # nb_gpr_write 14 14 1 1 *2 # nb_spr_write 15 4 4 *2 # size_store_queue 16 4 4 *2 # size_load_queue -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config_min.cfg
r68 r76 13 13 1 1 *2 # nb_gpr_write 14 14 1 1 *2 # nb_spr_write 15 4 4 *2 # size_store_queue 16 4 4 *2 # size_load_queue -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/src/main.cpp
r66 r76 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 310 #define NB_PARAMS 15 11 11 12 12 void usage (int argc, char * argv[]) … … 27 27 << " - nb_gpr_write (unsigned int)" << endl 28 28 << " - nb_spr_write (unsigned int)" << endl 29 << " - size_store_queue (unsigned int)" << endl 30 << " - size_load_queue (unsigned int)" << endl 29 31 << "" << endl; 30 32 … … 60 62 const uint32_t nb_gpr_write = atoi(argv[x++]); 61 63 const uint32_t nb_spr_write = atoi(argv[x++]); 64 const uint32_t size_store_queue = atoi(argv[x++]); 65 const uint32_t size_load_queue = atoi(argv[x++]); 62 66 63 67 try … … 77 81 ,nb_gpr_write 78 82 ,nb_spr_write 83 ,size_store_queue 84 ,size_load_queue 79 85 ); 80 86 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/src/test.cpp
r68 r76 75 75 sc_signal<Toperation_t > * READ_QUEUE_IN_OPERATION = new sc_signal<Toperation_t > ("READ_QUEUE_IN_OPERATION "); 76 76 sc_signal<Ttype_t > * READ_QUEUE_IN_TYPE = new sc_signal<Ttype_t > ("READ_QUEUE_IN_TYPE "); 77 sc_signal<Tlsq_ptr_t > * READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE = new sc_signal<Tlsq_ptr_t> ("READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE"); 78 sc_signal<Tlsq_ptr_t > * READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE = new sc_signal<Tlsq_ptr_t> ("READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE "); 77 79 sc_signal<Tcontrol_t > * READ_QUEUE_IN_HAS_IMMEDIAT = new sc_signal<Tcontrol_t > ("READ_QUEUE_IN_HAS_IMMEDIAT"); 78 80 sc_signal<Tgeneral_data_t > * READ_QUEUE_IN_IMMEDIAT = new sc_signal<Tgeneral_data_t > ("READ_QUEUE_IN_IMMEDIAT "); … … 98 100 sc_signal<Toperation_t > * READ_QUEUE_OUT_OPERATION = new sc_signal<Toperation_t > ("READ_QUEUE_OUT_OPERATION "); 99 101 sc_signal<Ttype_t > * READ_QUEUE_OUT_TYPE = new sc_signal<Ttype_t > ("READ_QUEUE_OUT_TYPE "); 102 sc_signal<Tlsq_ptr_t > * READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE = new sc_signal<Tlsq_ptr_t> ("READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE"); 103 sc_signal<Tlsq_ptr_t > * READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE = new sc_signal<Tlsq_ptr_t> ("READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE "); 100 104 sc_signal<Tcontrol_t > * READ_QUEUE_OUT_HAS_IMMEDIAT= new sc_signal<Tcontrol_t > ("READ_QUEUE_OUT_HAS_IMMEDIAT"); 101 105 sc_signal<Tgeneral_data_t > * READ_QUEUE_OUT_IMMEDIAT = new sc_signal<Tgeneral_data_t > ("READ_QUEUE_OUT_IMMEDIAT "); … … 226 230 (*(_Read_queue-> in_READ_QUEUE_IN_OPERATION )) (*(READ_QUEUE_IN_OPERATION )); 227 231 (*(_Read_queue-> in_READ_QUEUE_IN_TYPE )) (*(READ_QUEUE_IN_TYPE )); 232 (*(_Read_queue-> in_READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE)) (*(READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE)); 233 (*(_Read_queue-> in_READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE )) (*(READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE )); 228 234 (*(_Read_queue-> in_READ_QUEUE_IN_HAS_IMMEDIAT )) (*(READ_QUEUE_IN_HAS_IMMEDIAT )); 229 235 (*(_Read_queue-> in_READ_QUEUE_IN_IMMEDIAT )) (*(READ_QUEUE_IN_IMMEDIAT )); … … 251 257 (*(_Read_queue->out_READ_QUEUE_OUT_OPERATION )) (*(READ_QUEUE_OUT_OPERATION )); 252 258 (*(_Read_queue->out_READ_QUEUE_OUT_TYPE )) (*(READ_QUEUE_OUT_TYPE )); 259 (*(_Read_queue->out_READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE)) (*(READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE)); 260 (*(_Read_queue->out_READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE )) (*(READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE )); 253 261 (*(_Read_queue->out_READ_QUEUE_OUT_HAS_IMMEDIAT )) (*(READ_QUEUE_OUT_HAS_IMMEDIAT )); 254 262 (*(_Read_queue->out_READ_QUEUE_OUT_IMMEDIAT )) (*(READ_QUEUE_OUT_IMMEDIAT )); 255 (*(_Read_queue->out_READ_QUEUE_OUT_READ_RA )) (*(READ_QUEUE_OUT_READ_RA ));263 // (*(_Read_queue->out_READ_QUEUE_OUT_READ_RA )) (*(READ_QUEUE_OUT_READ_RA )); 256 264 (*(_Read_queue->out_READ_QUEUE_OUT_NUM_REG_RA )) (*(READ_QUEUE_OUT_NUM_REG_RA )); 257 265 (*(_Read_queue->out_READ_QUEUE_OUT_DATA_RA_VAL )) (*(READ_QUEUE_OUT_DATA_RA_VAL )); 258 266 (*(_Read_queue->out_READ_QUEUE_OUT_DATA_RA )) (*(READ_QUEUE_OUT_DATA_RA )); 259 (*(_Read_queue->out_READ_QUEUE_OUT_READ_RB )) (*(READ_QUEUE_OUT_READ_RB ));267 // (*(_Read_queue->out_READ_QUEUE_OUT_READ_RB )) (*(READ_QUEUE_OUT_READ_RB )); 260 268 (*(_Read_queue->out_READ_QUEUE_OUT_NUM_REG_RB )) (*(READ_QUEUE_OUT_NUM_REG_RB )); 261 269 (*(_Read_queue->out_READ_QUEUE_OUT_DATA_RB_VAL )) (*(READ_QUEUE_OUT_DATA_RB_VAL )); 262 270 (*(_Read_queue->out_READ_QUEUE_OUT_DATA_RB )) (*(READ_QUEUE_OUT_DATA_RB )); 263 (*(_Read_queue->out_READ_QUEUE_OUT_READ_RC )) (*(READ_QUEUE_OUT_READ_RC ));271 // (*(_Read_queue->out_READ_QUEUE_OUT_READ_RC )) (*(READ_QUEUE_OUT_READ_RC )); 264 272 (*(_Read_queue->out_READ_QUEUE_OUT_NUM_REG_RC )) (*(READ_QUEUE_OUT_NUM_REG_RC )); 265 273 (*(_Read_queue->out_READ_QUEUE_OUT_DATA_RC_VAL )) (*(READ_QUEUE_OUT_DATA_RC_VAL )); … … 408 416 READ_QUEUE_IN_OPERATION ->write(0); 409 417 READ_QUEUE_IN_TYPE ->write(0); 418 READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE->write(0); 419 READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE ->write(0); 410 420 READ_QUEUE_IN_HAS_IMMEDIAT->write(0); 411 421 READ_QUEUE_IN_IMMEDIAT ->write(0); … … 535 545 TEST(Tcontext_t ,READ_QUEUE_OUT_FRONT_END_ID ->read(),(3*ctxt)%_param->_nb_front_end); 536 546 537 TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RA ->read(),_read_ra [rob_id]);547 // TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RA ->read(),_read_ra [rob_id]); 538 548 TEST(Tgeneral_address_t,READ_QUEUE_OUT_NUM_REG_RA ->read(),_num_reg_ra [rob_id]); 539 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RA_VAL->read(),not READ_QUEUE_OUT_READ_RA->read()or _gpr_val [_num_reg_ra[rob_id]][ctxt]);540 if ( READ_QUEUE_OUT_READ_RA ->read()and549 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RA_VAL->read(),not _read_ra [rob_id] or _gpr_val [_num_reg_ra[rob_id]][ctxt]); 550 if (_read_ra [rob_id] and 541 551 READ_QUEUE_OUT_DATA_RA_VAL->read()) 542 552 TEST(Tgeneral_data_t ,READ_QUEUE_OUT_DATA_RA ->read(),_gpr [_num_reg_ra[rob_id]][ctxt]); 543 TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RB ->read(),_read_rb [rob_id]);553 // TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RB ->read(),_read_rb [rob_id]); 544 554 TEST(Tgeneral_address_t,READ_QUEUE_OUT_NUM_REG_RB ->read(),_num_reg_rb [rob_id]); 545 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RB_VAL->read(),not READ_QUEUE_OUT_READ_RB->read()or _gpr_val [_num_reg_rb[rob_id]][ctxt]);546 if ( READ_QUEUE_OUT_READ_RB ->read()and555 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RB_VAL->read(),not _read_rb [rob_id] or _gpr_val [_num_reg_rb[rob_id]][ctxt]); 556 if (_read_rb [rob_id] and 547 557 READ_QUEUE_OUT_DATA_RB_VAL->read()) 548 558 TEST(Tgeneral_data_t ,READ_QUEUE_OUT_DATA_RB ->read(),_gpr [_num_reg_rb[rob_id]][ctxt]); 549 TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RC ->read(),_read_rc [rob_id]);559 // TEST(Tcontrol_t ,READ_QUEUE_OUT_READ_RC ->read(),_read_rc [rob_id]); 550 560 TEST(Tspecial_address_t,READ_QUEUE_OUT_NUM_REG_RC ->read(),_num_reg_rc [rob_id]); 551 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RC_VAL->read(),not READ_QUEUE_OUT_READ_RC->read()or _spr_val [_num_reg_rc[rob_id]][ctxt]);552 if ( READ_QUEUE_OUT_READ_RC ->read()and561 TEST(Tcontrol_t ,READ_QUEUE_OUT_DATA_RC_VAL->read(),not _read_rc [rob_id] or _spr_val [_num_reg_rc[rob_id]][ctxt]); 562 if (_read_rc [rob_id] and 553 563 READ_QUEUE_OUT_DATA_RC_VAL->read()) 554 564 TEST(Tspecial_data_t ,READ_QUEUE_OUT_DATA_RC ->read(),_spr [_num_reg_rc[rob_id]][ctxt]); … … 581 591 delete READ_QUEUE_IN_OPERATION ; 582 592 delete READ_QUEUE_IN_TYPE ; 593 delete READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE; 594 delete READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE ; 583 595 delete READ_QUEUE_IN_HAS_IMMEDIAT ; 584 596 delete READ_QUEUE_IN_IMMEDIAT ; … … 606 618 delete READ_QUEUE_OUT_OPERATION ; 607 619 delete READ_QUEUE_OUT_TYPE ; 620 delete READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE; 621 delete READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE ; 608 622 delete READ_QUEUE_OUT_HAS_IMMEDIAT; 609 623 delete READ_QUEUE_OUT_IMMEDIAT ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Parameters.h
r75 r76 41 41 public : const uint32_t _nb_gpr_write ; 42 42 public : const uint32_t _nb_spr_write ; 43 public : const uint32_t _size_store_queue ; 44 public : const uint32_t _size_load_queue ; 43 45 44 46 public : const uint32_t _nb_gpr_read ; … … 73 75 uint32_t nb_type , 74 76 uint32_t nb_gpr_write , 75 uint32_t nb_spr_write ); 77 uint32_t nb_spr_write , 78 uint32_t size_store_queue , 79 uint32_t size_load_queue ); 80 76 81 public : Parameters (Parameters & param) ; 77 82 public : ~Parameters () ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Read_queue.h
r75 r76 5 5 * $Id$ 6 6 * 7 * [ 7 * [ Description ] 8 8 * 9 9 */ … … 45 45 public : Toperation_t _operation ; 46 46 public : Ttype_t _type ; 47 public : Tlsq_ptr_t _store_queue_ptr_write; 48 public : Tlsq_ptr_t _load_queue_ptr_write; 47 49 public : Tcontrol_t _has_immediat ; 48 50 public : Tgeneral_data_t _immediat ; … … 61 63 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Tread_queue_entry_t & x) 62 64 { 63 output_stream << " * _context_id : " << toString(x._context_id ) << std::endl 64 << " * _front_end_id : " << toString(x._front_end_id ) << std::endl 65 << " * _ooo_engine_id : " << toString(x._ooo_engine_id) << std::endl 66 << " * _rob_id : " << toString(x._rob_id ) << std::endl 67 << " * _operation : " << toString(x._operation ) << std::endl 68 << " * _type : " << toString(x._type ) << std::endl 69 << " * _has_immediat : " << toString(x._has_immediat ) << std::endl 70 << " * _immediat : " << toString(x._immediat ) << std::endl 71 << " * _read_ra : " << toString(x._read_ra ) << std::endl 72 << " * _num_reg_ra : " << toString(x._num_reg_ra ) << std::endl 73 << " * _read_rb : " << toString(x._read_rb ) << std::endl 74 << " * _num_reg_rb : " << toString(x._num_reg_rb ) << std::endl 75 << " * _read_rc : " << toString(x._read_rc ) << std::endl 76 << " * _num_reg_rc : " << toString(x._num_reg_rc ) << std::endl 77 << " * _write_rd : " << toString(x._write_rd ) << std::endl 78 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl 79 << " * _write_re : " << toString(x._write_re ) << std::endl 80 << " * _num_reg_re : " << toString(x._num_reg_re ) << std::endl; 65 output_stream << " * _context_id : " << toString(x._context_id ) << std::endl 66 << " * _front_end_id : " << toString(x._front_end_id ) << std::endl 67 << " * _ooo_engine_id : " << toString(x._ooo_engine_id) << std::endl 68 << " * _rob_id : " << toString(x._rob_id ) << std::endl 69 << " * _operation : " << toString(x._operation ) << std::endl 70 << " * _type : " << toString(x._type ) << std::endl 71 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl 72 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl 73 << " * _has_immediat : " << toString(x._has_immediat ) << std::endl 74 << " * _immediat : " << toString(x._immediat ) << std::endl 75 << " * _read_ra : " << toString(x._read_ra ) << std::endl 76 << " * _num_reg_ra : " << toString(x._num_reg_ra ) << std::endl 77 << " * _read_rb : " << toString(x._read_rb ) << std::endl 78 << " * _num_reg_rb : " << toString(x._num_reg_rb ) << std::endl 79 << " * _read_rc : " << toString(x._read_rc ) << std::endl 80 << " * _num_reg_rc : " << toString(x._num_reg_rc ) << std::endl 81 << " * _write_rd : " << toString(x._write_rd ) << std::endl 82 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl 83 << " * _write_re : " << toString(x._write_re ) << std::endl 84 << " * _num_reg_re : " << toString(x._num_reg_re ) << std::endl; 81 85 82 86 return output_stream; … … 93 97 public : Toperation_t _operation ; 94 98 public : Ttype_t _type ; 99 public : Tlsq_ptr_t _store_queue_ptr_write; 100 public : Tlsq_ptr_t _load_queue_ptr_write; 95 101 public : Tcontrol_t _has_immediat ; 96 102 public : Tgeneral_data_t _immediat ; … … 127 133 _operation = x._operation ; 128 134 _type = x._type ; 135 _store_queue_ptr_write = x._store_queue_ptr_write; 136 _load_queue_ptr_write = x._load_queue_ptr_write ; 129 137 _has_immediat = x._has_immediat ; 130 138 _immediat = x._immediat ; … … 157 165 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Tread_queue_head_entry_t & x) 158 166 { 159 output_stream << " * _context_id : " << x._context_id << std::endl 160 << " * _front_end_id : " << x._front_end_id << std::endl 161 << " * _ooo_engine_id : " << x._ooo_engine_id<< std::endl 162 << " * _rob_id : " << x._rob_id << std::endl 163 << " * _operation : " << x._operation << std::endl 164 << " * _type : " << x._type << std::endl 165 << " * _has_immediat : " << x._has_immediat << std::endl 166 << " * _immediat : " << x._immediat << std::endl 167 << " * _read_ra : " << x._read_ra << std::endl 168 << " * _read_ra_val : " << x._read_ra_val << std::endl 169 << " * _num_reg_ra : " << x._num_reg_ra << std::endl 170 << " * _data_ra_val : " << x._data_ra_val << std::endl 171 << " * _data_ra : " << x._data_ra << std::endl 172 << " * _read_rb : " << x._read_rb << std::endl 173 << " * _read_rb_val : " << x._read_rb_val << std::endl 174 << " * _num_reg_rb : " << x._num_reg_rb << std::endl 175 << " * _data_rb_val : " << x._data_rb_val << std::endl 176 << " * _data_rb : " << x._data_rb << std::endl 177 << " * _read_rc : " << x._read_rc << std::endl 178 << " * _read_rc_val : " << x._read_rc_val << std::endl 179 << " * _num_reg_rc : " << x._num_reg_rc << std::endl 180 << " * _data_rc_val : " << x._data_rc_val << std::endl 181 << " * _data_rc : " << x._data_rc << std::endl 182 << " * _write_rd : " << x._write_rd << std::endl 183 << " * _num_reg_rd : " << x._num_reg_rd << std::endl 184 << " * _write_re : " << x._write_re << std::endl 185 << " * _num_reg_re : " << x._num_reg_re << std::endl; 167 output_stream << " * _context_id : " << x._context_id << std::endl 168 << " * _front_end_id : " << x._front_end_id << std::endl 169 << " * _ooo_engine_id : " << x._ooo_engine_id<< std::endl 170 << " * _rob_id : " << x._rob_id << std::endl 171 << " * _operation : " << x._operation << std::endl 172 << " * _type : " << x._type << std::endl 173 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl 174 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl 175 << " * _has_immediat : " << x._has_immediat << std::endl 176 << " * _immediat : " << x._immediat << std::endl 177 << " * _read_ra : " << x._read_ra << std::endl 178 << " * _read_ra_val : " << x._read_ra_val << std::endl 179 << " * _num_reg_ra : " << x._num_reg_ra << std::endl 180 << " * _data_ra_val : " << x._data_ra_val << std::endl 181 << " * _data_ra : " << x._data_ra << std::endl 182 << " * _read_rb : " << x._read_rb << std::endl 183 << " * _read_rb_val : " << x._read_rb_val << std::endl 184 << " * _num_reg_rb : " << x._num_reg_rb << std::endl 185 << " * _data_rb_val : " << x._data_rb_val << std::endl 186 << " * _data_rb : " << x._data_rb << std::endl 187 << " * _read_rc : " << x._read_rc << std::endl 188 << " * _read_rc_val : " << x._read_rc_val << std::endl 189 << " * _num_reg_rc : " << x._num_reg_rc << std::endl 190 << " * _data_rc_val : " << x._data_rc_val << std::endl 191 << " * _data_rc : " << x._data_rc << std::endl 192 << " * _write_rd : " << x._write_rd << std::endl 193 << " * _num_reg_rd : " << x._num_reg_rd << std::endl 194 << " * _write_re : " << x._write_re << std::endl 195 << " * _num_reg_re : " << x._num_reg_re << std::endl; 186 196 187 197 return output_stream; … … 194 204 #endif 195 205 { 196 // -----[ 206 // -----[ fields ]---------------------------------------------------- 197 207 // Parameters 198 208 protected : const std::string _name; … … 207 217 208 218 #ifdef SYSTEMC 209 // ~~~~~[ 219 // ~~~~~[ Interface ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 210 220 // Interface 211 221 public : SC_CLOCK * in_CLOCK ; 212 222 public : SC_IN (Tcontrol_t ) * in_NRESET ; 213 223 214 // ~~~~~[ Interface "read_queue_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 215 216 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_VAL ; 217 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_IN_ACK ; 218 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_CONTEXT_ID ; 219 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_FRONT_END_ID ; 220 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_OOO_ENGINE_ID; 221 public : SC_IN (Tpacket_t ) * in_READ_QUEUE_IN_ROB_ID ; 222 public : SC_IN (Toperation_t ) * in_READ_QUEUE_IN_OPERATION ; 223 public : SC_IN (Ttype_t ) * in_READ_QUEUE_IN_TYPE ; 224 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_HAS_IMMEDIAT ; 225 public : SC_IN (Tgeneral_data_t ) * in_READ_QUEUE_IN_IMMEDIAT ; 226 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RA ; 227 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RA ; 228 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RB ; 229 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RB ; 230 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RC ; 231 public : SC_IN (Tspecial_address_t) * in_READ_QUEUE_IN_NUM_REG_RC ; 232 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_WRITE_RD ; 233 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RD ; 234 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_WRITE_RE ; 235 public : SC_IN (Tspecial_address_t) * in_READ_QUEUE_IN_NUM_REG_RE ; 236 237 // ~~~~~[ Interface "read_queue_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 238 239 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_VAL ; 240 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_OUT_ACK ; 241 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_CONTEXT_ID ; 242 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_FRONT_END_ID ; 243 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_OOO_ENGINE_ID; 244 public : SC_OUT(Tpacket_t ) * out_READ_QUEUE_OUT_ROB_ID ; 245 public : SC_OUT(Toperation_t ) * out_READ_QUEUE_OUT_OPERATION ; 246 public : SC_OUT(Ttype_t ) * out_READ_QUEUE_OUT_TYPE ; 247 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_HAS_IMMEDIAT; 248 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_IMMEDIAT ; 249 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RA ; 250 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RA ; 251 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RA_VAL ; 252 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_DATA_RA ; 253 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RB ; 254 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RB ; 255 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RB_VAL ; 256 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_DATA_RB ; 257 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RC ; 258 public : SC_OUT(Tspecial_address_t) * out_READ_QUEUE_OUT_NUM_REG_RC ; 259 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RC_VAL ; 260 public : SC_OUT(Tspecial_data_t ) * out_READ_QUEUE_OUT_DATA_RC ; 261 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_WRITE_RD ; 262 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RD ; 263 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_WRITE_RE ; 264 public : SC_OUT(Tspecial_address_t) * out_READ_QUEUE_OUT_NUM_REG_RE ; 265 266 // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 224 // ~~~~~[ Interface "read_queue_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 225 226 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_VAL ; 227 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_IN_ACK ; 228 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_CONTEXT_ID ; 229 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_FRONT_END_ID ; 230 public : SC_IN (Tcontext_t ) * in_READ_QUEUE_IN_OOO_ENGINE_ID ; 231 public : SC_IN (Tpacket_t ) * in_READ_QUEUE_IN_ROB_ID ; 232 public : SC_IN (Toperation_t ) * in_READ_QUEUE_IN_OPERATION ; 233 public : SC_IN (Ttype_t ) * in_READ_QUEUE_IN_TYPE ; 234 public : SC_IN (Tlsq_ptr_t ) * in_READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE; 235 public : SC_IN (Tlsq_ptr_t ) * in_READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE ; 236 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_HAS_IMMEDIAT ; 237 public : SC_IN (Tgeneral_data_t ) * in_READ_QUEUE_IN_IMMEDIAT ; 238 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RA ; 239 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RA ; 240 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RB ; 241 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RB ; 242 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_READ_RC ; 243 public : SC_IN (Tspecial_address_t) * in_READ_QUEUE_IN_NUM_REG_RC ; 244 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_WRITE_RD ; 245 public : SC_IN (Tgeneral_address_t) * in_READ_QUEUE_IN_NUM_REG_RD ; 246 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_IN_WRITE_RE ; 247 public : SC_IN (Tspecial_address_t) * in_READ_QUEUE_IN_NUM_REG_RE ; 248 249 // ~~~~~[ Interface "read_queue_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 250 251 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_VAL ; 252 public : SC_IN (Tcontrol_t ) * in_READ_QUEUE_OUT_ACK ; 253 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_CONTEXT_ID ; 254 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_FRONT_END_ID ; 255 public : SC_OUT(Tcontext_t ) * out_READ_QUEUE_OUT_OOO_ENGINE_ID ; 256 public : SC_OUT(Tpacket_t ) * out_READ_QUEUE_OUT_ROB_ID ; 257 public : SC_OUT(Toperation_t ) * out_READ_QUEUE_OUT_OPERATION ; 258 public : SC_OUT(Ttype_t ) * out_READ_QUEUE_OUT_TYPE ; 259 public : SC_OUT(Tlsq_ptr_t ) * out_READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE; 260 public : SC_OUT(Tlsq_ptr_t ) * out_READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE ; 261 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_HAS_IMMEDIAT ; 262 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_IMMEDIAT ; 263 // public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RA ; 264 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RA ; 265 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RA_VAL ; 266 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_DATA_RA ; 267 // public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RB ; 268 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RB ; 269 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RB_VAL ; 270 public : SC_OUT(Tgeneral_data_t ) * out_READ_QUEUE_OUT_DATA_RB ; 271 // public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_READ_RC ; 272 public : SC_OUT(Tspecial_address_t) * out_READ_QUEUE_OUT_NUM_REG_RC ; 273 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_DATA_RC_VAL ; 274 public : SC_OUT(Tspecial_data_t ) * out_READ_QUEUE_OUT_DATA_RC ; 275 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_WRITE_RD ; 276 public : SC_OUT(Tgeneral_address_t) * out_READ_QUEUE_OUT_NUM_REG_RD ; 277 public : SC_OUT(Tcontrol_t ) * out_READ_QUEUE_OUT_WRITE_RE ; 278 public : SC_OUT(Tspecial_address_t) * out_READ_QUEUE_OUT_NUM_REG_RE ; 279 280 // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 267 281 268 282 public : SC_OUT(Tcontrol_t ) ** out_GPR_READ_VAL ; … … 273 287 public : SC_IN (Tcontrol_t ) ** in_GPR_READ_DATA_VAL ; 274 288 275 // ~~~~~[ 289 // ~~~~~[ Interface "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 276 290 277 291 public : SC_OUT(Tcontrol_t ) ** out_SPR_READ_VAL ; … … 282 296 public : SC_IN (Tcontrol_t ) ** in_SPR_READ_DATA_VAL ; 283 297 284 // ~~~~~[ 298 // ~~~~~[ Interface "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 285 299 286 300 public : SC_IN (Tcontrol_t ) ** in_GPR_WRITE_VAL ; … … 289 303 public : SC_IN (Tgeneral_data_t ) ** in_GPR_WRITE_DATA ; 290 304 291 // ~~~~~[ 305 // ~~~~~[ Interface "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 292 306 293 307 public : SC_IN (Tcontrol_t ) ** in_SPR_WRITE_VAL ; … … 296 310 public : SC_IN (Tspecial_data_t ) ** in_SPR_WRITE_DATA ; 297 311 298 // ~~~~~[ 299 300 // ~~~~~[ 312 // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 313 314 // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 301 315 protected : Tread_queue_head_entry_t * _queue_head; 302 316 protected : std::queue<Tread_queue_entry_t *> * _queue; 303 317 304 // ~~~~~[ 318 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 305 319 306 320 protected :Tcontrol_t internal_READ_QUEUE_OUT_VAL ; … … 317 331 #endif 318 332 319 // -----[ 333 // -----[ methods ]--------------------------------------------------- 320 334 321 335 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Parameters.cpp
r68 r76 30 30 uint32_t nb_type , 31 31 uint32_t nb_gpr_write , 32 uint32_t nb_spr_write ): 32 uint32_t nb_spr_write , 33 uint32_t size_store_queue , 34 uint32_t size_load_queue ): 33 35 _size_queue (size_queue ), 34 36 _nb_context (nb_context ), … … 44 46 _nb_gpr_write (nb_gpr_write ), 45 47 _nb_spr_write (nb_spr_write ), 48 _size_store_queue (size_store_queue ), 49 _size_load_queue (size_load_queue ), 46 50 47 51 _nb_gpr_read (2 ), … … 67 71 + _size_operation //_operation 68 72 + _size_type //_type 73 + log2(_size_store_queue)//_store_queue_ptr_write 74 + log2(_size_load_queue )//_load_queue_ptr_write 69 75 + 1 //_has_immediat 70 76 + _size_general_data //_immediat … … 102 108 _nb_gpr_write (param._nb_gpr_write ), 103 109 _nb_spr_write (param._nb_spr_write ), 110 _size_store_queue (param._size_store_queue ), 111 _size_load_queue (param._size_load_queue ), 104 112 105 113 _nb_gpr_read (param._nb_gpr_read ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Parameters_print.cpp
r75 r76 39 39 xml.singleton_begin("nb_gpr_write "); xml.attribut("value",toString(_nb_gpr_write )); xml.singleton_end(); 40 40 xml.singleton_begin("nb_spr_write "); xml.attribut("value",toString(_nb_spr_write )); xml.singleton_end(); 41 xml.singleton_begin("size_store_queue "); xml.attribut("value",toString(_size_store_queue )); xml.singleton_end(); 42 xml.singleton_begin("size_load_queue "); xml.attribut("value",toString(_size_load_queue )); xml.singleton_end(); 43 41 44 xml.balise_close(); 42 45 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_allocation.cpp
r75 r76 70 70 in_READ_QUEUE_IN_OPERATION = interface->set_signal_in <Toperation_t > ("operation" ,_param->_size_operation ); 71 71 in_READ_QUEUE_IN_TYPE = interface->set_signal_in <Ttype_t > ("type" ,_param->_size_type ); 72 in_READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE = interface->set_signal_in <Tlsq_ptr_t> ("store_queue_ptr_write", log2(_param->_size_store_queue)); 73 in_READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE = interface->set_signal_in <Tlsq_ptr_t> ("load_queue_ptr_write" , log2(_param->_size_load_queue )); 72 74 in_READ_QUEUE_IN_HAS_IMMEDIAT = interface->set_signal_in <Tcontrol_t > ("has_immediat",1 ); 73 75 in_READ_QUEUE_IN_IMMEDIAT = interface->set_signal_in <Tgeneral_data_t > ("immediat" ,_param->_size_general_data ); … … 107 109 out_READ_QUEUE_OUT_OPERATION = interface->set_signal_out <Toperation_t > ("operation" ,_param->_size_operation ); 108 110 out_READ_QUEUE_OUT_TYPE = interface->set_signal_out <Ttype_t > ("type" ,_param->_size_type ); 111 out_READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE = interface->set_signal_out <Tlsq_ptr_t> ("store_queue_ptr_write", log2(_param->_size_store_queue)); 112 out_READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE = interface->set_signal_out <Tlsq_ptr_t> ("load_queue_ptr_write" , log2(_param->_size_load_queue )); 109 113 out_READ_QUEUE_OUT_HAS_IMMEDIAT = interface->set_signal_out <Tcontrol_t > ("has_immediat",1 ); 110 114 out_READ_QUEUE_OUT_IMMEDIAT = interface->set_signal_out <Tgeneral_data_t > ("immediat" ,_param->_size_general_data ); 111 out_READ_QUEUE_OUT_READ_RA = interface->set_signal_out <Tcontrol_t > ("read_ra" ,1 );115 // out_READ_QUEUE_OUT_READ_RA = interface->set_signal_out <Tcontrol_t > ("read_ra" ,1 ); 112 116 out_READ_QUEUE_OUT_NUM_REG_RA = interface->set_signal_out <Tgeneral_address_t> ("num_reg_ra" ,_param->_size_general_register ); 113 117 out_READ_QUEUE_OUT_DATA_RA_VAL = interface->set_signal_out <Tcontrol_t > ("data_ra_val" ,1 ); 114 118 out_READ_QUEUE_OUT_DATA_RA = interface->set_signal_out <Tgeneral_data_t > ("data_ra" ,_param->_size_general_data ); 115 out_READ_QUEUE_OUT_READ_RB = interface->set_signal_out <Tcontrol_t > ("read_rb" ,1 );119 // out_READ_QUEUE_OUT_READ_RB = interface->set_signal_out <Tcontrol_t > ("read_rb" ,1 ); 116 120 out_READ_QUEUE_OUT_NUM_REG_RB = interface->set_signal_out <Tgeneral_address_t> ("num_reg_rb" ,_param->_size_general_register ); 117 121 out_READ_QUEUE_OUT_DATA_RB_VAL = interface->set_signal_out <Tcontrol_t > ("data_rb_val" ,1 ); 118 122 out_READ_QUEUE_OUT_DATA_RB = interface->set_signal_out <Tgeneral_data_t > ("data_rb" ,_param->_size_general_data ); 119 out_READ_QUEUE_OUT_READ_RC = interface->set_signal_out <Tcontrol_t > ("read_rc" ,1 );123 // out_READ_QUEUE_OUT_READ_RC = interface->set_signal_out <Tcontrol_t > ("read_rc" ,1 ); 120 124 out_READ_QUEUE_OUT_NUM_REG_RC = interface->set_signal_out <Tspecial_address_t> ("num_reg_rc" ,_param->_size_special_register ); 121 125 out_READ_QUEUE_OUT_DATA_RC_VAL = interface->set_signal_out <Tcontrol_t > ("data_rc_val" ,1 ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_deallocation.cpp
r68 r76 41 41 delete in_READ_QUEUE_IN_OPERATION ; 42 42 delete in_READ_QUEUE_IN_TYPE ; 43 delete in_READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE; 44 delete in_READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE ; 43 45 delete in_READ_QUEUE_IN_HAS_IMMEDIAT ; 44 46 delete in_READ_QUEUE_IN_IMMEDIAT ; … … 68 70 delete out_READ_QUEUE_OUT_OPERATION ; 69 71 delete out_READ_QUEUE_OUT_TYPE ; 72 delete out_READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE; 73 delete out_READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE ; 70 74 delete out_READ_QUEUE_OUT_HAS_IMMEDIAT ; 71 75 delete out_READ_QUEUE_OUT_IMMEDIAT ; 72 delete out_READ_QUEUE_OUT_READ_RA ;76 // delete out_READ_QUEUE_OUT_READ_RA ; 73 77 delete out_READ_QUEUE_OUT_NUM_REG_RA ; 74 78 delete out_READ_QUEUE_OUT_DATA_RA_VAL ; 75 79 delete out_READ_QUEUE_OUT_DATA_RA ; 76 delete out_READ_QUEUE_OUT_READ_RB ;80 // delete out_READ_QUEUE_OUT_READ_RB ; 77 81 delete out_READ_QUEUE_OUT_NUM_REG_RB ; 78 82 delete out_READ_QUEUE_OUT_DATA_RB_VAL ; 79 83 delete out_READ_QUEUE_OUT_DATA_RB ; 80 delete out_READ_QUEUE_OUT_READ_RC ;84 // delete out_READ_QUEUE_OUT_READ_RC ; 81 85 delete out_READ_QUEUE_OUT_NUM_REG_RC ; 82 86 delete out_READ_QUEUE_OUT_DATA_RC_VAL ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_genMoore.cpp
r68 r76 43 43 PORT_WRITE (out_READ_QUEUE_OUT_OPERATION , _queue_head->_operation ); 44 44 PORT_WRITE (out_READ_QUEUE_OUT_TYPE , _queue_head->_type ); 45 PORT_WRITE (out_READ_QUEUE_OUT_STORE_QUEUE_PTR_WRITE, _queue_head->_store_queue_ptr_write); 46 PORT_WRITE (out_READ_QUEUE_OUT_LOAD_QUEUE_PTR_WRITE , _queue_head->_load_queue_ptr_write ); 45 47 PORT_WRITE (out_READ_QUEUE_OUT_HAS_IMMEDIAT, _queue_head->_has_immediat); 46 48 PORT_WRITE (out_READ_QUEUE_OUT_IMMEDIAT , _queue_head->_immediat ); 47 PORT_WRITE (out_READ_QUEUE_OUT_READ_RA , _queue_head->_read_ra );49 // PORT_WRITE (out_READ_QUEUE_OUT_READ_RA , _queue_head->_read_ra ); 48 50 PORT_WRITE (out_READ_QUEUE_OUT_NUM_REG_RA , _queue_head->_num_reg_ra ); 49 51 // PORT_WRITE (out_READ_QUEUE_OUT_DATA_RA_VAL , _queue_head->_data_ra_val ); // in genMealy_gpr 50 52 // PORT_WRITE (out_READ_QUEUE_OUT_DATA_RA , _queue_head->_data_ra ); // in genMealy_gpr 51 PORT_WRITE (out_READ_QUEUE_OUT_READ_RB , _queue_head->_read_rb );53 // PORT_WRITE (out_READ_QUEUE_OUT_READ_RB , _queue_head->_read_rb ); 52 54 PORT_WRITE (out_READ_QUEUE_OUT_NUM_REG_RB , _queue_head->_num_reg_rb ); 53 55 // PORT_WRITE (out_READ_QUEUE_OUT_DATA_RB_VAL , _queue_head->_data_rb_val ); // in genMealy_gpr 54 56 // PORT_WRITE (out_READ_QUEUE_OUT_DATA_RB , _queue_head->_data_rb ); // in genMealy_gpr 55 PORT_WRITE (out_READ_QUEUE_OUT_READ_RC , _queue_head->_read_rc );57 // PORT_WRITE (out_READ_QUEUE_OUT_READ_RC , _queue_head->_read_rc ); 56 58 PORT_WRITE (out_READ_QUEUE_OUT_NUM_REG_RC , _queue_head->_num_reg_rc ); 57 59 // PORT_WRITE (out_READ_QUEUE_OUT_DATA_RC_VAL , _queue_head->_data_rc_val ); // in genMealy_spr -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_transition.cpp
r75 r76 66 66 entry->_operation = PORT_READ(in_READ_QUEUE_IN_OPERATION ); 67 67 entry->_type = PORT_READ(in_READ_QUEUE_IN_TYPE ); 68 entry->_store_queue_ptr_write = PORT_READ(in_READ_QUEUE_IN_STORE_QUEUE_PTR_WRITE); 69 entry->_load_queue_ptr_write = PORT_READ(in_READ_QUEUE_IN_LOAD_QUEUE_PTR_WRITE ); 68 70 entry->_has_immediat = PORT_READ(in_READ_QUEUE_IN_HAS_IMMEDIAT); 69 71 entry->_immediat = PORT_READ(in_READ_QUEUE_IN_IMMEDIAT );
Note: See TracChangeset
for help on using the changeset viewer.