Ignore:
Timestamp:
Apr 14, 2009, 8:39:12 PM (15 years ago)
Author:
rosiere
Message:

1) Add modelsim simulation systemC
2) Modelsim cosimulation systemC / VHDL is not finish !!!! (cf execute_queue and write_unit)
3) Add multi architecture
5) Add template for comparator, multiplier and divider
6) Change Message
Warning) Various test macro have change, many selftest can't compile

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/src/Execute_queue.cpp

    r88 r113  
    3535    _name              (name)
    3636    ,_param            (param)
    37     ,_usage            (usage)
    3837  {
    39     log_printf(FUNC,Execute_queue,FUNCTION,"Begin");
     38    log_begin(Execute_queue,FUNCTION);
    4039
    41 #if DEBUG_Execute_queue == true
    42     log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Parameters"),_name.c_str());
     40    _usage = usage_environment(usage);
    4341
    44     std::cout << *param << std::endl;
    45 #endif   
     42// #if DEBUG_Execute_queue == true
     43//     log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Parameters"),_name.c_str());
    4644
    47     log_printf(INFO,Execute_queue,FUNCTION,"Allocation");
     45//     std::cout << *param << std::endl;
     46// #endif   
     47
     48#ifdef MODELSIM_COSIMULATION
     49    {
     50      std::string param_id = param->id();
     51     
     52      if ((_model.get_type(_param->_type) == MODEL_VHDL) and
     53          (param_id != "")
     54          )
     55        {
     56          std::string vhdl_id = vhdl_get_id(_name);
     57         
     58          if (vhdl_id == param_id)
     59            {
     60              msgInformation(_("<%s> Use VHDL model\n"),_name.c_str());
     61              _usage = usage_cosimulation(_usage);
     62            }
     63          else
     64            {
     65              log_printf(TRACE,Execute_queue,FUNCTION,"get_id : %s",vhdl_id.c_str());
     66              log_printf(TRACE,Execute_queue,FUNCTION,"id     : %s",param_id.c_str());
     67           
     68              msgWarning(_("<%s> Can't load VHDL model, continue with SystemC model\n"),_name.c_str());
     69            }
     70        }
     71    }
     72#endif
     73
     74    log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Allocation"),_name.c_str());
    4875    allocation ();
    4976
     
    5178    if (usage_is_set(_usage,USE_STATISTICS))
    5279      {
    53         log_printf(INFO,Execute_queue,FUNCTION,"Allocation of statistics");
     80        log_printf(INFO,Execute_queue,FUNCTION,("<%s> Allocation of statistics"),_name.c_str());
    5481
    5582        statistics_declaration(param_statistics);
     
    6188      {
    6289        // generate the vhdl
    63         log_printf(INFO,Execute_queue,FUNCTION,"Generate the vhdl");
     90        log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Generate the vhdl"),_name.c_str());
    6491       
    6592        vhdl();
     
    6895
    6996#ifdef SYSTEMC
    70     if (usage_is_set(_usage,USE_SYSTEMC))
     97    if (usage_is_set(_usage,USE_SYSTEMC_BODY))
    7198      {
    72         log_printf(INFO,Execute_queue,FUNCTION,"Method - transition");
     99        log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Method - transition"),_name.c_str());
    73100
    74101        SC_METHOD (transition);
     
    80107# endif   
    81108
    82         log_printf(INFO,Execute_queue,FUNCTION,"Method - genMoore");
     109        log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Method - genMoore"),_name.c_str());
    83110
    84111        SC_METHOD (genMoore);
     
    89116        // List dependency information
    90117# endif   
    91        
     118      }
    92119#endif
    93       }
    94     log_printf(FUNC,Execute_queue,FUNCTION,"End");
     120    log_end(Execute_queue,FUNCTION);
    95121  };
    96122   
     
    99125  Execute_queue::~Execute_queue (void)
    100126  {
    101     log_printf(FUNC,Execute_queue,FUNCTION,"Begin");
     127    log_begin(Execute_queue,FUNCTION);
    102128
    103129#ifdef STATISTICS
    104130    if (usage_is_set(_usage,USE_STATISTICS))
    105131      {
    106         log_printf(INFO,Execute_queue,FUNCTION,"Generate Statistics file");
     132        log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Generate Statistics file"),_name.c_str());
    107133       
    108134        delete _stat;
     
    110136#endif
    111137
    112     log_printf(INFO,Execute_queue,FUNCTION,"Deallocation");
     138    log_printf(INFO,Execute_queue,FUNCTION,_("<%s> Deallocation"),_name.c_str());
    113139    deallocation ();
    114140
    115     log_printf(FUNC,Execute_queue,FUNCTION,"End");
     141    log_end(Execute_queue,FUNCTION);
    116142  };
    117143
Note: See TracChangeset for help on using the changeset viewer.