Ignore:
Timestamp:
Jul 8, 2009, 8:40:08 PM (15 years ago)
Author:
rosiere
Message:

1) add constant method
2) test with systemc 2.2.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/SelfTest/src/test.cpp

    r128 r131  
    6767  sc_signal<Toperation_t         >  ** out_DECOD_OPERATION                ;
    6868  sc_signal<Tcontrol_t           >  ** out_DECOD_NO_EXECUTE               ;
     69  sc_signal<Tcontrol_t           >  ** out_DECOD_LAST_EVENT               ;
    6970  sc_signal<Tcontrol_t           >  ** out_DECOD_IS_DELAY_SLOT            ;
    7071  sc_signal<Tgeneral_data_t      >  ** out_DECOD_ADDRESS                  ;
     
    144145  ALLOC1_SC_SIGNAL(out_DECOD_OPERATION                ,"out_DECOD_OPERATION                ",Toperation_t         ,_param->_sum_inst_decod);
    145146  ALLOC1_SC_SIGNAL(out_DECOD_NO_EXECUTE               ,"out_DECOD_NO_EXECUTE               ",Tcontrol_t           ,_param->_sum_inst_decod);
     147  ALLOC1_SC_SIGNAL(out_DECOD_LAST_EVENT               ,"out_DECOD_LAST_EVENT               ",Tcontrol_t           ,_param->_sum_inst_decod);
    146148  ALLOC1_SC_SIGNAL(out_DECOD_IS_DELAY_SLOT            ,"out_DECOD_IS_DELAY_SLOT            ",Tcontrol_t           ,_param->_sum_inst_decod);
    147149  ALLOC1_SC_SIGNAL(out_DECOD_ADDRESS                  ,"out_DECOD_ADDRESS                  ",Tgeneral_data_t      ,_param->_sum_inst_decod);
     
    234236  INSTANCE1_SC_SIGNAL(_Front_end,out_DECOD_OPERATION                ,_param->_sum_inst_decod);
    235237  INSTANCE1_SC_SIGNAL(_Front_end,out_DECOD_NO_EXECUTE               ,_param->_sum_inst_decod);
     238  INSTANCE1_SC_SIGNAL(_Front_end,out_DECOD_LAST_EVENT               ,_param->_sum_inst_decod);
    236239  INSTANCE1_SC_SIGNAL(_Front_end,out_DECOD_IS_DELAY_SLOT            ,_param->_sum_inst_decod);
    237240#ifdef DEBUG
     
    319322  LABEL("Initialisation");
    320323
    321   for (uint32_t i=0; i<_param->_nb_context; ++i)
    322     {
    323       in_ICACHE_REQ_ACK     [i]->write(0);
    324       in_ICACHE_RSP_VAL     [i]->write(0);
    325       in_EVENT_ACK          [i]->write(0);
    326       in_SPR_EVENT_ACK      [i]->write(0);
    327       in_NB_INST_COMMIT_ALL [i]->write(0); // no inst
    328       in_NB_INST_COMMIT_MEM [i]->write(0); // no inst
    329       in_SPR_SR_IEE         [i]->write(0); // interrupt disable
    330       in_SPR_SR_EPH         [i]->write(0); // exception msb = 0
    331       in_INTERRUPT_ENABLE   [i]->write(0); // no interrupt
    332     }
    333   for (uint32_t i=0; i<_param->_sum_inst_decod; ++i)
    334     in_DECOD_ACK [i]->write(0);
    335   for (uint32_t i=0; i<_param->_nb_inst_branch_complete; ++i)
    336     in_BRANCH_COMPLETE_VAL [i]->write(0);
    337   in_COMMIT_EVENT_VAL->write(0);
    338 
    339 
    340   for (uint32_t i=0; i<_param->_nb_context; ++i)
    341     {
    342       TEST(Tcontrol_t,out_ICACHE_REQ_VAL      [i]->read(),0);
    343       TEST(Tcontrol_t,out_ICACHE_RSP_ACK      [i]->read(),1); // Can accept a respons
    344       TEST(Tcontrol_t,out_EVENT_VAL           [i]->read(),0);
    345       TEST(Tcontrol_t,out_SPR_EVENT_VAL       [i]->read(),0);
    346       TEST(Tdepth_t  ,out_DEPTH_MIN           [i]->read(),0); // no branch speculated
    347       TEST(Tdepth_t  ,out_DEPTH_MAX           [i]->read(),0); // no branch speculated
    348       TEST(Tdepth_t  ,out_DEPTH_FULL          [i]->read(),0); // no branch speculated
    349     }
    350   for (uint32_t i=0; i<_param->_sum_inst_decod; ++i)
    351   TEST(Tcontrol_t,out_DECOD_VAL           [i]->read(),0);
    352   for (uint32_t i=0; i<_param->_nb_inst_branch_complete; ++i)
    353   TEST(Tcontrol_t,out_BRANCH_COMPLETE_ACK [i]->read(),0); // can't accept (interactive)
    354   TEST(Tcontrol_t,out_COMMIT_EVENT_ACK       ->read(),1); // can accept
     324//   for (uint32_t i=0; i<_param->_nb_context; ++i)
     325//     {
     326//       in_ICACHE_REQ_ACK     [i]->write(0);
     327//       in_ICACHE_RSP_VAL     [i]->write(0);
     328//       in_EVENT_ACK          [i]->write(0);
     329//       in_SPR_EVENT_ACK      [i]->write(0);
     330//       in_NB_INST_COMMIT_ALL [i]->write(0); // no inst
     331//       in_NB_INST_COMMIT_MEM [i]->write(0); // no inst
     332//       in_SPR_SR_IEE         [i]->write(0); // interrupt disable
     333//       in_SPR_SR_EPH         [i]->write(0); // exception msb = 0
     334//       in_INTERRUPT_ENABLE   [i]->write(0); // no interrupt
     335//     }
     336//   for (uint32_t i=0; i<_param->_sum_inst_decod; ++i)
     337//     in_DECOD_ACK [i]->write(0);
     338//   for (uint32_t i=0; i<_param->_nb_inst_branch_complete; ++i)
     339//     in_BRANCH_COMPLETE_VAL [i]->write(0);
     340//   in_COMMIT_EVENT_VAL->write(0);
     341
     342
     343//   for (uint32_t i=0; i<_param->_nb_context; ++i)
     344//     {
     345//       TEST(Tcontrol_t,out_ICACHE_REQ_VAL      [i]->read(),0);
     346//       TEST(Tcontrol_t,out_ICACHE_RSP_ACK      [i]->read(),1); // Can accept a respons
     347//       TEST(Tcontrol_t,out_EVENT_VAL           [i]->read(),0);
     348//       TEST(Tcontrol_t,out_SPR_EVENT_VAL       [i]->read(),0);
     349//       TEST(Tdepth_t  ,out_DEPTH_MIN           [i]->read(),0); // no branch speculated
     350//       TEST(Tdepth_t  ,out_DEPTH_MAX           [i]->read(),0); // no branch speculated
     351//       TEST(Tdepth_t  ,out_DEPTH_FULL          [i]->read(),0); // no branch speculated
     352//     }
     353//   for (uint32_t i=0; i<_param->_sum_inst_decod; ++i)
     354//   TEST(Tcontrol_t,out_DECOD_VAL           [i]->read(),0);
     355//   for (uint32_t i=0; i<_param->_nb_inst_branch_complete; ++i)
     356//   TEST(Tcontrol_t,out_BRANCH_COMPLETE_ACK [i]->read(),0); // can't accept (interactive)
     357//   TEST(Tcontrol_t,out_COMMIT_EVENT_ACK       ->read(),1); // can accept
    355358
    356359  LABEL("Reset");
     
    361364  LABEL("Loop of Test");
    362365
    363   for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++)
     366  for (uint32_t iteration=0; iteration< NB_ITERATION; iteration ++)
    364367    {
    365368      LABEL("Iteration %d",iteration);
     
    399402  DELETE1_SC_SIGNAL(out_DECOD_OPERATION                ,_param->_sum_inst_decod);
    400403  DELETE1_SC_SIGNAL(out_DECOD_NO_EXECUTE               ,_param->_sum_inst_decod);
     404  DELETE1_SC_SIGNAL(out_DECOD_LAST_EVENT               ,_param->_sum_inst_decod);
    401405  DELETE1_SC_SIGNAL(out_DECOD_IS_DELAY_SLOT            ,_param->_sum_inst_decod);
    402406  DELETE1_SC_SIGNAL(out_DECOD_ADDRESS                  ,_param->_sum_inst_decod);
Note: See TracChangeset for help on using the changeset viewer.