Ignore:
Timestamp:
Jul 5, 2007, 5:50:19 PM (17 years ago)
Author:
rosiere
Message:

Modification des classes d'encapsulation des interfaces :

  • gère les signaux à écrire dans le vhdl
  • les traces pour le testbench
  • la génération des vhdl structurelles

-> test sur la Pattern History Table

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Signal.cpp

    r40 r42  
    1818    _direction     (direction    ),
    1919    _size          (size         ),
    20     _presence_port (presence_port)
     20    _presence_port ((direction==INTERNAL)?PORT_VHDL_NO_TESTBENCH_NO:presence_port)
    2121  {
    2222    log_printf(FUNC,Behavioural,"Signal","Begin");
     23    _is_allocate   = false;
     24    _is_map        = false;
     25    _signal        = NULL;
     26    _sc_signal     = NULL;
     27    _sc_signal_map = NULL;
     28    _type_info     = UNKNOW;
    2329#ifdef VHDL_TESTBENCH
    24     _signal     = NULL;
    25     _type_info  = UNKNOW;
    26     _list_value = new list<string>;
     30    _list_value    = new list<string>;
    2731#endif
    2832    log_printf(FUNC,Behavioural,"Signal","End");
     
    3640  {
    3741    log_printf(FUNC,Behavioural,"Signal (copy)","Begin");
     42    _is_allocate= signal._is_allocate;
     43    _is_map     = signal._is_map    ;
     44    _sc_signal     = signal._sc_signal    ;
     45    _sc_signal_map = signal._sc_signal_map;
     46    _type_info  = signal._type_info ;
    3847#ifdef VHDL_TESTBENCH
    39     _signal     = signal._signal    ;
    40     _type_info  = signal._type_info ;
    4148    _list_value = signal._list_value;
    4249#endif
     
    4754  {
    4855    log_printf(FUNC,Behavioural,"~Signal","Begin");
     56
     57//     if (_is_allocate == true)
     58//       switch (_direction)
     59//      {
     60//      case IN :
     61//        {
     62//          switch (_type_info)
     63//            {
     64//            case BOOL     : {delete (static_cast<sc_in  <bool    > *>(_sc_signal)); break;}
     65//            case UINT8_T  : {delete (static_cast<sc_in  <uint8_t > *>(_sc_signal)); break;}
     66//            case UINT16_T : {delete (static_cast<sc_in  <uint16_t> *>(_sc_signal)); break;}
     67//            case UINT32_T : {delete (static_cast<sc_in  <uint32_t> *>(_sc_signal)); break;}
     68//            case UINT64_T : {delete (static_cast<sc_in  <uint64_t> *>(_sc_signal)); break;}
     69//            default       : {throw (ErrorMorpheo ("Signal \""+_name+"\" : type unknow.")); break;}
     70//            }
     71//          break;
     72//        }
     73//      case OUT :
     74//        {
     75//          switch (_type_info)
     76//            {
     77//            case BOOL     : {delete (static_cast<sc_out <bool    > *>(_sc_signal)); break;}
     78//            case UINT8_T  : {delete (static_cast<sc_out <uint8_t > *>(_sc_signal)); break;}
     79//            case UINT16_T : {delete (static_cast<sc_out <uint16_t> *>(_sc_signal)); break;}
     80//            case UINT32_T : {delete (static_cast<sc_out <uint32_t> *>(_sc_signal)); break;}
     81//            case UINT64_T : {delete (static_cast<sc_out <uint64_t> *>(_sc_signal)); break;}
     82//            default       : {throw (ErrorMorpheo ("Signal \""+_name+"\" : type unknow.")); break;}
     83//            }
     84//          break;
     85//        }
     86//      case INTERNAL :
     87//        {
     88//          switch (_type_info)
     89//            {
     90//            case BOOL     : {delete (static_cast<sc_sc_signal <bool    > *>(_sc_signal)); break;}
     91//            case UINT8_T  : {delete (static_cast<sc_sc_signal <uint8_t > *>(_sc_signal)); break;}
     92//            case UINT16_T : {delete (static_cast<sc_sc_signal <uint16_t> *>(_sc_signal)); break;}
     93//            case UINT32_T : {delete (static_cast<sc_sc_signal <uint32_t> *>(_sc_signal)); break;}
     94//            case UINT64_T : {delete (static_cast<sc_sc_signal <uint64_t> *>(_sc_signal)); break;}
     95//            default       : {throw (ErrorMorpheo ("Signal \""+_name+"\" : type unknow.")); break;}
     96//            }
     97//          break;
     98//        }
     99//      default       : {throw (ErrorMorpheo ("Signal \""+_name+"\" : direction unknow.")); break;}
     100//      }
     101
    49102#ifdef VHDL_TESTBENCH
    50103    delete _list_value;
Note: See TracChangeset for help on using the changeset viewer.