Ignore:
Timestamp:
Feb 27, 2009, 7:37:40 PM (15 years ago)
Author:
rosiere
Message:

1) Decod_queue : multi implementation (one_fifo, multi_fifo)
2) Issue_queue : multi implementation (in_order, out_of_order)
3) Direction : Add Meta predictor
4) Context_State : re add Branch_complete, More priority to Load miss (is not speculative)
5) Return_Address_Stack : update reg_PREDICT pointer on decod miss prediction
6) UPT : Fix bug in multi event
7) Prediction_glue : in read_stack case, insert in UPT pc_next
8) Rename select : when rob have an event (need flush), read_r{a,b,c} and write_r{d,e} is set at 0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Direction/Meta_Predictor/SelfTest/src/main.cpp

    r110 r111  
    77
    88#include "Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Direction/Meta_Predictor/SelfTest/include/test.h"
     9#include "Behavioural/include/Selftest.h"
    910
    10 #define NB_PARAMS 0
     11#define NB_PARAMS 3+7*3
    1112
    1213void usage (int argc, char * argv[])
     
    1415  err (_("<Usage> %s name_instance list_params.\n"),argv[0]);
    1516  err (_("list_params is :\n"));
    16   err (_(" *  ()\n"));
    17 
     17  err (_(" * nb_inst_predict            (uint32_t)\n"));
     18  err (_(" * nb_inst_update             (uint32_t)\n"));
     19  err (_(" * size_address               (uint32_t)\n"));
     20  err (_(" * have_bht               [3] (bool    )\n"));
     21  err (_(" * bht_size_shifter       [3] (uint32_t)\n"));
     22  err (_(" * bht_nb_shifter         [3] (uint32_t)\n"));
     23  err (_(" * have_pht               [3] (bool    )\n"));
     24  err (_(" * pht_size_counter       [3] (uint32_t)\n"));
     25  err (_(" * pht_nb_counter         [3] (uint32_t)\n"));
     26  err (_(" * pht_size_address_share [3] (uint32_t)\n"));
    1827  exit (1);
    1928}
     
    3140
    3241  string name = argv[x++];
     42  uint32_t _nb_inst_predict           ;
     43  uint32_t _nb_inst_update            ;
     44  uint32_t _size_address              ;
     45  bool     _have_bht               [3];
     46  uint32_t _bht_size_shifter       [3];
     47  uint32_t _bht_nb_shifter         [3];
     48  bool     _have_pht               [3];
     49  uint32_t _pht_size_counter       [3];
     50  uint32_t _pht_nb_counter         [3];
     51  uint32_t _pht_size_address_share [3];
     52
     53  SELFTEST0(_nb_inst_predict           ,uint32_t,argv,x);
     54  SELFTEST0(_nb_inst_update            ,uint32_t,argv,x);
     55  SELFTEST0(_size_address              ,uint32_t,argv,x);
     56
     57  for (uint32_t i=0; i<3; ++i)
     58    {
     59  SELFTEST0(_have_bht               [i],bool    ,argv,x);
     60  SELFTEST0(_bht_size_shifter       [i],uint32_t,argv,x);
     61  SELFTEST0(_bht_nb_shifter         [i],uint32_t,argv,x);
     62  SELFTEST0(_have_pht               [i],bool    ,argv,x);
     63  SELFTEST0(_pht_size_counter       [i],uint32_t,argv,x);
     64  SELFTEST0(_pht_nb_counter         [i],uint32_t,argv,x);
     65  SELFTEST0(_pht_size_address_share [i],uint32_t,argv,x);
     66    }
    3367
    3468  int _return = EXIT_SUCCESS;
     
    3771      morpheo::behavioural::core::multi_front_end::front_end::prediction_unit::direction::meta_predictor::Parameters * param = new morpheo::behavioural::core::multi_front_end::front_end::prediction_unit::direction::meta_predictor::Parameters
    3872        (
     73         _nb_inst_predict       ,
     74         _nb_inst_update        ,
     75         _size_address          ,
     76         _have_bht              ,
     77         _bht_size_shifter      ,
     78         _bht_nb_shifter        ,
     79         _have_pht              ,
     80         _pht_size_counter      ,
     81         _pht_nb_counter        ,
     82         _pht_size_address_share,
    3983         true // is_toplevel
    4084        );
Note: See TracChangeset for help on using the changeset viewer.