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_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Parameters.cpp

    r81 r88  
    1919#undef  FUNCTION
    2020#define FUNCTION "Register_unit_Glue::Parameters"
    21   Parameters::Parameters (const uint32_t   nb_ooo_engine        ,
    22                           const uint32_t   size_general_data    ,
    23                           const uint32_t   size_special_data    ,
    24                           const uint32_t   nb_gpr_read          ,
    25                           const uint32_t   nb_spr_read          ,   
    26                           const uint32_t   nb_gpr_write         ,
    27                           const uint32_t   nb_spr_write         ,
    28                           const uint32_t * nb_inst_insert_rob   ,
    29                           const uint32_t * nb_inst_retire_rob   ):
    30     _nb_ooo_engine        (nb_ooo_engine    ),
    31     _size_general_data    (size_general_data),
    32     _size_special_data    (size_special_data),
    33     _nb_gpr_read          (nb_gpr_read      ),
    34     _nb_spr_read          (nb_spr_read      ),   
    35     _nb_gpr_write         (nb_gpr_write     ),
    36     _nb_spr_write         (nb_spr_write     ),
    37     _nb_inst_insert_rob   (nb_inst_insert_rob),
    38     _nb_inst_retire_rob   (nb_inst_retire_rob),
    39     _have_port_ooo_engine_id (nb_ooo_engine>1)
     21  Parameters::Parameters (uint32_t   nb_ooo_engine        ,
     22                          uint32_t   size_general_data    ,
     23                          uint32_t   size_special_data    ,
     24                          uint32_t   nb_gpr_read          ,
     25                          uint32_t   nb_spr_read          ,   
     26                          uint32_t   nb_gpr_write         ,
     27                          uint32_t   nb_spr_write         ,
     28                          uint32_t * nb_inst_insert_rob   ,
     29                          uint32_t * nb_inst_retire_rob   ,
     30                          bool       is_toplevel          )
    4031  {
    4132    log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin");
     33   
     34    _nb_ooo_engine           = nb_ooo_engine     ;
     35    _nb_gpr_read             = nb_gpr_read       ;
     36    _nb_spr_read             = nb_spr_read       ;   
     37    _nb_gpr_write            = nb_gpr_write      ;
     38    _nb_spr_write            = nb_spr_write      ;
     39    _nb_inst_insert_rob      = nb_inst_insert_rob;
     40    _nb_inst_retire_rob      = nb_inst_retire_rob;
     41
    4242    test();
     43
     44    if (is_toplevel)
     45      {
     46        _size_ooo_engine_id      = log2(nb_ooo_engine);
     47        _size_general_data       = size_general_data ;
     48        _size_special_data       = size_special_data ;
     49       
     50        _have_port_ooo_engine_id = _size_ooo_engine_id > 0;
     51
     52        copy();
     53      }
     54
    4355    log_printf(FUNC,Register_unit_Glue,FUNCTION,"End");
    4456  };
    4557 
     58// #undef  FUNCTION
     59// #define FUNCTION "Register_unit_Glue::Parameters (copy)"
     60//   Parameters::Parameters (Parameters & param):
     61//     _nb_ooo_engine        (param._nb_ooo_engine    ),
     62//     _size_general_data    (param._size_general_data),
     63//     _size_special_data    (param._size_special_data),
     64//     _nb_gpr_read          (param._nb_gpr_read      ),
     65//     _nb_spr_read          (param._nb_spr_read      ),   
     66//     _nb_gpr_write         (param._nb_gpr_write     ),
     67//     _nb_spr_write         (param._nb_spr_write     ),
     68//     _nb_inst_insert_rob   (param._nb_inst_insert_rob),
     69//     _nb_inst_retire_rob   (param._nb_inst_retire_rob),
     70//     _have_port_ooo_engine_id (param._have_port_ooo_engine_id)
     71//   {
     72//     log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin");
     73//     test();
     74//     log_printf(FUNC,Register_unit_Glue,FUNCTION,"End");
     75//   };
     76
    4677#undef  FUNCTION
    47 #define FUNCTION "Register_unit_Glue::Parameters (copy)"
    48   Parameters::Parameters (Parameters & param):
    49     _nb_ooo_engine        (param._nb_ooo_engine    ),
    50     _size_general_data    (param._size_general_data),
    51     _size_special_data    (param._size_special_data),
    52     _nb_gpr_read          (param._nb_gpr_read      ),
    53     _nb_spr_read          (param._nb_spr_read      ),   
    54     _nb_gpr_write         (param._nb_gpr_write     ),
    55     _nb_spr_write         (param._nb_spr_write     ),
    56     _nb_inst_insert_rob   (param._nb_inst_insert_rob),
    57     _nb_inst_retire_rob   (param._nb_inst_retire_rob),
    58     _have_port_ooo_engine_id (param._have_port_ooo_engine_id)
     78#define FUNCTION "Register_unit_Glue::~Parameters"
     79  Parameters::~Parameters (void)
    5980  {
    6081    log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin");
    61     test();
    6282    log_printf(FUNC,Register_unit_Glue,FUNCTION,"End");
    6383  };
    6484
    6585#undef  FUNCTION
    66 #define FUNCTION "Register_unit_Glue::~Parameters"
    67   Parameters::~Parameters ()
     86#define FUNCTION "Register_unit_Glue::copy"
     87  void Parameters::copy (void)
    6888  {
    6989    log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin");
Note: See TracChangeset for help on using the changeset viewer.