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

Almost complete design
with Test and test platform

Location:
trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic
Files:
54 added
82 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : Counter_library_clean
    2525
     26local_clean                     :
     27
    2628include                         ../Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/SelfTest/src/test.cpp

    r82 r88  
    3737#endif
    3838
     39  Tusage_t _usage = USE_ALL;
     40
     41//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     42//   _usage = usage_unset(_usage,USE_VHDL                 );
     43//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     44//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     45//   _usage = usage_unset(_usage,USE_POSITION             );
     46//   _usage = usage_unset(_usage,USE_STATISTICS           );
     47//   _usage = usage_unset(_usage,USE_INFORMATION          );
     48
    3949  Counter * _Counter = new Counter (name.c_str(),
    4050#ifdef STATISTICS
     
    4252#endif
    4353                                    param,
    44                                     USE_ALL);
     54                                    _usage);
    4555 
    4656#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/include/Counter.h

    r82 r88  
    8585  public  :          ~Counter             (void);
    8686                                               
    87 #ifdef SYSTEMC                                 
    8887  private : void     allocation                (void);
    8988  private : void     deallocation              (void);
    9089                                               
     90#ifdef SYSTEMC                                 
    9191#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    9292  public  : void     transition                (void);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/include/Parameters.h

    r81 r88  
    2929  public : Parameters  (uint32_t size_data,
    3030                        uint32_t nb_port  );
    31   public : Parameters  (Parameters & param) ;
     31//   public : Parameters  (Parameters & param) ;
    3232  public : ~Parameters () ;
     33
     34  public :        void             copy       (void);
    3335
    3436  public :        Parameters_test  msg_error  (void);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/src/Counter.cpp

    r82 r88  
    3232    log_printf(FUNC,Counter,"Counter","Begin");
    3333
    34 #ifdef SYSTEMC
     34#if DEBUG_Counter == true
     35    log_printf(INFO,Counter,FUNCTION,_("<%s> Parameters"),_name.c_str());
     36
     37    std::cout << param << std::endl;
     38#endif   
     39
     40    log_printf(INFO,Core,FUNCTION,_("<%s> Allocation"),_name.c_str());
    3541    allocation ();
    36 #endif
    3742
    3843#ifdef STATISTICS
    39     // Allocation of statistics
    40     statistics_declaration(param_statistics);
     44    if (usage_is_set(_usage,USE_STATISTICS))
     45      {
     46        log_printf(INFO,Core,FUNCTION,_("<%s> Allocation of statistics"),_name.c_str());
     47
     48        // Allocation of statistics
     49        statistics_declaration(param_statistics);
     50      }
    4151#endif
    4252
    4353#ifdef VHDL
    44     // generate the vhdl
    45     vhdl();
     54    if (usage_is_set(_usage,USE_VHDL))
     55      {
     56        // generate the vhdl
     57        log_printf(INFO,Core,FUNCTION,_("<%s> Generate the vhdl"),_name.c_str());
     58       
     59        vhdl();
     60      }
    4661#endif
    4762
    4863#ifdef SYSTEMC
    4964
     65    if (usage_is_set(_usage,USE_SYSTEMC))
     66      {
    5067#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    51     SC_METHOD (transition);
    52     dont_initialize ();
    53     sensitive << (*(in_CLOCK)).pos();
     68        log_printf(INFO,Core,FUNCTION,_("<%s> Method - transition"),_name.c_str());
     69
     70        SC_METHOD (transition);
     71        dont_initialize ();
     72        sensitive << (*(in_CLOCK)).pos();
    5473#endif
    5574
    56     SC_METHOD (genMealy);
    57     dont_initialize ();
    58     for (uint32_t i=0; i<_param._nb_port; i++)
    59       sensitive << *(in_COUNTER_DATA   [i])
    60                 << *(in_COUNTER_ADDSUB [i]);
    61 
     75        log_printf(INFO,Core,FUNCTION,_("<%s> Method - genMealy"),_name.c_str());
     76        SC_METHOD (genMealy);
     77        dont_initialize ();
     78        for (uint32_t i=0; i<_param._nb_port; i++)
     79          sensitive << *(in_COUNTER_DATA   [i])
     80                    << *(in_COUNTER_ADDSUB [i]);
     81       
    6282#ifdef SYSTEMCASS_SPECIFIC
    63     // List dependency information
    64     for (uint32_t i=0; i<_param._nb_port; i++)
    65       {
    66         (*(out_COUNTER_DATA [i])) (*(in_COUNTER_DATA   [i]));
    67         (*(out_COUNTER_DATA [i])) (*(in_COUNTER_ADDSUB [i]));
     83        // List dependency information
     84        for (uint32_t i=0; i<_param._nb_port; i++)
     85          {
     86            (*(out_COUNTER_DATA [i])) (*(in_COUNTER_DATA   [i]));
     87            (*(out_COUNTER_DATA [i])) (*(in_COUNTER_ADDSUB [i]));
     88          }
     89#endif   
    6890      }
    69 #endif   
    7091
    7192#endif
     
    7697  {
    7798    log_printf(FUNC,Counter,"~Counter","Begin");
    78 #ifdef SYSTEMC
    79     deallocation ();
     99
     100#ifdef STATISTICS
     101    if (usage_is_set(_usage,USE_STATISTICS))
     102      {
     103        delete _stat;
     104      }
    80105#endif
    81106
    82 #ifdef STATISTICS
    83     delete _stat;
    84 #endif
     107    log_printf(INFO,Core,FUNCTION,_("<%s> Deallocation"),_name.c_str());
     108    deallocation ();
     109
    85110    log_printf(FUNC,Counter,"~Counter","End");
    86111  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/src/Counter_allocation.cpp

    r82 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
    43 *
    5  * [ Description ]
     4 * [ Description ]
    65 *
    76 */
     
    2928    _interfaces = entity->set_interfaces();
    3029
    31     // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     30    // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    3231    {
    3332      Interface * interface = _interfaces->set_interface(""
     
    4342    }
    4443
    45     // ~~~~~[ Interface : "counter" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     44    // ~~~~~[ Interface : "counter" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    4645     {
    4746        in_COUNTER_DATA  = new SC_IN (Tdata_t)    * [_param._nb_port];
     
    6463         }
    6564     }
     65
    6666#ifdef POSITION
    67     _component->generate_file();
     67     if (usage_is_set(_usage,USE_POSITION))
     68       _component->generate_file();
    6869#endif
    6970
    70     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     71    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    7172    log_printf(FUNC,Counter,"allocation","End");
    7273  };
     
    7778}; // end namespace behavioural
    7879}; // end namespace morpheo             
    79 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/src/Counter_deallocation.cpp

    r81 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    1918    log_printf(FUNC,Counter,"deallocation","Begin");
    2019
    21     delete     in_CLOCK;
    22     delete     in_NRESET;
    23    
    24     delete []  in_COUNTER_DATA  ;
    25     delete []  in_COUNTER_ADDSUB;
    26     delete [] out_COUNTER_DATA  ;
    27    
     20    if (usage_is_set(_usage,USE_SYSTEMC))
     21      {
     22        delete     in_CLOCK;
     23        delete     in_NRESET;
     24       
     25        delete []  in_COUNTER_DATA  ;
     26        delete []  in_COUNTER_ADDSUB;
     27        delete [] out_COUNTER_DATA  ;
     28      }
     29
    2830    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    2931
     
    3840}; // end namespace behavioural
    3941}; // end namespace morpheo             
    40 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/src/Counter_end_cycle.cpp

    r81 r88  
    2020
    2121#ifdef STATISTICS
    22     _stat->end_cycle();
     22    if (usage_is_set(_usage,USE_STATISTICS))
     23      _stat->end_cycle();
    2324#endif   
    2425
     
    2627    // Evaluation before read the ouput signal
    2728//  sc_start(0);
    28     _interfaces->testbench();
     29    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     30      _interfaces->testbench();
    2931#endif
    3032
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Counter/src/Parameters.cpp

    r81 r88  
    2525  };
    2626 
    27   Parameters::Parameters (Parameters & param):
    28     _size_data(param._size_data),
    29     _nb_port  (param._nb_port  ),
    30     _data_max (param._data_max )
    31   {
    32     log_printf(FUNC,Counter,"Parameters","Begin");
    33     test();
    34     log_printf(FUNC,Counter,"Parameters","End");
    35   };
     27//   Parameters::Parameters (Parameters & param):
     28//     _size_data(param._size_data),
     29//     _nb_port  (param._nb_port  ),
     30//     _data_max (param._data_max )
     31//   {
     32//     log_printf(FUNC,Counter,"Parameters","Begin");
     33//     test();
     34//     log_printf(FUNC,Counter,"Parameters","End");
     35//   };
    3636
    3737  Parameters::~Parameters ()
     
    4141  };
    4242
     43  void Parameters::copy (void)
     44  {
     45    log_printf(FUNC,Counter,"copy","Begin");
     46    log_printf(FUNC,Counter,"copy","End");
     47  };
     48
    4349}; // end namespace counter
    4450}; // end namespace generic
    45 
    4651}; // end namespace behavioural
    4752}; // end namespace morpheo             
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : Queue_library_clean
    2525
     26local_clean                     :
     27
    2628include                         ../Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/SelfTest/src/test.cpp

    r82 r88  
    2222#endif
    2323
     24  Tusage_t _usage = USE_ALL;
     25
     26//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     27//   _usage = usage_unset(_usage,USE_VHDL                 );
     28//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     29//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     30//   _usage = usage_unset(_usage,USE_POSITION             );
     31//   _usage = usage_unset(_usage,USE_STATISTICS           );
     32//   _usage = usage_unset(_usage,USE_INFORMATION          );
     33
    2434  Queue * _Queue = new Queue
    2535    (name.c_str(),
     
    2838#endif
    2939     _param,
    30      USE_ALL);
     40     _usage);
    3141 
    3242#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/include/Parameters.h

    r81 r88  
    2929  public : Parameters  (uint32_t size_queue,
    3030                        uint32_t size_data );
    31   public : Parameters  (Parameters & param) ;
     31//   public : Parameters  (Parameters & param) ;
    3232  public : ~Parameters () ;
     33
     34  public :        void            copy       (void);
    3335
    3436  public :        Parameters_test msg_error  (void);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/src/Parameters.cpp

    r81 r88  
    2626  };
    2727 
     28// #undef  FUNCTION
     29// #define FUNCTION "Queue::Parameters (copy)"
     30//   Parameters::Parameters (Parameters & param):
     31//     _size_queue (param._size_queue),
     32//     _size_data  (param._size_data )
     33//   {
     34//     log_printf(FUNC,Queue,FUNCTION,"Begin");
     35//     test();
     36//     log_printf(FUNC,Queue,FUNCTION,"End");
     37//   };
     38
    2839#undef  FUNCTION
    29 #define FUNCTION "Queue::Parameters (copy)"
    30   Parameters::Parameters (Parameters & param):
    31     _size_queue (param._size_queue),
    32     _size_data  (param._size_data )
     40#define FUNCTION "Queue::~Parameters"
     41  Parameters::~Parameters ()
    3342  {
    3443    log_printf(FUNC,Queue,FUNCTION,"Begin");
    35     test();
    3644    log_printf(FUNC,Queue,FUNCTION,"End");
    3745  };
    3846
    3947#undef  FUNCTION
    40 #define FUNCTION "Queue::~Parameters"
    41   Parameters::~Parameters ()
     48#define FUNCTION "Queue::copy"
     49  void Parameters::copy (void)
    4250  {
    4351    log_printf(FUNC,Queue,FUNCTION,"Begin");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/src/Queue.cpp

    r81 r88  
    3535    log_printf(FUNC,Queue,FUNCTION,"Begin");
    3636
     37#if DEBUG_Core == true
     38    log_printf(INFO,Core,FUNCTION,_("<%s> Parameters"),_name.c_str());
     39
     40    std::cout << *param << std::endl;
     41#endif   
     42
    3743    log_printf(INFO,Queue,FUNCTION,"Allocation");
    3844    allocation ();
    3945
    4046#ifdef STATISTICS
    41     if (_usage & USE_STATISTICS)
     47    if (usage_is_set(_usage,USE_STATISTICS))
    4248      {
    4349        log_printf(INFO,Queue,FUNCTION,"Allocation of statistics");
     
    4854
    4955#ifdef VHDL
    50     if (_usage & USE_VHDL)
     56    if (usage_is_set(_usage,USE_VHDL))
    5157      {
    5258        // generate the vhdl
     
    5864
    5965#ifdef SYSTEMC
    60     if (_usage & USE_SYSTEMC)
     66    if (usage_is_set(_usage,USE_SYSTEMC))
    6167      {
    6268        log_printf(INFO,Queue,FUNCTION,"Method - transition");
     
    9298
    9399#ifdef STATISTICS
    94     if (_usage & USE_STATISTICS)
     100    if (usage_is_set(_usage,USE_STATISTICS))
    95101      {
    96102        log_printf(INFO,Queue,FUNCTION,"Generate Statistics file");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/src/Queue_allocation.cpp

    r81 r88  
    7575    }
    7676     
     77    if (usage_is_set(_usage,USE_SYSTEMC))
     78      {
    7779    // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    7880    _queue_control = new morpheo::behavioural::generic::queue_control::Queue_Control::Queue_Control(_param->_size_queue);
    7981    _queue_data    = new Tdata_t [_param->_size_queue];
     82      }
    8083
    8184    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    8285
    8386#ifdef POSITION
    84     _component->generate_file();
     87    if (usage_is_set(_usage,USE_POSITION))
     88      _component->generate_file();
    8589#endif
    8690
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/src/Queue_deallocation.cpp

    r81 r88  
    2020    log_printf(FUNC,Queue,FUNCTION,"Begin");
    2121
    22     if (_usage & USE_SYSTEMC)
     22    if (usage_is_set(_usage,USE_SYSTEMC))
    2323      {
    2424        delete    in_CLOCK ;
     
    3333        delete   out_RETIRE_DATA;
    3434       
     35        // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     36        delete _queue_control;
     37        delete _queue_data;
    3538      }
    36     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    37     delete _queue_control;
    38     delete _queue_data;
     39
    3940    delete _component;
    4041
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Queue/src/Queue_end_cycle.cpp

    r81 r88  
    2121
    2222#ifdef STATISTICS
    23     _stat->end_cycle();
     23    if (usage_is_set(_usage,USE_STATISTICS))
     24      _stat->end_cycle();
    2425#endif   
    2526
     
    2728    // Evaluation before read the ouput signal
    2829//  sc_start(0);
    29     _interfaces->testbench();
     30    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     31      _interfaces->testbench();
    3032#endif
    3133
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/Makefile

    r81 r88  
    2323library_clean                   : RegisterFile_Monolithic_library_clean
    2424
     25local_clean                     :
     26
    2527include                         ../Makefile.deps
    2628include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/src/test.cpp

    r82 r88  
    3232      exit (EXIT_FAILURE);
    3333    }
     34
     35  Tusage_t _usage = USE_ALL;
     36
     37//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     38//   _usage = usage_unset(_usage,USE_VHDL                 );
     39//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     40//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     41//   _usage = usage_unset(_usage,USE_POSITION             );
     42//   _usage = usage_unset(_usage,USE_STATISTICS           );
     43//   _usage = usage_unset(_usage,USE_INFORMATION          );
    3444
    3545#ifdef STATISTICS
     
    4252#endif
    4353     ,_param
    44      ,USE_ALL);
     54     ,_usage);
    4555 
    4656#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h

    r81 r88  
    3434                       uint32_t nb_word      ,
    3535                       uint32_t size_word    );
    36   public : Parameters (Parameters & param) ;
     36//   public : Parameters (Parameters & param) ;
    3737  public : ~Parameters () ;
    3838
     39  public :        void            copy       (void);
     40
    3941  public :        Parameters_test msg_error  (void);
     42
    4043  public :        std::string   print      (uint32_t depth);
    4144  public : friend std::ostream& operator<< (std::ostream& output_stream,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Parameters.cpp

    r81 r88  
    3232  };
    3333 
    34   Parameters::Parameters (Parameters & param) :
    35     _nb_port_read      (param._nb_port_read ),
    36     _nb_port_write     (param._nb_port_write),
    37     _nb_port_read_write(param._nb_port_read_write),
    38     _nb_word           (param._nb_word      ),
    39     _size_word         (param._size_word    ),
    40     _size_address      (param._size_address ),
    41     _have_port_address (param._have_port_address)
     34//   Parameters::Parameters (Parameters & param) :
     35//     _nb_port_read      (param._nb_port_read ),
     36//     _nb_port_write     (param._nb_port_write),
     37//     _nb_port_read_write(param._nb_port_read_write),
     38//     _nb_word           (param._nb_word      ),
     39//     _size_word         (param._size_word    ),
     40//     _size_address      (param._size_address ),
     41//     _have_port_address (param._have_port_address)
     42//   {
     43//     test();
     44//   };
     45
     46  Parameters::~Parameters ()
    4247  {
    43     test();
    4448  };
    4549
    46   Parameters::~Parameters ()
    47   { };
     50  void Parameters::copy (void)
     51  {
     52  };
    4853
    4954}; // end namespace registerfile_monolithic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic.cpp

    r81 r88  
    3333    log_printf(FUNC,RegisterFile_Monolithic,"RegisterFile_Monolithic","Begin");
    3434
     35#if DEBUG_RegisterFile_Monolithic == true
     36    log_printf(INFO,RegisterFile_Monolithic,FUNCTION,_("<%s> Parameters"),_name.c_str());
     37
     38    std::cout << *param << std::endl;
     39#endif   
     40
    3541    log_printf(INFO,RegisterFile_Monolithic,"RegisterFile_Monolithic","Allocation");
    3642    allocation ();
    3743
    3844#ifdef STATISTICS
    39     if (_usage & USE_STATISTICS)
     45    if (usage_is_set(_usage,USE_STATISTICS))
    4046      statistics_declaration(param_statistics);
    4147#endif
     
    4753
    4854#ifdef SYSTEMC
    49     if (_usage & USE_SYSTEMC)
     55    if (usage_is_set(_usage,USE_SYSTEMC))
    5056      {
    5157        SC_METHOD (transition);
     
    102108  {
    103109#ifdef STATISTICS
    104     if (_usage & USE_STATISTICS)
     110    if (usage_is_set(_usage,USE_STATISTICS))
    105111      delete _stat;
    106112#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_allocation.cpp

    r81 r88  
    120120
    121121    // ----- Register
    122     reg_DATA = new Tdata_t [_param->_nb_word];
     122    if (usage_is_set(_usage,USE_SYSTEMC))
     123      reg_DATA = new Tdata_t [_param->_nb_word];
    123124   
    124125#ifdef POSITION
    125     _component->generate_file();
     126    if (usage_is_set(_usage,USE_POSITION))
     127      _component->generate_file();
    126128#endif
    127129  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_deallocation.cpp

    r81 r88  
    1818    delete _component;
    1919
    20     if (_usage & USE_SYSTEMC)
     20    if (usage_is_set(_usage,USE_SYSTEMC))
    2121      {
    2222        delete    in_CLOCK;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_end_cycle.cpp

    r81 r88  
    2020
    2121#ifdef STATISTICS
    22     _stat->end_cycle();
     22    if (usage_is_set(_usage,USE_STATISTICS))
     23      _stat->end_cycle();
    2324#endif   
    2425
     
    2728   
    2829//  sc_start(0);
    29     _interfaces->testbench();
     30    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     31      _interfaces->testbench();
    3032#endif
    3133
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_transition.cpp

    r81 r88  
    2424          {
    2525#ifdef STATISTICS
    26             (*_stat_nb_write) ++;
     26            if (usage_is_set(_usage,USE_STATISTICS))
     27              (*_stat_nb_write) ++;
    2728#endif   
    2829
     
    4950              {
    5051#ifdef STATISTICS
    51                 (*_stat_nb_write) ++;
     52                if (usage_is_set(_usage,USE_STATISTICS))
     53                  (*_stat_nb_write) ++;
    5254#endif   
    5355               
     
    6769            else
    6870              {
    69                 (*_stat_nb_read) ++;
     71                if (usage_is_set(_usage,USE_STATISTICS))
     72                  (*_stat_nb_read) ++;
    7073              }
    7174#endif   
     
    7477
    7578#ifdef STATISTICS
    76     for (uint32_t i=0; i<_param->_nb_port_read; i++)
    77       if ( PORT_READ(in_READ_VAL [i]) == 1)
    78         (*_stat_nb_read) ++;
     79    if (usage_is_set(_usage,USE_STATISTICS))
     80      for (uint32_t i=0; i<_param->_nb_port_read; i++)
     81        if ( PORT_READ(in_READ_VAL [i]) == 1)
     82          (*_stat_nb_read) ++;
    7983#endif   
    8084
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : RegisterFile_Multi_Banked_library_clean
    2525
     26local_clean                     :
     27
    2628include                         ../Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/src/test.cpp

    r82 r88  
    2323#endif
    2424
     25  Tusage_t _usage = USE_ALL;
     26
     27//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     28//   _usage = usage_unset(_usage,USE_VHDL                 );
     29//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     30//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     31//   _usage = usage_unset(_usage,USE_POSITION             );
     32   _usage = usage_unset(_usage,USE_STATISTICS           );
     33//   _usage = usage_unset(_usage,USE_INFORMATION          );
     34
    2535  RegisterFile_Multi_Banked * _RegisterFile_Multi_Banked = new RegisterFile_Multi_Banked
    2636    (name.c_str(),
     
    2939#endif
    3040     _param,
    31      USE_ALL);
     41     _usage);
    3242 
    3343#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h

    r81 r88  
    6161                        uint32_t    nb_port_write_by_bank,
    6262                        Tcrossbar_t crossbar             );
    63   public : Parameters  (Parameters & param) ;
     63//   public : Parameters  (Parameters & param) ;
    6464  public : ~Parameters () ;
    6565
     66  public :        void            copy       (void);
     67
    6668  public :        Parameters_test msg_error  (void);
    67   public :        std::string   print      (uint32_t depth);
    68   public : friend std::ostream& operator<< (std::ostream& output_stream,
    69                                             morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters & x);
     69
     70  public :        std::string     print      (uint32_t depth);
     71  public : friend std::ostream&   operator<< (std::ostream& output_stream,
     72                                              morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters & x);
    7073  };
    7174
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h

    r82 r88  
    106106  public  :          ~RegisterFile_Multi_Banked             (void);
    107107                                               
    108 #ifdef SYSTEMC                                 
    109108  private : void     allocation                (void);
    110109  private : void     deallocation              (void);
    111110                                               
     111#ifdef SYSTEMC                                 
    112112  private : Taddress_t address_bank                 (Taddress_t address);
    113113  private : Taddress_t address_num_reg              (Taddress_t address);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Parameters.cpp

    r81 r88  
    8787  };
    8888 
    89   Parameters::Parameters (Parameters & param):
    90     _nb_port_read          (param._nb_port_read         ),
    91     _nb_port_write         (param._nb_port_write        ),
    92     _nb_word               (param._nb_word              ),
    93     _size_word             (param._size_word            ),
    94     _nb_bank               (param._nb_bank              ),
    95     _nb_port_read_by_bank  (param._nb_port_read_by_bank ),
    96     _nb_port_write_by_bank (param._nb_port_write_by_bank),
    97     _crossbar              (param._crossbar             ),
    98     _size_address          (param._size_address         ),
    99     _size_address_by_bank  (param._size_address_by_bank ),
    100     _bank_shift            (param._bank_shift           ),
    101     _bank_mask             (param._bank_mask            ),
    102     _num_reg_shift         (param._num_reg_shift        ),
    103     _num_reg_mask          (param._num_reg_mask         ),
    104     _nb_word_by_bank       (param._nb_word_by_bank      ),
    105     _have_port_address     (param._have_port_address     ),
    106     _have_bank_port_address(param._have_bank_port_address)
    107   {
    108     log_printf(FUNC,RegisterFile_Multi_Banked,"Parameters (copy)","Begin");
     89//   Parameters::Parameters (Parameters & param):
     90//     _nb_port_read          (param._nb_port_read         ),
     91//     _nb_port_write         (param._nb_port_write        ),
     92//     _nb_word               (param._nb_word              ),
     93//     _size_word             (param._size_word            ),
     94//     _nb_bank               (param._nb_bank              ),
     95//     _nb_port_read_by_bank  (param._nb_port_read_by_bank ),
     96//     _nb_port_write_by_bank (param._nb_port_write_by_bank),
     97//     _crossbar              (param._crossbar             ),
     98//     _size_address          (param._size_address         ),
     99//     _size_address_by_bank  (param._size_address_by_bank ),
     100//     _bank_shift            (param._bank_shift           ),
     101//     _bank_mask             (param._bank_mask            ),
     102//     _num_reg_shift         (param._num_reg_shift        ),
     103//     _num_reg_mask          (param._num_reg_mask         ),
     104//     _nb_word_by_bank       (param._nb_word_by_bank      ),
     105//     _have_port_address     (param._have_port_address     ),
     106//     _have_bank_port_address(param._have_bank_port_address)
     107//   {
     108//     log_printf(FUNC,RegisterFile_Multi_Banked,"Parameters (copy)","Begin");
    109109
    110     if (_crossbar == PARTIAL_CROSSBAR)
    111       {
    112         // All port_src is connected with one port_dest on each bank
     110//     if (_crossbar == PARTIAL_CROSSBAR)
     111//       {
     112//      // All port_src is connected with one port_dest on each bank
    113113       
    114         _link_port_read_to_bank_read     = new uint32_t [_nb_port_read ];
    115 //      _link_port_read_to_num_bank         = new uint32_t [_nb_port_read ];
    116         _link_port_write_to_bank_write   = new uint32_t [_nb_port_write];
    117 //      _link_port_write_to_num_bank        = new uint32_t [_nb_port_write];
     114//      _link_port_read_to_bank_read     = new uint32_t [_nb_port_read ];
     115// //   _link_port_read_to_num_bank         = new uint32_t [_nb_port_read ];
     116//      _link_port_write_to_bank_write   = new uint32_t [_nb_port_write];
     117// //   _link_port_write_to_num_bank        = new uint32_t [_nb_port_write];
    118118
    119         for (uint32_t i=0; i<_nb_port_read         ;i++)
    120           {
    121             _link_port_read_to_bank_read   [i] = param._link_port_read_to_bank_read     [i];
    122 //          _link_port_read_to_num_bank       [i] = param._link_port_read_to_num_bank    [i];
    123           }
    124         for (uint32_t i=0; i<_nb_port_write        ;i++)
    125           {
    126             _link_port_write_to_bank_write [i] = param._link_port_write_to_bank_write    [i];
    127 //          _link_port_write_to_num_bank      [i] = param._link_port_write_to_num_bank   [i];
    128           }
    129       }
     119//      for (uint32_t i=0; i<_nb_port_read         ;i++)
     120//        {
     121//          _link_port_read_to_bank_read   [i] = param._link_port_read_to_bank_read     [i];
     122// //       _link_port_read_to_num_bank       [i] = param._link_port_read_to_num_bank    [i];
     123//        }
     124//      for (uint32_t i=0; i<_nb_port_write        ;i++)
     125//        {
     126//          _link_port_write_to_bank_write [i] = param._link_port_write_to_bank_write    [i];
     127// //       _link_port_write_to_num_bank      [i] = param._link_port_write_to_num_bank   [i];
     128//        }
     129//       }
    130130
    131     test();
    132     log_printf(FUNC,RegisterFile_Multi_Banked,"Parameters (copy)","End");
    133   };
     131//     test();
     132//     log_printf(FUNC,RegisterFile_Multi_Banked,"Parameters (copy)","End");
     133//   };
    134134
    135135  Parameters::~Parameters ()
     
    147147  };
    148148
     149  void Parameters::copy (void)
     150  {
     151    log_printf(FUNC,RegisterFile_Multi_Banked,"copy","Begin");
     152    log_printf(FUNC,RegisterFile_Multi_Banked,"copy","End");
     153  };
     154
    149155}; // end namespace registerfile_multi_banked
    150156}; // end namespace registerfile
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked.cpp

    r82 r88  
    1414namespace registerfile_multi_banked {
    1515
     16#undef  FUNCTION
     17#define FUNCTION "RegisterFile_Multi_Banked::RegisterFile_Multi_Banked"
    1618  RegisterFile_Multi_Banked::RegisterFile_Multi_Banked
    1719  (
     
    3032    ,_usage (usage)
    3133  {
    32     log_printf(FUNC,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Begin");
     34    log_printf(FUNC,RegisterFile_Multi_Banked,FUNCTION,"Begin");
    3335
    34 #ifdef SYSTEMC
    35     log_printf(INFO,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Allocation");
     36#if DEBUG_RegisterFile_Multi_Banked == true
     37    log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,_("<%s> Parameters"),_name.c_str());
    3638
     39    std::cout << *param << std::endl;
     40#endif   
     41
     42    log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Allocation");
     43   
    3744    allocation ();
    38 #endif
    3945
    4046#ifdef STATISTICS
    41     log_printf(INFO,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Allocation of statistics");
    42 
    43     // Allocation of statistics
    44     statistics_declaration(param_statistics);
     47    if (usage_is_set(_usage,USE_STATISTICS))
     48      {
     49        log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Allocation of statistics");
     50       
     51        // Allocation of statistics
     52        statistics_declaration(param_statistics);
     53      }
    4554#endif
    4655
    4756#ifdef VHDL
    48     // generate the vhdl
    49     log_printf(INFO,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Generate the vhdl");
    50 
    51     vhdl();
     57    if (usage_is_set(_usage,USE_VHDL))
     58      {
     59        // generate the vhdl
     60        log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Generate the vhdl");
     61       
     62        vhdl();
     63      }
    5264#endif
    5365
    5466#ifdef SYSTEMC
     67    if (usage_is_set(_usage,USE_SYSTEMC))
     68      {
    5569    // Function pointer
    5670    if (_param->_crossbar == FULL_CROSSBAR)                             
     
    6781      }
    6882
    69     log_printf(INFO,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Method - transition");
     83    log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Method - transition");
    7084
    7185    SC_METHOD (transition);
     
    7791#endif   
    7892
    79     log_printf(INFO,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","Method - genMealy_write");
     93    log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Method - genMealy_write");
    8094
    8195    SC_METHOD (genMealy_read);
     
    129143      }
    130144#endif   
    131 
     145      }
    132146#endif
    133     log_printf(FUNC,RegisterFile_Multi_Banked,"RegisterFile_Multi_Banked","End");
     147    log_printf(FUNC,RegisterFile_Multi_Banked,FUNCTION,"End");
    134148  };
    135149 
     150#undef  FUNCTION
     151#define FUNCTION "RegisterFile_Multi_Banked::~RegisterFile_Multi_Banked"
    136152  RegisterFile_Multi_Banked::~RegisterFile_Multi_Banked (void)
    137153  {
    138     log_printf(FUNC,RegisterFile_Multi_Banked,"~RegisterFile_Multi_Banked","Begin");
     154    log_printf(FUNC,RegisterFile_Multi_Banked,FUNCTION,"Begin");
    139155
    140156#ifdef STATISTICS
    141     log_printf(INFO,RegisterFile_Multi_Banked,"~RegisterFile_Multi_Banked","Generate Statistics file");
    142    
    143     delete _stat;
     157    if (usage_is_set(_usage,USE_STATISTICS))
     158      {
     159        log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Generate Statistics file");
     160        delete _stat;
     161      }
    144162#endif
    145163
    146 #ifdef SYSTEMC
    147     log_printf(INFO,RegisterFile_Multi_Banked,"~RegisterFile_Multi_Banked","Deallocation");
     164    log_printf(INFO,RegisterFile_Multi_Banked,FUNCTION,"Deallocation");
     165    deallocation ();
    148166
    149     deallocation ();
    150 #endif
    151 
    152     log_printf(FUNC,RegisterFile_Multi_Banked,"~RegisterFile_Multi_Banked","End");
     167    log_printf(FUNC,RegisterFile_Multi_Banked,FUNCTION,"End");
    153168  };
    154169
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_allocation.cpp

    r82 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
    43 *
    5  * [ Description ]
     4 * [ Description ]
    65 *
    76 */
     
    3130    _interfaces = entity->set_interfaces();
    3231
    33     // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     32    // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    3433
    3534      Interface * interface = _interfaces->set_interface(""
     
    4443     in_NRESET       = interface->set_signal_in  <Tcontrol_t> ("nreset",1, RESET_VHDL_YES);
    4544
    46     // ~~~~~[ Interface : "read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     45    // ~~~~~[ Interface : "read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    4746
    4847     in_READ_VAL         = new SC_IN (Tcontrol_t) * [_param->_nb_port_read];
     
    6968      }
    7069
    71     // ~~~~~[ Interface : "write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     70    // ~~~~~[ Interface : "write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    7271
    7372     in_WRITE_VAL        = new SC_IN (Tcontrol_t) * [_param->_nb_port_write];
     
    9493      }
    9594
    96     // ~~~~~[ Registers ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     95    if (usage_is_set(_usage,USE_SYSTEMC))
     96      {
     97    // ~~~~~[ Registers ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    9798
    9899    reg_DATA = new Tdata_t * [_param->_nb_bank];
     
    103104      }
    104105
    105     // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     106    // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    106107    internal_WRITE_VAL     = new bool       [_param->_nb_port_write];
    107108    internal_WRITE_BANK    = new Taddress_t [_param->_nb_port_write];
    108109    internal_WRITE_NUM_REG = new Taddress_t [_param->_nb_port_write];
     110      }
    109111
    110     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     112    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    111113
    112114#ifdef POSITION
    113     _component->generate_file();
     115    if (usage_is_set(_usage,USE_POSITION))
     116      _component->generate_file();
    114117#endif
    115118
     
    123126}; // end namespace behavioural
    124127}; // end namespace morpheo             
    125 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_deallocation.cpp

    r81 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    2019    log_printf(FUNC,RegisterFile_Multi_Banked,"deallocation","Begin");
    2120
    22     delete in_CLOCK;
    23     delete in_NRESET;
    24 
    25     // ----- Interface Read
    26     delete []  in_READ_VAL    ;
    27     delete [] out_READ_ACK    ;
    28     if (_param->_have_port_address == true)
    29     delete []  in_READ_ADDRESS;
    30     delete [] out_READ_DATA   ;
    31 
    32     // ----- Interface Write
    33     delete []  in_WRITE_VAL    ;
    34     delete [] out_WRITE_ACK    ;
    35     if (_param->_have_port_address == true)
    36     delete []  in_WRITE_ADDRESS;
    37     delete []  in_WRITE_DATA   ;
    38 
    39     // ----- Register
    40     delete [] reg_DATA;
    41 
    42     // ----- Internal
    43     delete [] internal_WRITE_VAL;
    44     delete [] internal_WRITE_BANK;
    45     delete [] internal_WRITE_NUM_REG;
     21    if (usage_is_set(_usage,USE_SYSTEMC))
     22      {
     23        delete in_CLOCK;
     24        delete in_NRESET;
     25       
     26        // ----- Interface Read
     27        delete []  in_READ_VAL    ;
     28        delete [] out_READ_ACK    ;
     29        if (_param->_have_port_address == true)
     30        delete []  in_READ_ADDRESS;
     31        delete [] out_READ_DATA   ;
     32       
     33        // ----- Interface Write
     34        delete []  in_WRITE_VAL    ;
     35        delete [] out_WRITE_ACK    ;
     36        if (_param->_have_port_address == true)
     37        delete []  in_WRITE_ADDRESS;
     38        delete []  in_WRITE_DATA   ;
     39       
     40        // ----- Register
     41        delete [] reg_DATA;
     42       
     43        // ----- Internal
     44        delete [] internal_WRITE_VAL;
     45        delete [] internal_WRITE_BANK;
     46        delete [] internal_WRITE_NUM_REG;
     47      }       
    4648
    4749    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     
    5860}; // end namespace behavioural
    5961}; // end namespace morpheo             
    60 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_end_cycle.cpp

    r81 r88  
    2323
    2424#ifdef STATISTICS
    25     _stat->end_cycle();
     25    if (usage_is_set(_usage,USE_STATISTICS))
     26      _stat->end_cycle();
    2627#endif   
    2728
     
    2930    // Evaluation before read the ouput signal
    3031//  sc_start(0);
    31     _interfaces->testbench();
     32    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     33      _interfaces->testbench();
    3234#endif
    3335
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : RegisterFile_library_clean
    2525
     26local_clean                     :
     27
    2628include                         ../Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/SelfTest/src/main.cpp

    r81 r88  
    5858      if (instance == instance_RegisterFile_Monolithic)
    5959        {
    60           morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * param1 = new morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters (nb_port_read         ,
    61                                                                                                                                                                                                 nb_port_write        ,
    62                                                                                                                                                                                                 0                    ,
    63                                                                                                                                                                                                 nb_word              ,
    64                                                                                                                                                                                                 size_word            );
     60          morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * param1 = new morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters
     61            (nb_port_read         ,
     62             nb_port_write        ,
     63             0                    ,
     64             nb_word              ,
     65             size_word           
     66             );
    6567         
    6668          param = new morpheo::behavioural::generic::registerfile::Parameters(param1);
     
    6870      else
    6971        {
    70           morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * param2 = new morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters (nb_port_read         ,
    71                                                                                                                                                                                                 nb_port_write        ,
    72                                                                                                                                                                                                 nb_word              ,
    73                                                                                                                                                                                                 size_word            ,
    74                                                                                                                                                                                                 nb_bank              ,
    75                                                                                                                                                                                                 nb_port_read_by_bank ,
    76                                                                                                                                                                                                 nb_port_write_by_bank,
    77                                                                                                                                                                                                 crossbar             );
     72          morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * param2 = new morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters
     73            (nb_port_read         ,
     74             nb_port_write        ,
     75             nb_word              ,
     76             size_word            ,
     77             nb_bank              ,
     78             nb_port_read_by_bank ,
     79             nb_port_write_by_bank,
     80             crossbar             
     81             );
    7882         
    7983          param = new morpheo::behavioural::generic::registerfile::Parameters(param2);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/SelfTest/src/test.cpp

    r82 r88  
    2222#endif
    2323 
     24  Tusage_t _usage = USE_ALL;
     25
     26//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     27//   _usage = usage_unset(_usage,USE_VHDL                 );
     28//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     29//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     30//   _usage = usage_unset(_usage,USE_POSITION             );
     31//   _usage = usage_unset(_usage,USE_STATISTICS           );
     32//   _usage = usage_unset(_usage,USE_INFORMATION          );
     33
    2434  RegisterFile * _RegisterFile = new RegisterFile (name.c_str(),
    2535#ifdef STATISTICS     
     
    2737#endif
    2838                                                   _param,
    29                                                    USE_ALL);
     39                                                   _usage);
    3040 
    3141#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/include/Parameters.h

    r81 r88  
    4040  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * param);
    4141  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * param);
    42   public : Parameters  (Parameters & param) ;
     42//   public : Parameters  (Parameters & param) ;
    4343  public : ~Parameters () ;
    4444
     45  public :        void             copy       (void);
     46
    4547  public :        Parameters_test  msg_error  (void);
     48
    4649  public :        std::string   print      (uint32_t depth);
    4750  public : friend std::ostream& operator<< (std::ostream& output_stream,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/src/Parameters.cpp

    r81 r88  
    2626
    2727    _param_registerfile_monolithic   = param;
    28    
     28    _param_registerfile_multi_banked = NULL;
     29
    2930    test();
    3031
     
    4344    log_printf(FUNC,RegisterFile,"Parameters","Begin");
    4445
     46    _param_registerfile_monolithic   = NULL;
    4547    _param_registerfile_multi_banked = param;
    4648
     
    5052  };
    5153 
    52   Parameters::Parameters (Parameters & param):
    53     _instance          (param._instance     ),
    54     _nb_port_read      (param._nb_port_read ),
    55     _nb_port_write     (param._nb_port_write),
    56     _nb_word           (param._nb_word      ),
    57     _size_word         (param._size_word    ),
    58     _size_address      (param._size_address ),
    59     _have_port_address (param._have_port_address)
    60   {
    61     log_printf(FUNC,RegisterFile,"Parameters (copy)","Begin");
     54//   Parameters::Parameters (Parameters & param):
     55//     _instance          (param._instance     ),
     56//     _nb_port_read      (param._nb_port_read ),
     57//     _nb_port_write     (param._nb_port_write),
     58//     _nb_word           (param._nb_word      ),
     59//     _size_word         (param._size_word    ),
     60//     _size_address      (param._size_address ),
     61//     _have_port_address (param._have_port_address)
     62//   {
     63//     log_printf(FUNC,RegisterFile,"Parameters (copy)","Begin");
    6264
    63     _param_registerfile_multi_banked = param._param_registerfile_multi_banked;
    64     _param_registerfile_monolithic   = param._param_registerfile_monolithic;
    65     test();
    66     log_printf(FUNC,RegisterFile,"Parameters (copy)","End");
    67   };
     65//     _param_registerfile_multi_banked = param._param_registerfile_multi_banked;
     66//     _param_registerfile_monolithic   = param._param_registerfile_monolithic;
     67//     test();
     68//     log_printf(FUNC,RegisterFile,"Parameters (copy)","End");
     69//   };
    6870
    6971  Parameters::~Parameters ()
     
    7375  };
    7476
     77  void Parameters::copy (void)
     78  {
     79    log_printf(FUNC,RegisterFile,"copy","Begin");
     80
     81    throw ERRORMORPHEO("RegisterFile::copy",_("Invalid copy"));
     82
     83//     if (_instance == instance_RegisterFile_Monolithic)
     84//       COPY(_param_registerfile_monolithic);
     85//     if (_instance == instance_RegisterFile_Multi_Banked)
     86//       COPY(_param_registerfile_multi_banked);
     87   
     88    log_printf(FUNC,RegisterFile,"copy","End");
     89  };
     90
    7591}; // end namespace registerfile
    7692}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/Makefile

    r81 r88  
    2323library_clean                   : Select_Priority_Fixed_library_clean
    2424
     25local_clean                     :
     26
    2527include                         ../Makefile.deps
    2628include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/src/test.cpp

    r82 r88  
    1818  cout << "<" << name << "> : Simulation SystemC" << endl;
    1919
    20 
    2120#ifdef STATISTICS
    2221  morpheo::behavioural::Parameters_Statistics * _param_stat = new morpheo::behavioural::Parameters_Statistics (5,50);
    2322#endif
     23
     24  Tusage_t _usage = USE_ALL;
     25
     26//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     27//   _usage = usage_unset(_usage,USE_VHDL                 );
     28//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     29//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     30//   _usage = usage_unset(_usage,USE_POSITION             );
     31//   _usage = usage_unset(_usage,USE_STATISTICS           );
     32//   _usage = usage_unset(_usage,USE_INFORMATION          );
     33
    2434  Select_Priority_Fixed * _Select_Priority_Fixed = new Select_Priority_Fixed
    2535    (name.c_str(),
     
    2838#endif
    2939     _param,
    30      USE_ALL);
     40     _usage);
    3141 
    3242#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h

    r81 r88  
    3131                        bool     encoding_one_hot,
    3232                        bool     encoding_compact);
    33   public : Parameters  (Parameters & param) ;
     33//   public : Parameters  (Parameters & param) ;
    3434  public : ~Parameters () ;
    3535
     36  public :        void            copy       (void);
     37
    3638  public :        Parameters_test msg_error  (void);
     39
    3740  public :        std::string   print      (uint32_t depth);
    3841  public : friend std::ostream& operator<< (std::ostream& output_stream,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h

    r82 r88  
    9595  public  :          ~Select_Priority_Fixed             (void);
    9696                                               
    97 #ifdef SYSTEMC                                 
    9897  private : void     allocation                (void);
    9998  private : void     deallocation              (void);
    10099                                               
     100#ifdef SYSTEMC                                 
    101101# if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    102102  public  : void     transition                (void);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Parameters.cpp

    r81 r88  
    2828  };
    2929 
    30   Parameters::Parameters (Parameters & param):
    31     _nb_entity        (param._nb_entity       ),
    32     _encoding_one_hot (param._encoding_one_hot),
    33     _encoding_compact (param._encoding_compact),
    34     _size_entity      (param._size_entity     )
    35   {
    36     log_printf(FUNC,Select_Priority_Fixed,"Parameters","Begin");
    37     test();
    38     log_printf(FUNC,Select_Priority_Fixed,"Parameters","End");
    39   };
     30//   Parameters::Parameters (Parameters & param):
     31//     _nb_entity        (param._nb_entity       ),
     32//     _encoding_one_hot (param._encoding_one_hot),
     33//     _encoding_compact (param._encoding_compact),
     34//     _size_entity      (param._size_entity     )
     35//   {
     36//     log_printf(FUNC,Select_Priority_Fixed,"Parameters","Begin");
     37//     test();
     38//     log_printf(FUNC,Select_Priority_Fixed,"Parameters","End");
     39//   };
    4040
    4141  Parameters::~Parameters ()
     
    4343    log_printf(FUNC,Select_Priority_Fixed,"~Parameters","Begin");
    4444    log_printf(FUNC,Select_Priority_Fixed,"~Parameters","End");
     45  };
     46
     47  void Parameters::copy (void)
     48  {
     49    log_printf(FUNC,Select_Priority_Fixed,"copy","Begin");
     50    log_printf(FUNC,Select_Priority_Fixed,"copy","End");
    4551  };
    4652
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed.cpp

    r81 r88  
    22 * $Id$
    33 *
    4  * [ Description ]
     4 * [ Description ]
    55 *
    66 */
     
    3333    log_printf(FUNC,Select_Priority_Fixed,"Select_Priority_Fixed","Begin");
    3434
     35#if DEBUG_Select_Priority_Fixed == true
     36    log_printf(INFO,Select_Priority_Fixed,FUNCTION,_("<%s> Parameters"),_name.c_str());
     37
     38    std::cout << *param << std::endl;
     39#endif   
     40
    3541    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Allocation");
    3642    allocation ();
    3743
    3844#ifdef STATISTICS
    39     if (_usage & USE_STATISTICS)
     45    if (usage_is_set(_usage,USE_STATISTICS))
    4046      {
    4147        log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Allocation of statistics");
     
    4652
    4753#ifdef VHDL
    48     // generate the vhdl
    49     log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Generate the vhdl");
    50 
    51     vhdl();
     54    if (usage_is_set(_usage,USE_VHDL)
     55      {
     56        // generate the vhdl
     57        log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Generate the vhdl");
     58       
     59        vhdl();
     60      }
    5261#endif
    5362
    5463#ifdef SYSTEMC
    55     if (_usage & USE_SYSTEMC)
    56       {
     64      if (usage_is_set(_usage,USE_SYSTEMC))
     65        {
    5766#  if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    5867        log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Method - transition");
     
    96105
    97106#ifdef STATISTICS
    98     if (_usage & USE_STATISTICS)
     107    if (usage_is_set(_usage,USE_STATISTICS))
    99108      {
    100109        log_printf(INFO,Select_Priority_Fixed,"~Select_Priority_Fixed","Generate Statistics file");
     
    104113#endif
    105114
    106 #ifdef SYSTEMC
    107115    log_printf(INFO,Select_Priority_Fixed,"~Select_Priority_Fixed","Deallocation");
    108 
    109116    deallocation ();
    110 #endif
    111117
    112118    log_printf(FUNC,Select_Priority_Fixed,"~Select_Priority_Fixed","End");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_allocation.cpp

    r81 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    3029    _interfaces = entity->set_interfaces();
    3130
    32     // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     31    // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    3332
    3433    Interface_fifo * interface = _interfaces->set_interface(""
     
    6362
    6463#ifdef POSITION
    65     _component->generate_file();
     64    if (usage_is_set(_usage,USE_POSITION))
     65      _component->generate_file();
    6666#endif
    6767
     
    7474}; // end namespace behavioural
    7575}; // end namespace morpheo             
    76 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_deallocation.cpp

    r81 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    2019    log_printf(FUNC,Select_Priority_Fixed,"deallocation","Begin");
    2120
    22     if (_usage & USE_SYSTEMC)
     21    if (usage_is_set(_usage,USE_SYSTEMC))
    2322      {
    2423        delete     in_CLOCK;
     
    4847}; // end namespace behavioural
    4948}; // end namespace morpheo             
    50 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_end_cycle.cpp

    r81 r88  
    2222
    2323#ifdef STATISTICS
    24     _stat->end_cycle();
     24    if (usage_is_set(_usage,USE_STATISTICS))
     25      _stat->end_cycle();
    2526#endif   
    2627
     
    2829    // Evaluation before read the ouput signal
    2930//  sc_start(0);
    30     _interfaces->testbench();
     31    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     32      _interfaces->testbench();
    3133#endif
    3234
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/SelfTest/Makefile

    r81 r88  
    2323library_clean                   : Shifter_library_clean
    2424
     25local_clean                     :
     26
    2527include                         ../Makefile.deps
    2628include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/SelfTest/src/test.cpp

    r82 r88  
    3838  morpheo::behavioural::Parameters_Statistics * param_stat = new morpheo::behavioural::Parameters_Statistics(5,50);
    3939#endif
     40
     41  Tusage_t _usage = USE_ALL;
     42
     43//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     44//   _usage = usage_unset(_usage,USE_VHDL                 );
     45//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     46//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     47//   _usage = usage_unset(_usage,USE_POSITION             );
     48   _usage = usage_unset(_usage,USE_STATISTICS           );
     49//   _usage = usage_unset(_usage,USE_INFORMATION          );
     50
    4051  Shifter * _Shifter = new Shifter (name.c_str(),
    4152#ifdef STATISTICS
     
    4354#endif
    4455                                    &param,
    45                                     USE_ALL);
     56                                    _usage);
    4657 
    4758#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/include/Parameters.h

    r82 r88  
    5656                        carry_t     carry               ,
    5757                        bool        type_completion_bool = false);
    58   public : Parameters  (Parameters & param) ;
     58//   public : Parameters  (Parameters & param) ;
    5959  public : ~Parameters () ;
    6060
     61  public :        void            copy       (void);
     62
    6163  public :        Parameters_test msg_error  (void);
     64
    6265  public :        std::string     print      (uint32_t depth);
    6366  public : friend std::ostream&   operator<< (std::ostream& output_stream,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/include/Shifter.h

    r82 r88  
    55 * $Id$
    66 *
    7  * [ Description ]
     7 * [ Description ]
    88 *
    99 */
     
    3838#endif
    3939  {
    40     // -----[ fields ]----------------------------------------------------
     40    // -----[ fields ]----------------------------------------------------
    4141    // Parameters
    4242  protected : const std::string  _name;
     
    5252
    5353#ifdef SYSTEMC
    54     // ~~~~~[ Interface ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     54    // ~~~~~[ Interface ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    5555  public    : SC_CLOCK                      *  in_CLOCK             ;
    5656  public    : SC_IN (Tcontrol_t)            *  in_NRESET            ;
     
    6666  public    : SC_OUT(Tdata_t)              ** out_SHIFTER_DATA      ;
    6767   
    68     // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     68    // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    6969
    70     // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     70    // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    7171#endif
    7272
    73     // -----[ methods ]---------------------------------------------------
     73    // -----[ methods ]---------------------------------------------------
    7474
    7575#ifdef SYSTEMC
     
    9393  public  :          ~Shifter             (void);
    9494                                               
    95 #ifdef SYSTEMC                                 
    9695  private : void     allocation                (void);
    9796  private : void     deallocation              (void);
    9897                                               
     98#ifdef SYSTEMC                                 
    9999#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
    100100  public  : void     transition                (void);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Parameters.cpp

    r81 r88  
    8080  };
    8181 
    82   Parameters::Parameters (Parameters & param):
    83     _size_data                   (param._size_data                   ),
    84     _nb_port                     (param._nb_port                     ),
    85     _shift_value                 (param._shift_value                 ),
    86     _rotate                      (param._rotate                      ),
    87     _direction                   (param._direction                   ),
    88     _carry                       (param._carry                       ),
    89     _size_data_completion        (param._size_data_completion        ),
    90     _type_completion_bool        (param._type_completion_bool        ),
     82//   Parameters::Parameters (Parameters & param):
     83//     _size_data                   (param._size_data                   ),
     84//     _nb_port                     (param._nb_port                     ),
     85//     _shift_value                 (param._shift_value                 ),
     86//     _rotate                      (param._rotate                      ),
     87//     _direction                   (param._direction                   ),
     88//     _carry                       (param._carry                       ),
     89//     _size_data_completion        (param._size_data_completion        ),
     90//     _type_completion_bool        (param._type_completion_bool        ),
    9191
    92     _internal_direction          (param._internal_direction          ),
    93     _internal_type               (param._internal_type               ),
    94     _internal_carry              (param._internal_carry              ),
     92//     _internal_direction          (param._internal_direction          ),
     93//     _internal_type               (param._internal_type               ),
     94//     _internal_carry              (param._internal_carry              ),
    9595   
    96     _have_shift_logic_left       (param._have_shift_logic_left       ),
    97     _have_shift_logic_right      (param._have_shift_logic_right      ),
    98     _have_shift_logic            (param._have_shift_logic            ),
    99     _have_shift_arithmetic_left  (param._have_shift_arithmetic_left  ),
    100     _have_shift_arithmetic_right (param._have_shift_arithmetic_right ),
    101     _have_shift_arithmetic       (param._have_shift_arithmetic       ),
    102     _have_shift                  (param._have_shift                  ),
    103     _have_rotate_left            (param._have_rotate_left            ),
    104     _have_rotate_right           (param._have_rotate_right           ),
    105     _have_rotate                 (param._have_rotate                 ),
     96//     _have_shift_logic_left       (param._have_shift_logic_left       ),
     97//     _have_shift_logic_right      (param._have_shift_logic_right      ),
     98//     _have_shift_logic            (param._have_shift_logic            ),
     99//     _have_shift_arithmetic_left  (param._have_shift_arithmetic_left  ),
     100//     _have_shift_arithmetic_right (param._have_shift_arithmetic_right ),
     101//     _have_shift_arithmetic       (param._have_shift_arithmetic       ),
     102//     _have_shift                  (param._have_shift                  ),
     103//     _have_rotate_left            (param._have_rotate_left            ),
     104//     _have_rotate_right           (param._have_rotate_right           ),
     105//     _have_rotate                 (param._have_rotate                 ),
    106106
    107     _have_direction_left         (param._have_direction_left         ),
    108     _have_direction_right        (param._have_direction_right        )
     107//     _have_direction_left         (param._have_direction_left         ),
     108//     _have_direction_right        (param._have_direction_right        )
    109109
     110//   {
     111//     test();
     112//   };
     113
     114  Parameters::~Parameters ()
    110115  {
    111     test();
    112116  };
    113117
    114   Parameters::~Parameters ()
    115   { };
     118  void Parameters::copy (void)
     119  {
     120  };
    116121
    117122}; // end namespace shifter
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Shifter.cpp

    r82 r88  
    1414
    1515
     16#undef  FUNCTION
     17#define FUNCTION "Shifter::Shifter"
    1618  Shifter::Shifter (
    1719#ifdef SYSTEMC
     
    2931    ,_usage (usage)
    3032  {
    31 #ifdef SYSTEMC
     33
     34#if DEBUG_Shifter == true
     35    log_printf(INFO,Shifter,FUNCTION,_("<%s> Parameters"),_name.c_str());
     36
     37    std::cout << *param << std::endl;
     38#endif   
     39
    3240    allocation ();
    33 #endif
    3441
    3542#ifdef STATISTICS
    36     // Allocation of statistics
    37     statistics_declaration(param_statistics);
     43    if (usage_is_set(_usage,USE_STATISTICS))
     44      {
     45        // Allocation of statistics
     46        statistics_declaration(param_statistics);
     47      }
    3848#endif
    3949
    4050#ifdef VHDL
    41     // generate the vhdl
    42     vhdl();
     51    if (usage_is_set(_usage,USE_VHDL))
     52      {
     53        // generate the vhdl
     54        vhdl();
     55      }
    4356#endif
    4457
    4558#ifdef SYSTEMC
     59    if (usage_is_set(_usage,USE_SYSTEMC))
     60      {
    4661#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
    4762    SC_METHOD (transition);
     
    91106      }
    92107#endif   
    93 
     108      }
    94109#endif
    95110  };
    96111 
     112#undef  FUNCTION
     113#define FUNCTION "Shifter::~Shifter"
    97114  Shifter::~Shifter (void)
    98115  {
    99 #ifdef SYSTEMC
    100     deallocation ();
     116#ifdef STATISTICS
     117    if (usage_is_set(_usage,USE_STATISTICS))
     118      delete _stat;
    101119#endif
    102120
    103 #ifdef STATISTICS
    104     delete _stat;
    105 #endif
     121    deallocation ();
    106122  };
    107123
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Shifter_allocation.cpp

    r82 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    8685           in_SHIFTER_COMPLETION [i] = interface->set_signal_in  <Tdata_t     > ("completion",_param->_size_data_completion);
    8786          out_SHIFTER_DATA       [i] = interface->set_signal_out <Tdata_t     > ("data"      ,_param->_size_data);
    88         }                                                                                                                       
     87        }
    8988    }
    9089
    9190#ifdef POSITION
    92     _component->generate_file();
     91    if (usage_is_set(_usage,USE_POSITION))
     92      _component->generate_file();
    9393#endif
    9494
     
    9999}; // end namespace behavioural
    100100}; // end namespace morpheo             
    101 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Shifter_deallocation.cpp

    r82 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    1716  void Shifter::deallocation (void)
    1817  {
     18    if (usage_is_set(_usage,USE_SYSTEMC))
     19      {
    1920#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
    2021    delete     in_CLOCK;
     
    3637    delete []  in_SHIFTER_COMPLETION;
    3738    delete [] out_SHIFTER_DATA      ;
     39      }
    3840
    3941    delete _component;
     
    4648}; // end namespace behavioural
    4749}; // end namespace morpheo             
    48 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Shifter_end_cycle.cpp

    r81 r88  
    2121
    2222#ifdef STATISTICS
    23     _stat->end_cycle();
     23    if (usage_is_set(_usage,USE_STATISTICS))
     24      _stat->end_cycle();
    2425#endif   
    2526
     
    2728    // Evaluation before read the ouput signal
    2829//  sc_start(0);
    29     _interfaces->testbench();
     30    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     31      _interfaces->testbench();
    3032#endif
    3133
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : Sort_library_clean
    2525
     26local_clean                     :
     27
    2628include                         $(DIR_COMPONENT)/Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/SelfTest/src/test.cpp

    r82 r88  
    3131#endif
    3232
     33  Tusage_t _usage = USE_ALL;
     34
     35//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     36//   _usage = usage_unset(_usage,USE_VHDL                 );
     37//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     38//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     39//   _usage = usage_unset(_usage,USE_POSITION             );
     40//   _usage = usage_unset(_usage,USE_STATISTICS           );
     41//   _usage = usage_unset(_usage,USE_INFORMATION          );
     42
    3343  Sort * _Sort = new Sort (name.c_str(),
    3444#ifdef STATISTICS
     
    3646#endif
    3747                           _param,
    38                            USE_ALL);
     48                           _usage);
    3949 
    4050#ifdef SYSTEMC
     
    154164              tab [ptr]._val = false;
    155165
    156               LABEL("OUTPUT [%d] %d - %d",i, out_OUTPUT_VAL [i]->read(), out_OUTPUT_DATA [i]->read(), out_OUTPUT_INDEX [i]->read());
     166              LABEL("OUTPUT [%d] %d %d - %d",i, out_OUTPUT_VAL [i]->read(), out_OUTPUT_DATA [i]->read(), out_OUTPUT_INDEX [i]->read());
    157167
    158168              TEST(Tcontrol_t,out_OUTPUT_VAL   [i]->read(),find);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/include/Parameters.h

    r81 r88  
    4242  public : ~Parameters () ;
    4343
     44  public :        void            copy       (void);
     45
    4446  public :        Parameters_test msg_error  (void);
    4547
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/src/Parameters.cpp

    r81 r88  
    5555  };
    5656
     57#undef  FUNCTION
     58#define FUNCTION "Sort::copy"
     59  void Parameters::copy (void)
     60  {
     61    log_printf(FUNC,Sort,FUNCTION,"Begin");
     62    log_printf(FUNC,Sort,FUNCTION,"End");
     63  };
     64
    5765}; // end namespace sort
    5866}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/src/Sort.cpp

    r81 r88  
    3535    log_printf(FUNC,Sort,FUNCTION,"Begin");
    3636
     37#if DEBUG_Sort == true
     38    log_printf(INFO,Sort,FUNCTION,_("<%s> Parameters"),_name.c_str());
     39
     40    std::cout << *param << std::endl;
     41#endif   
     42
    3743    log_printf(INFO,Sort,FUNCTION,"Allocation");
    3844
     
    4450
    4551#ifdef STATISTICS
    46     if (_usage & USE_STATISTICS)
     52    if (usage_is_set(_usage,USE_STATISTICS))
    4753      {
    4854        log_printf(INFO,Sort,FUNCTION,"Allocation of statistics");
     
    5359
    5460#ifdef VHDL
    55     if (_usage & USE_VHDL)
     61    if (usage_is_set(_usage,USE_VHDL))
    5662      {
    5763        // generate the vhdl
     
    6369
    6470#ifdef SYSTEMC
    65     if (_usage & USE_SYSTEMC)
     71    if (usage_is_set(_usage,USE_SYSTEMC))
    6672      {
    6773        log_printf(INFO,Sort,FUNCTION,"Method - transition");
     
    117123
    118124#ifdef STATISTICS
    119     if (_usage & USE_STATISTICS)
     125    if (usage_is_set(_usage,USE_STATISTICS))
    120126      {
    121127        statistics_deallocation();
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/src/Sort_allocation.cpp

    r81 r88  
    1313namespace generic {
    1414namespace sort {
    15 
    16 
    1715
    1816#undef  FUNCTION
     
    7573
    7674#ifdef POSITION
    77     _component->generate_file();
     75    if (usage_is_set(_usage,USE_POSTION))
     76      _component->generate_file();
    7877#endif
    7978
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/src/Sort_deallocation.cpp

    r81 r88  
    2020    log_printf(FUNC,Sort,FUNCTION,"Begin");
    2121
    22     if (_usage & USE_SYSTEMC)
     22    if (usage_is_set(_usage,USE_SYSTEMC))
    2323      {
    2424        delete     in_CLOCK ;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Sort/src/Sort_end_cycle.cpp

    r81 r88  
    2222
    2323#ifdef STATISTICS
    24     _stat->end_cycle();
     24    if (usage_is_set(_usage,USE_STATISTICS))
     25      _stat->end_cycle();
    2526#endif   
    2627
     
    2829    // Evaluation before read the ouput signal
    2930//  sc_start(0);
    30     _interfaces->testbench();
     31    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     32      _interfaces->testbench();
    3133#endif
    3234
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/SelfTest/Makefile

    r81 r88  
    2424library_clean                   : Victim_library_clean
    2525
     26local_clean                     :
     27
    2628include                         $(DIR_COMPONENT)/Makefile.deps
    2729include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/SelfTest/src/test.cpp

    r82 r88  
    2323#endif
    2424
     25  Tusage_t _usage = USE_ALL;
     26
     27//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     28//   _usage = usage_unset(_usage,USE_VHDL                 );
     29//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     30//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     31//   _usage = usage_unset(_usage,USE_POSITION             );
     32//   _usage = usage_unset(_usage,USE_STATISTICS           );
     33//   _usage = usage_unset(_usage,USE_INFORMATION          );
     34
    2535  Victim * _Victim = new Victim (name.c_str(),
    2636#ifdef STATISTICS
     
    2838#endif
    2939                                 _param,
    30                                  USE_ALL);
     40                                 _usage);
    3141 
    3242#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/Makefile

    r81 r88  
    2323library_clean                   : Victim_Pseudo_LRU_library_clean
    2424
     25local_clean                     :
     26
    2527include                         ../Makefile.deps
    2628include                         $(DIR_MORPHEO)/Behavioural/Makefile.flags
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/src/test.cpp

    r82 r88  
    3838#endif
    3939
    40   Victim_Pseudo_LRU * _Victim_Pseudo_LRU = new Victim_Pseudo_LRU (name.c_str(),
     40  Tusage_t _usage = USE_ALL;
     41
     42//   _usage = usage_unset(_usage,USE_SYSTEMC              );
     43//   _usage = usage_unset(_usage,USE_VHDL                 );
     44//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH       );
     45//   _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT);
     46//   _usage = usage_unset(_usage,USE_POSITION             );
     47//   _usage = usage_unset(_usage,USE_STATISTICS           );
     48//   _usage = usage_unset(_usage,USE_INFORMATION          );
     49
     50  Victim_Pseudo_LRU * _Victim_Pseudo_LRU = new Victim_Pseudo_LRU
     51    (name.c_str(),
    4152#ifdef STATISTICS
    42                                                                   param_stat,
    43 #endif
    44                                                                   &param,
    45                                                                   USE_ALL);
     53     param_stat,
     54#endif
     55     &param,
     56     _usage);
    4657 
    4758#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h

    r81 r88  
    3535                        uint32_t size_table,
    3636                        bool     table_global);
    37   public : Parameters  (Parameters & param) ;
     37//   public : Parameters  (Parameters & param) ;
    3838  public : ~Parameters () ;
    3939
     40  public :        void            copy       (void);
     41
    4042  public :        Parameters_test msg_error  (void);
     43
    4144  public :        std::string     print      (uint32_t depth);
    4245  public : friend std::ostream&   operator<< (std::ostream& output_stream,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h

    r82 r88  
    112112  public  :          ~Victim_Pseudo_LRU             (void);
    113113                                               
    114 #ifdef SYSTEMC                                 
    115114  private : void     allocation                (void);
    116115  private : void     deallocation              (void);
    117116                                               
     117#ifdef SYSTEMC                                 
    118118  public  : void     transition                (void);
    119   public  : void     genMoore                  (void);
     119  public  : void     genMealy                  (void);
    120120#endif
    121121                                               
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Parameters.cpp

    r81 r88  
    3030  };
    3131 
    32   Parameters::Parameters (Parameters & param):
    33     _nb_entity  (param._nb_entity ),
    34     _nb_access  (param._nb_access ),
    35 //     _nb_update  (param._nb_update ),
    36     _size_table (param._size_table),
    37     _table_global(param._table_global),
    38     _size_address(param._size_address)
    39   {
    40     test();
     32//   Parameters::Parameters (Parameters & param):
     33//     _nb_entity  (param._nb_entity ),
     34//     _nb_access  (param._nb_access ),
     35// //     _nb_update  (param._nb_update ),
     36//     _size_table (param._size_table),
     37//     _table_global(param._table_global),
     38//     _size_address(param._size_address)
     39//   {
     40//     test();
     41//   };
     42
     43  Parameters::~Parameters ()
     44  {
    4145  };
    4246
    43   Parameters::~Parameters ()
    44   { };
     47  void Parameters::copy (void)
     48  {
     49  };
    4550
    4651}; // end namespace victim_pseudo_lru
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU.cpp

    r82 r88  
    3232    log_printf(FUNC,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Begin");
    3333
    34 #ifdef SYSTEMC
     34#if DEBUG_Victim_Pseudo_LRU == true
     35    log_printf(INFO,Victim_Pseudo_LRU,FUNCTION,_("<%s> Parameters"),_name.c_str());
     36
     37    std::cout << *param << std::endl;
     38#endif   
     39
    3540    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Allocation");
    3641    allocation ();
    37 #endif
    3842
    3943#ifdef STATISTICS
    40     log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Allocation of statistics");
    41    
    42     // Allocation of statistics
    43     statistics_declaration(param_statistics);
     44    if (usage_is_set(_usage,USE_STATISTICS))
     45      {
     46        log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Allocation of statistics");
     47       
     48        // Allocation of statistics
     49        statistics_declaration(param_statistics);
     50      }
    4451#endif
    4552
    4653#ifdef VHDL
    47     // generate the vhdl
    48     log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Generation of VHDL");
    49     vhdl();
     54    if (usage_is_set(_usage,USE_VHDL))
     55      {
     56        // generate the vhdl
     57        log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Generation of VHDL");
     58        vhdl();
     59      }
    5060#endif
    5161
    5262#ifdef SYSTEMC
    53     log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Definition of sc_method");
    54     SC_METHOD (transition);
    55     dont_initialize ();
    56     sensitive << (*(in_CLOCK)).pos();
    57 
    58     SC_METHOD (genMoore);
    59     dont_initialize ();
    60     sensitive << (*(in_CLOCK)).neg();
    61 
    62 #ifdef SYSTEMCASS_SPECIFIC
    63 #endif   
    64 
     63    if (usage_is_set(_usage,USE_SYSTEMC))
     64      {
    6565    // Constant - ack is always at one
    6666    for (uint32_t i=0; i<_param->_nb_access; i++)
     
    7070      }
    7171
     72    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Definition of sc_method");
     73    SC_METHOD (transition);
     74    dont_initialize ();
     75    sensitive << (*(in_CLOCK)).pos();
     76
     77    SC_METHOD (genMealy);
     78    dont_initialize ();
     79    sensitive << (*(in_CLOCK)).neg();
     80    for (uint32_t i=0; i<_param->_nb_access; i++)
     81      if (_param->_size_table>1)
     82        sensitive << (*(in_ACCESS_ADDRESS[i]));
     83
     84#ifdef SYSTEMCASS_SPECIFIC
     85    if (_param->_size_table>1)
     86      for (uint32_t i=0; i<_param->_nb_access; i++)
     87        (*(out_ACCESS_VICTIM[i])) (*(in_ACCESS_ADDRESS[i]));
     88#endif   
     89      }
    7290#endif
    7391    log_printf(FUNC,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","End");
     
    7795  {
    7896    log_printf(FUNC,Victim_Pseudo_LRU,"~Victim_Pseudo_LRU","Begin");
    79 #ifdef SYSTEMC
     97
    8098    deallocation ();
    81 #endif
     99
    82100
    83101#ifdef STATISTICS
    84     delete _stat;
     102    if (usage_is_set(_usage,USE_STATISTICS))
     103      delete _stat;
    85104#endif
    86105    log_printf(FUNC,Victim_Pseudo_LRU,"~Victim_Pseudo_LRU","End");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_allocation.cpp

    r82 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    5352    }
    5453
     54    if (usage_is_set(_usage,USE_SYSTEMC))
     55      {
    5556    // -----[ Register ]---------------------------------------------------
    5657    reg_TABLE = new entry_t *  [_param->_size_table];
     
    6263    internal_ACCESS_ACK    = new Tcontrol_t [_param->_nb_access];
    6364    internal_ACCESS_VICTIM = new Tentity_t  [_param->_nb_access];
     65      }
    6466
    6567#ifdef POSITION
    66     _component->generate_file();
     68    if (usage_is_set(_usage,USE_POSITION))
     69      _component->generate_file();
    6770#endif
    6871  };
     
    7477}; // end namespace behavioural
    7578}; // end namespace morpheo             
    76 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_deallocation.cpp

    r81 r88  
    1 #ifdef SYSTEMC
    21/*
    32 * $Id$
     
    1716  void Victim_Pseudo_LRU::deallocation (void)
    1817  {
     18    if (usage_is_set(_usage,USE_SYSTEMC))
     19      {
    1920    delete     in_CLOCK;
    2021    delete     in_NRESET;
     
    3435    delete [] internal_ACCESS_ACK   ;
    3536    delete [] internal_ACCESS_VICTIM;
     37      }
    3638
    3739    delete _component;
     
    4345}; // end namespace behavioural
    4446}; // end namespace morpheo             
    45 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_end_cycle.cpp

    r81 r88  
    2222
    2323#ifdef STATISTICS
    24     _stat->end_cycle();
     24    if (usage_is_set(_usage,USE_STATISTICS))
     25      _stat->end_cycle();
    2526#endif   
    2627
     
    2829    // Evaluation before read the ouput signal
    2930//  sc_start(0);
    30     _interfaces->testbench();
     31    if (usage_is_set(_usage,USE_VHDL_TESTBENCH))
     32      _interfaces->testbench();
    3133#endif
    3234
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_genMealy.cpp

    r87 r88  
    1515namespace victim_pseudo_lru {
    1616
    17   void Victim_Pseudo_LRU::genMoore (void)
     17  void Victim_Pseudo_LRU::genMealy (void)
    1818  {
    1919    for (uint32_t i=0; i<_param->_nb_access; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/include/Parameters.h

    r81 r88  
    2424namespace generic {
    2525namespace victim {
    26 
    2726
    2827  class Parameters : public morpheo::behavioural::Parameters
     
    5756  public : ~Parameters () ;
    5857
     58  public :        void            copy       (void);
     59
    5960  public :        Parameters_test msg_error  (void);
    6061
     
    6667}; // end namespace victim
    6768}; // end namespace generic
    68 
    6969}; // end namespace behavioural
    7070}; // end namespace morpheo             
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/src/Parameters.cpp

    r81 r88  
    6969    switch (_victim_scheme)
    7070      {
    71 //    case VICTIM_RANDOM      : delete _param_victim_random     ;
    72 //    case VICTIM_ROUND_ROBIN : delete _param_victim_round_robin;
    73 //    case VICTIM_NLU         : delete _param_victim_nlu        ;
    74       case VICTIM_PSEUDO_LRU  : delete _param_victim_pseudo_lru ;
    75 //    case VICTIM_LRU         : delete _param_victim_lru        ;
    76 //    case VICTIM_FIFO        : delete _param_victim_fifo       ;
     71//    case VICTIM_RANDOM      : delete _param_victim_random     ; break;
     72//    case VICTIM_ROUND_ROBIN : delete _param_victim_round_robin; break;
     73//    case VICTIM_NLU         : delete _param_victim_nlu        ; break;
     74      case VICTIM_PSEUDO_LRU  : delete _param_victim_pseudo_lru ; break;
     75//    case VICTIM_LRU         : delete _param_victim_lru        ; break;
     76//    case VICTIM_FIFO        : delete _param_victim_fifo       ; break;
     77      default : break;
     78      }
     79
     80    log_printf(FUNC,Victim,FUNCTION,"End");
     81  };
     82
     83#undef  FUNCTION
     84#define FUNCTION "Victim::copy"
     85  void morpheo::behavioural::generic::victim::Parameters::copy (void)
     86  {
     87    log_printf(FUNC,Victim,FUNCTION,"Begin");
     88
     89    switch (_victim_scheme)
     90      {
     91//    case VICTIM_RANDOM      : COPY(_param_victim_random     ); break;
     92//    case VICTIM_ROUND_ROBIN : COPY(_param_victim_round_robin); break;
     93//    case VICTIM_NLU         : COPY(_param_victim_nlu        ); break;
     94      case VICTIM_PSEUDO_LRU  : COPY(_param_victim_pseudo_lru ); break;
     95//    case VICTIM_LRU         : COPY(_param_victim_lru        ); break;
     96//    case VICTIM_FIFO        : COPY(_param_victim_fifo       ); break;
    7797      default : break;
    7898      }
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/src/Parameters_msg_error.cpp

    r81 r88  
    2626    switch (_victim_scheme)
    2727      {
    28       case VICTIM_RANDOM      : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
    29       case VICTIM_ROUND_ROBIN : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
    30       case VICTIM_NLU         : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
    31 //    case VICTIM_PSEUDO_LRU  : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
    32       case VICTIM_LRU         : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
    33       case VICTIM_FIFO        : test.error("Victim scheme '"+toString(_victim_scheme)+"' is not supported. (Coming Soon)"); break;
     28      case VICTIM_RANDOM      : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
     29      case VICTIM_ROUND_ROBIN : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
     30      case VICTIM_NLU         : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
     31//    case VICTIM_PSEUDO_LRU  : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
     32      case VICTIM_LRU         : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
     33      case VICTIM_FIFO        : test.error(toString(_("Victim scheme \"%s\" is not supported. (Coming Soon)\n"),toString(_victim_scheme).c_str())); break;
    3434      default : break;
    3535      }
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/src/Victim.cpp

    r81 r88  
    3939    allocation (
    4040#ifdef STATISTICS
    41                 param_statistics
     41                param_statistics
    4242#endif
    43                 );
     43                );
    4444
    4545#ifdef STATISTICS
    46     if (_usage & USE_STATISTICS)
    47       {
    48         switch (_param->_victim_scheme)
    49           {
    50 //        case VICTIM_RANDOM      : _stat = _component_victim_random      ->_stat; break;
    51 //        case VICTIM_ROUND_ROBIN : _stat = _component_victim_round_robin ->_stat; break;
    52 //        case VICTIM_NLU         : _stat = _component_victim_nlu         ->_stat; break;
    53           case VICTIM_PSEUDO_LRU  : _stat = _component_victim_pseudo_lru  ->_stat; break;
    54 //        case VICTIM_LRU         : _stat = _component_victim_lru         ->_stat; break;
    55 //        case VICTIM_FIFO        : _stat = _component_victim_fifo        ->_stat; break;
    56           default : break;
    57           }
     46    switch (_param->_victim_scheme)
     47      {
     48//    case VICTIM_RANDOM      : _stat = _component_victim_random      ->_stat; break;
     49//    case VICTIM_ROUND_ROBIN : _stat = _component_victim_round_robin ->_stat; break;
     50//    case VICTIM_NLU         : _stat = _component_victim_nlu         ->_stat; break;
     51      case VICTIM_PSEUDO_LRU  : _stat = _component_victim_pseudo_lru  ->_stat; break;
     52//    case VICTIM_LRU         : _stat = _component_victim_lru         ->_stat; break;
     53//    case VICTIM_FIFO        : _stat = _component_victim_fifo        ->_stat; break;
     54      default : break;
    5855      }
    5956#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/src/Victim_deallocation.cpp

    r81 r88  
    3232      }
    3333   
    34     if (_usage & USE_SYSTEMC)
     34    if (usage_is_set(_usage,USE_SYSTEMC))
    3535      {
    3636        delete    in_CLOCK ;
Note: See TracChangeset for help on using the changeset viewer.