Ignore:
Timestamp:
Dec 10, 2008, 7:31:39 PM (15 years ago)
Author:
rosiere
Message:

Almost complete design
with Test and test platform

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/SelfTest/src/test.cpp

    r82 r88  
    5050#endif
    5151
     52  Tusage_t _usage = USE_ALL;
     53
     54//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     55//   _usage = usage_unset(_usage,USE_VHDL                 );
     56//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     57//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     58//   _usage = usage_unset(_usage,USE_POSITION             );
     59   _usage = usage_unset(_usage,USE_STATISTICS           );
     60//   _usage = usage_unset(_usage,USE_INFORMATION          );
     61
    5262  Load_Store_pointer_unit * _Load_Store_pointer_unit = new Load_Store_pointer_unit
    5363    (name.c_str(),
     
    5666#endif
    5767     _param,
    58      USE_ALL);
     68     _usage);
    5969 
    6070#ifdef SYSTEMC
     
    7989  ALLOC1_SC_SIGNAL( in_RETIRE_FRONT_END_ID         ," in_RETIRE_FRONT_END_ID         ",Tcontext_t  ,_param->_nb_inst_retire);
    8090  ALLOC1_SC_SIGNAL( in_RETIRE_CONTEXT_ID           ," in_RETIRE_CONTEXT_ID           ",Tcontext_t  ,_param->_nb_inst_retire);
    81   ALLOC1_SC_SIGNAL( in_RETIRE_TYPE                 ," in_RETIRE_TYPE                 ",Ttype_t     ,_param->_nb_inst_retire);
    82   ALLOC1_SC_SIGNAL( in_RETIRE_OPERATION            ," in_RETIRE_OPERATION            ",Toperation_t,_param->_nb_inst_retire);
     91//   ALLOC1_SC_SIGNAL( in_RETIRE_TYPE                 ," in_RETIRE_TYPE                 ",Ttype_t     ,_param->_nb_inst_retire);
     92//   ALLOC1_SC_SIGNAL( in_RETIRE_OPERATION            ," in_RETIRE_OPERATION            ",Toperation_t,_param->_nb_inst_retire);
     93  ALLOC1_SC_SIGNAL( in_RETIRE_USE_STORE_QUEUE      ," in_RETIRE_USE_STORE_QUEUE      ",Tcontrol_t  ,_param->_nb_inst_retire);
     94  ALLOC1_SC_SIGNAL( in_RETIRE_USE_LOAD_QUEUE       ," in_RETIRE_USE_LOAD_QUEUE       ",Tcontrol_t  ,_param->_nb_inst_retire);
    8395  ALLOC1_SC_SIGNAL( in_RETIRE_STORE_QUEUE_PTR_WRITE," in_RETIRE_STORE_QUEUE_PTR_WRITE",Tlsq_ptr_t  ,_param->_nb_inst_retire);
    8496  ALLOC1_SC_SIGNAL( in_RETIRE_LOAD_QUEUE_PTR_WRITE ," in_RETIRE_LOAD_QUEUE_PTR_WRITE ",Tlsq_ptr_t  ,_param->_nb_inst_retire);
     
    111123  if (_param->_have_port_context_id)
    112124  INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_CONTEXT_ID           ,_param->_nb_inst_retire);
    113   INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_TYPE                 ,_param->_nb_inst_retire);
    114   INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_OPERATION            ,_param->_nb_inst_retire);
     125//   INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_TYPE                 ,_param->_nb_inst_retire);
     126//   INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_OPERATION            ,_param->_nb_inst_retire);
     127  INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_USE_STORE_QUEUE      ,_param->_nb_inst_retire);
     128  INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_USE_LOAD_QUEUE       ,_param->_nb_inst_retire);
    115129  INSTANCE1_SC_SIGNAL(_Load_Store_pointer_unit, in_RETIRE_STORE_QUEUE_PTR_WRITE,_param->_nb_inst_retire);
    116130  if (_param->_have_port_load_queue_ptr)
     
    197211              in_RETIRE_FRONT_END_ID          [i]->write(it->_front_end_id         );
    198212              in_RETIRE_CONTEXT_ID            [i]->write(it->_context_id           );
    199               in_RETIRE_TYPE                  [i]->write(it->_type                 );
    200               in_RETIRE_OPERATION             [i]->write(it->_operation            );
     213//            in_RETIRE_TYPE                  [i]->write(it->_type                 );
     214//            in_RETIRE_OPERATION             [i]->write(it->_operation            );
     215              in_RETIRE_USE_STORE_QUEUE       [i]->write((it->_type == TYPE_MEMORY) and     is_operation_memory_store(it->_operation));
     216              in_RETIRE_USE_LOAD_QUEUE        [i]->write((it->_type == TYPE_MEMORY) and not is_operation_memory_store(it->_operation));
    201217              in_RETIRE_STORE_QUEUE_PTR_WRITE [i]->write(it->_store_queue_ptr_write);
    202218              in_RETIRE_LOAD_QUEUE_PTR_WRITE  [i]->write(it->_load_queue_ptr_write );
     
    214230          if (in_RETIRE_VAL[i]->read())
    215231            {
    216               if (in_RETIRE_TYPE [i]->read() != TYPE_MEMORY)
     232              if (not (in_RETIRE_USE_STORE_QUEUE [i]->read() or
     233                       in_RETIRE_USE_LOAD_QUEUE  [i]->read()))
    217234                TEST(Tcontrol_t, out_RETIRE_ACK[i]->read(),true);
    218235             
     
    366383  delete []  in_RETIRE_FRONT_END_ID         ;
    367384  delete []  in_RETIRE_CONTEXT_ID           ;
    368   delete []  in_RETIRE_TYPE                 ;
    369   delete []  in_RETIRE_OPERATION            ;
     385//   delete []  in_RETIRE_TYPE                 ;
     386//   delete []  in_RETIRE_OPERATION            ;
     387  delete []  in_RETIRE_USE_STORE_QUEUE      ;
     388  delete []  in_RETIRE_USE_LOAD_QUEUE       ;
    370389  delete []  in_RETIRE_STORE_QUEUE_PTR_WRITE;
    371390  delete []  in_RETIRE_LOAD_QUEUE_PTR_WRITE ;
Note: See TracChangeset for help on using the changeset viewer.