Changeset 122 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station
- Timestamp:
- Jun 3, 2009, 10:15:51 AM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Reservation_station.h
r82 r122 74 74 public : SC_IN (Ttype_t ) * in_INSERT_TYPE ; 75 75 public : SC_IN (Tlsq_ptr_t ) * in_INSERT_STORE_QUEUE_PTR_WRITE; 76 public : SC_IN (Tlsq_ptr_t ) * in_INSERT_STORE_QUEUE_PTR_READ ; 77 public : SC_IN (Tcontrol_t ) * in_INSERT_STORE_QUEUE_EMPTY ; 76 78 public : SC_IN (Tlsq_ptr_t ) * in_INSERT_LOAD_QUEUE_PTR_WRITE ; 77 79 public : SC_IN (Tcontrol_t ) * in_INSERT_HAS_IMMEDIAT ; … … 104 106 public : SC_OUT(Ttype_t ) ** out_RETIRE_TYPE ; 105 107 public : SC_OUT(Tlsq_ptr_t ) ** out_RETIRE_STORE_QUEUE_PTR_WRITE; 108 public : SC_OUT(Tlsq_ptr_t ) ** out_RETIRE_STORE_QUEUE_PTR_READ ; 109 public : SC_OUT(Tcontrol_t ) ** out_RETIRE_STORE_QUEUE_EMPTY ; 106 110 public : SC_OUT(Tlsq_ptr_t ) ** out_RETIRE_LOAD_QUEUE_PTR_WRITE ; 107 111 public : SC_OUT(Tcontrol_t ) ** out_RETIRE_HAS_IMMEDIAT ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Types.h
r82 r122 29 29 public : Ttype_t _type ; 30 30 public : Tlsq_ptr_t _store_queue_ptr_write; 31 public : Tlsq_ptr_t _store_queue_ptr_read ; 32 public : Tcontrol_t _store_queue_empty ; 31 33 public : Tlsq_ptr_t _load_queue_ptr_write ; 32 34 public : Tcontrol_t _has_immediat; … … 59 61 << " * _type : " << toString(x._type ) << std::endl 60 62 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl 63 << " * _store_queue_ptr_read : " << toString(x._store_queue_ptr_read ) << std::endl 64 << " * _store_queue_empty : " << toString(x._store_queue_empty ) << std::endl 61 65 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl 62 66 << " * _has_immediat : " << toString(x._has_immediat ) << std::endl -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station_allocation.cpp
r112 r122 64 64 ALLOC0_SIGNAL_IN ( in_INSERT_TYPE ,"type" ,Ttype_t ,_param->_size_type ); 65 65 ALLOC0_SIGNAL_IN ( in_INSERT_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t ,_param->_size_store_queue_ptr ); 66 ALLOC0_SIGNAL_IN ( in_INSERT_STORE_QUEUE_PTR_READ ,"store_queue_ptr_read" ,Tlsq_ptr_t ,_param->_size_store_queue_ptr ); 67 ALLOC0_SIGNAL_IN ( in_INSERT_STORE_QUEUE_EMPTY ,"store_queue_empty" ,Tcontrol_t ,1 ); 66 68 ALLOC0_SIGNAL_IN ( in_INSERT_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t ,_param->_size_load_queue_ptr ); 67 69 ALLOC0_SIGNAL_IN ( in_INSERT_HAS_IMMEDIAT ,"has_immediat" ,Tcontrol_t ,1 ); … … 100 102 ALLOC1_SIGNAL_OUT(out_RETIRE_TYPE ,"type" ,Ttype_t ,_param->_size_type); 101 103 ALLOC1_SIGNAL_OUT(out_RETIRE_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t ,_param->_size_store_queue_ptr); 104 ALLOC1_SIGNAL_OUT(out_RETIRE_STORE_QUEUE_PTR_READ ,"store_queue_ptr_read" ,Tlsq_ptr_t ,_param->_size_store_queue_ptr); 105 ALLOC1_SIGNAL_OUT(out_RETIRE_STORE_QUEUE_EMPTY ,"store_queue_empty" ,Tcontrol_t ,1); 102 106 ALLOC1_SIGNAL_OUT(out_RETIRE_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t ,_param->_size_load_queue_ptr ); 103 107 ALLOC1_SIGNAL_OUT(out_RETIRE_HAS_IMMEDIAT ,"has_immediat" ,Tcontrol_t ,1); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station_deallocation.cpp
r112 r122 43 43 DELETE0_SIGNAL( in_INSERT_TYPE ,_param->_size_type ); 44 44 DELETE0_SIGNAL( in_INSERT_STORE_QUEUE_PTR_WRITE,_param->_size_store_queue_ptr ); 45 DELETE0_SIGNAL( in_INSERT_STORE_QUEUE_PTR_READ ,_param->_size_store_queue_ptr ); 46 DELETE0_SIGNAL( in_INSERT_STORE_QUEUE_EMPTY ,1); 45 47 DELETE0_SIGNAL( in_INSERT_LOAD_QUEUE_PTR_WRITE ,_param->_size_load_queue_ptr ); 46 48 DELETE0_SIGNAL( in_INSERT_HAS_IMMEDIAT ,1 ); … … 72 74 DELETE1_SIGNAL(out_RETIRE_TYPE ,_param->_nb_inst_retire,_param->_size_type); 73 75 DELETE1_SIGNAL(out_RETIRE_STORE_QUEUE_PTR_WRITE,_param->_nb_inst_retire,_param->_size_store_queue_ptr); 76 DELETE1_SIGNAL(out_RETIRE_STORE_QUEUE_PTR_READ ,_param->_nb_inst_retire,_param->_size_store_queue_ptr); 77 DELETE1_SIGNAL(out_RETIRE_STORE_QUEUE_EMPTY ,_param->_nb_inst_retire,1); 74 78 DELETE1_SIGNAL(out_RETIRE_LOAD_QUEUE_PTR_WRITE ,_param->_nb_inst_retire,_param->_size_load_queue_ptr ); 75 79 DELETE1_SIGNAL(out_RETIRE_HAS_IMMEDIAT ,_param->_nb_inst_retire,1); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station_genMoore.cpp
r110 r122 113 113 PORT_WRITE(out_RETIRE_TYPE [i],_queue[index_find]._type); 114 114 PORT_WRITE(out_RETIRE_STORE_QUEUE_PTR_WRITE [i],_queue[index_find]._store_queue_ptr_write); 115 PORT_WRITE(out_RETIRE_STORE_QUEUE_PTR_READ [i],_queue[index_find]._store_queue_ptr_read ); 116 PORT_WRITE(out_RETIRE_STORE_QUEUE_EMPTY [i],_queue[index_find]._store_queue_empty ); 115 117 if (_param->_have_port_load_queue_ptr) 116 118 PORT_WRITE(out_RETIRE_LOAD_QUEUE_PTR_WRITE [i],_queue[index_find]._load_queue_ptr_write ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station_transition.cpp
r118 r122 26 26 for (uint32_t it_dump=0;it_dump<_param->_size_queue; it_dump++) \ 27 27 if (_queue_valid [it_dump]) \ 28 log_printf(TRACE,Reservation_station,FUNCTION," * [%.4d] %.2d %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d , %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.2x, %.1d %.4d, %.1d %.4d (%s)", \28 log_printf(TRACE,Reservation_station,FUNCTION," * [%.4d] %.2d %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d %.1d %.2d, %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.2x, %.1d %.4d, %.1d %.4d (%s)", \ 29 29 it_dump, \ 30 30 _queue[it_dump]._context_id , \ … … 35 35 _queue[it_dump]._operation , \ 36 36 _queue[it_dump]._store_queue_ptr_write, \ 37 _queue[it_dump]._store_queue_ptr_read , \ 38 _queue[it_dump]._store_queue_empty , \ 37 39 _queue[it_dump]._load_queue_ptr_write , \ 38 40 _queue[it_dump]._has_immediat , \ … … 61 63 for (uint32_t it_dump=0;it_dump<_param->_size_queue; it_dump++) \ 62 64 if (it_dump < _queue_control->nb_elt()) \ 63 log_printf(TRACE,Reservation_station,FUNCTION," * [%.4d] %.2d %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d , %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.2x, %.1d %.4d, %.1d %.4d (%s)", \65 log_printf(TRACE,Reservation_station,FUNCTION," * [%.4d] %.2d %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d %.1d %.2d, %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.8x, %.4d %.1d %.2x, %.1d %.4d, %.1d %.4d (%s)", \ 64 66 (*_queue_control)[it_dump], \ 65 67 _queue[(*_queue_control)[it_dump]]._context_id , \ … … 70 72 _queue[(*_queue_control)[it_dump]]._operation , \ 71 73 _queue[(*_queue_control)[it_dump]]._store_queue_ptr_write, \ 74 _queue[(*_queue_control)[it_dump]]._store_queue_ptr_read , \ 75 _queue[(*_queue_control)[it_dump]]._store_queue_empty , \ 72 76 _queue[(*_queue_control)[it_dump]]._load_queue_ptr_write , \ 73 77 _queue[(*_queue_control)[it_dump]]._has_immediat , \ … … 292 296 _queue[index]._type = PORT_READ(in_INSERT_TYPE ); 293 297 _queue[index]._store_queue_ptr_write = PORT_READ(in_INSERT_STORE_QUEUE_PTR_WRITE); 298 _queue[index]._store_queue_ptr_read = PORT_READ(in_INSERT_STORE_QUEUE_PTR_READ ); 299 _queue[index]._store_queue_empty = PORT_READ(in_INSERT_STORE_QUEUE_EMPTY ); 294 300 if (_param->_have_port_load_queue_ptr) 295 301 _queue[index]._load_queue_ptr_write = PORT_READ(in_INSERT_LOAD_QUEUE_PTR_WRITE );
Note: See TracChangeset
for help on using the changeset viewer.