Changeset 31


Ignore:
Timestamp:
May 28, 2007, 10:38:18 PM (17 years ago)
Author:
rosiere
Message:

Class Position qui encapsule la génération des fichiers de positions

Location:
trunk/IPs/systemC/processor/Morpheo
Files:
26 added
27 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/configuration.cfg

    r29 r31  
    11Select_Priority_Fixed
    2 16      16      *2      # nb_entity
    3 0       0       +1      # encoding_one_hot
     22       16      *2      # nb_entity
     30       1       +1      # encoding_one_hot
    441       1       +1      # encoding_compact
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h

    r29 r31  
    1919#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
    2020#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Types.h"
     21#ifdef POSITION
     22#include "Behavioural/include/Position.h"
     23#else
    2124#include "Behavioural/include/Interfaces.h"
     25#endif
    2226
    2327#ifdef STATISTICS
     
    6266#endif
    6367
    64   private   : Interfaces                     * interfaces;
     68#ifdef POSITION
     69  private   : Position                       * _position;
     70#endif
     71
     72  private   : Interfaces                     * _interfaces;
    6573
    6674#ifdef SYSTEMC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_allocation.cpp

    r29 r31  
    99#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    11 namespace morpheo                    {
     11namespace morpheo{
    1212namespace behavioural {
    1313namespace generic {
     
    2121    log_printf(FUNC,Select_Priority_Fixed,"allocation","Begin");
    2222
    23     interfaces = new Interfaces;
     23#ifdef POSITION
     24    _position   = new Position ();
     25
     26    Entity * entity = _position->set_entity (_name                  ,
     27                                             "Select_Priority_Fixed",
     28                                             COMBINATORY            );
     29
     30    _interfaces = entity->set_interfaces();
     31#else
     32    _interfaces = new Interfaces();
     33#endif
    2434
    2535    // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    26     Interface interface_ ("", IN, WEST);
    27    
    28     in_CLOCK        = interface_.set_signal_clk              ("clock" ,1, PORT_VHDL_YES_TESTBENCH_NO);
    29     in_NRESET       = interface_.set_signal_in  <Tcontrol_t> ("nreset",1);
    3036
     37    Interface * interface_ = _interfaces->set_interface(""  ,
     38                                                        IN  ,
     39                                                        WEST,
     40                                                        "...");
     41
     42     in_CLOCK        = interface_->set_signal_clk              ("clock" ,1, PORT_VHDL_YES_TESTBENCH_NO);
     43     in_NRESET       = interface_->set_signal_in  <Tcontrol_t> ("nreset",1);
    3144     in_VAL          = new SC_IN (Tcontrol_t)           * [_param._nb_entity];
    3245    if (_param._encoding_one_hot)
     
    3548    for (uint32_t i=0; i<_param._nb_entity; i++)
    3649      {
    37          in_VAL [i]    = interface_.set_signal_in  <Tcontrol_t> ("val_"+toString(i),1);
     50         in_VAL [i]    = interface_->set_signal_in  <Tcontrol_t> ("val_"+toString(i),1);
    3851        if (_param._encoding_one_hot)
    39         out_ACK [i]    = interface_.set_signal_out <Tcontrol_t> ("ack_"+toString(i),1);
     52        out_ACK [i]    = interface_->set_signal_out <Tcontrol_t> ("ack_"+toString(i),1);
    4053      }
    4154
    4255    if (_param._encoding_compact)
    4356      {
    44         out_ENTITY     = interface_.set_signal_out <Tentity_t > ("entity"    , _param._size_entity);
    45         out_ENTITY_ACK = interface_.set_signal_out <Tcontrol_t> ("entity_ack", 1);
     57        out_ENTITY     = interface_->set_signal_out <Tentity_t > ("entity"    , _param._size_entity);
     58        out_ENTITY_ACK = interface_->set_signal_out <Tcontrol_t> ("entity_ack", 1);
    4659      }
    4760
    4861    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     62
     63#ifdef POSITION
     64    _position->generate_file();
     65#endif
    4966
    5067    log_printf(FUNC,Select_Priority_Fixed,"allocation","End");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_deallocation.cpp

    r29 r31  
    4040    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    4141
    42     delete interfaces;
    43 
     42#ifdef POSITION
     43    delete _position;
     44#else
     45    delete _interfaces;
     46#endif
    4447    log_printf(FUNC,Select_Priority_Fixed,"deallocation","End");
    4548  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_port.cpp

    r29 r31  
    2020
    2121#ifdef VHDL
    22     interfaces->set_port(vhdl);
     22    _interfaces->set_port(vhdl);
    2323#endif
    2424#ifdef VHDL_TESTBENCH
    25     interfaces->set_port(_vhdl_testbench);                     
     25    _interfaces->set_port(_vhdl_testbench);                     
    2626   _vhdl_testbench->set_clock    ("in_CLOCK",true);
    2727#endif   
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Selftest

    r23 r31  
    125125                                        $(DIR_CFG_USER)/*~      \
    126126                                        *.vhdl                  \
     127                                        *.pos                   \
    127128                                        *.stat                  \
    128129                                        generated_by_systemcass \
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Direction.h

    r25 r31  
    1 #ifdef VHDL
    2 
    31#ifndef morpheo_behavioural_Direction_h
    42#define morpheo_behavioural_Direction_h
     
    1311}; // end namespace behavioural         
    1412 
    15 template<>          inline std::string toString<morpheo::behavioural::direction_t>(const morpheo::behavioural::direction_t& x)
    16 {
    17   switch (x)
    18     {
    19     case morpheo::behavioural::IN    : return "in"    ; break;
    20     case morpheo::behavioural::OUT   : return "out"   ; break;
    21     case morpheo::behavioural::INOUT : return "inout" ; break;
    22     default    : return ""      ; break;
    23     }
    24 }
    25 
     13  template<> inline std::string toString<morpheo::behavioural::direction_t>(const morpheo::behavioural::direction_t& x)
     14  {
     15    switch (x)
     16      {
     17      case morpheo::behavioural::IN    : return "in"    ; break;
     18      case morpheo::behavioural::OUT   : return "out"   ; break;
     19      case morpheo::behavioural::INOUT : return "inout" ; break;
     20      default    : return ""      ; break;
     21      }
     22  }
     23 
    2624}; // end namespace morpheo             
    2725
    2826#endif
    29 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Interface.h

    r29 r31  
    2626#endif
    2727#include "Include/ToString.h"
     28#include "Include/ErrorMorpheo.h"
    2829#include "Include/Debug.h"
    2930
     
    3536  class Interface
    3637  {
     38    friend class Interfaces;
     39
    3740    // -----[ fields ]----------------------------------------------------
    3841  private   : const string          _name         ;
     
    4043  private   : const localisation_t  _localisation ;
    4144  private   :       string          _comment      ;
    42   private   : list<Signal>          _list_signal  ;
     45
     46#ifdef POSITION
     47  private   :       bool            _is_map       ;
     48  private   :       void          * _entity_map   ; // Entity -> erreur cyclique
     49  private   :       void          * _interface_map; // pour être homogène avec _entity_map
     50#endif
     51  private   : list<Signal>        * _list_signal  ;
    4352
    4453    // -----[ methods ]---------------------------------------------------
     
    4756                                                          localisation_t localisation);
    4857
     58  public    :                       Interface            (const Interface    & interface);
    4959  public    :                       ~Interface           ();
    5060
    5161  public    : void                  set_comment          (string comment);
    52   public    : string                get_comment          (void          );
     62  private   : string                get_comment          (void          );
    5363
    54   public    : string                set_signal           (Signal          signal   );
    55   public    : string                set_signal           (string          name     ,
     64  private   : string                get_signal           (void);
     65  public    : Signal *              set_signal           (string          name     ,
    5666                                                          direction_t     direction,
    5767                                                          uint32_t        size     ,
     
    6373                                                          presence_port_t presence_port=PORT_VHDL_YES_TESTBENCH_YES)
    6474    {
    65       string str = set_signal (name, IN , size, presence_port);
    66       sc_in_clk * signal = new sc_in_clk (str.c_str());
     75      Signal * sig = set_signal (name, IN , size, presence_port);
     76      sc_in_clk * signal = new sc_in_clk (sig->_name.c_str());
    6777      return signal;
    6878    };
     
    7383                                                         presence_port_t presence_port=PORT_VHDL_YES_TESTBENCH_YES)
    7484    {
    75       string str = set_signal (name, IN , size, presence_port);
    76       sc_in <T> * signal = new sc_in <T> (str.c_str());
     85      Signal * sig = set_signal (name, IN , size, presence_port);
     86      sc_in <T> * signal = new sc_in <T> (sig->_name.c_str());
    7787      return signal;
    7888    };
     
    8393                                                         presence_port_t presence_port=PORT_VHDL_YES_TESTBENCH_YES)
    8494    {
    85       string str = set_signal (name, OUT , size, presence_port);
    86       sc_out <T> * signal = new sc_out <T> (str.c_str());
     95      Signal * sig = set_signal (name, OUT , size, presence_port);
     96      sc_out <T> * signal = new sc_out <T> (sig->_name.c_str());
    8797      return signal;
    8898    };
    8999#endif
    90 
    91   public    : string                get_signal           (void);
    92100
    93101#ifdef VHDL
     
    98106#endif
    99107
     108#ifdef POSITION
     109  public    : void                  port_map             (void * entity,
     110                                                          void * interface);
     111#endif
     112
    100113  public    : XML                   toXML                (void);
    101 
     114#ifdef POSITION
     115  public    : XML                   toXML_mapping        (void);
     116#endif
    102117  public    : friend ostream&       operator<<           (ostream& output_stream,
    103118                                                          morpheo::behavioural::Interface & x);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Interfaces.h

    r29 r31  
    3030  {
    3131    // -----[ fields ]----------------------------------------------------
    32   private   : list<Interface>       _list_interface;
     32  private   : list<Interface>     * _list_interface;
    3333
    3434    // -----[ methods ]---------------------------------------------------
    3535  public    :                       Interfaces            (void);
    36 
     36  public    :                       Interfaces            (const Interfaces & interfaces);
    3737  public    :                       ~Interfaces           ();
    3838
    39   public    : void                  set_interface         (Interface interface);
    40   public    : string                get_interface         (void);
     39  public    : Interface *           set_interface         (string         name        ,
     40                                                           direction_t    direction   ,
     41                                                           localisation_t localisation);
     42  public    : Interface *           set_interface         (string         name        ,
     43                                                           direction_t    direction   ,
     44                                                           localisation_t localisation,
     45                                                           string         comment     );
     46  private   : string                get_interface         (void);
    4147
    4248#ifdef VHDL
     
    4753#endif
    4854
     55  public    : Interface  *          find_interface        (string name);
     56
    4957  public    : XML                   toXML                 (void);
    50 
     58#ifdef POSITION
     59  public    : XML                   toXML_mapping         (void);
     60#endif
    5161  public    : friend ostream&       operator<<            (ostream& output_stream,
    5262                                                           morpheo::behavioural::Interfaces & x);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Localisation.h

    r29 r31  
    1 #ifdef VHDL
    2 
    31#ifndef morpheo_behavioural_Localisation_h
    42#define morpheo_behavioural_Localisation_h
     
    2826
    2927#endif
    30 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Signal.h

    r29 r31  
    2828  class Signal
    2929  {
     30    friend class Interface;
     31
    3032    // -----[ fields ]----------------------------------------------------
    31   public    : const string          _name         ;
    32   public    : const direction_t     _direction    ;
    33   public    : const uint32_t        _size         ;
    34   public    : const presence_port_t _presence_port;
     33  private   : const string          _name         ;
     34  private   : const direction_t     _direction    ;
     35  private   : const uint32_t        _size         ;
     36  private   : const presence_port_t _presence_port;
    3537
    3638    // -----[ methods ]---------------------------------------------------
     
    3941                                                 uint32_t        size          ,
    4042                                                 presence_port_t presence_port = PORT_VHDL_YES_TESTBENCH_YES);
     43  public    :                   Signal          (const Signal &);
    4144  public    :                   ~Signal         ();
    4245
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/XML.h

    r29 r31  
    2424  {
    2525    // -----[ fields ]----------------------------------------------------
    26   private  : const string     _name            ;
    27   private  : string           _body            ;
    28   private  : list<string>     _list_balise_name;
     26  private  : const string     _name              ;
     27  private  : string           _filename_extension;
     28  private  : string           _body              ;
     29  private  : list<string>     _list_balise_name  ;
    2930
    3031    // -----[ methods ]---------------------------------------------------
     
    4243  public   : bool             insert_XML          (XML    xml );
    4344
     45  public   : void             filename_extension  (string extension);
    4446  public   : void             generate_file       (void);
    4547  public   : void             generate_file       (string encoding);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface.cpp

    r29 r31  
    1818    _localisation (localisation)
    1919  {
     20    _list_signal = new list<Signal>;
     21#ifdef POSITION
     22    _is_map      = false;
     23#endif
     24  };
     25
     26  Interface::Interface  (const Interface & interface):
     27    _name         (interface._name        ),
     28    _direction    (interface._direction   ),
     29    _localisation (interface._localisation)
     30  {
     31    _comment     = interface._comment    ;
     32    _list_signal = interface._list_signal;
     33#ifdef POSITION
     34    _is_map      = interface._is_map     ;
     35#endif
    2036  };
    2137 
    2238  Interface::~Interface ()
    2339  {
     40    delete _list_signal;
    2441  };
    2542 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface_get_signal.cpp

    r29 r31  
    1919
    2020
    21     list<Signal>::iterator i     = _list_signal.begin();
    22     bool                   empty = _list_signal.empty();
     21    list<Signal>::iterator i     = _list_signal->begin();
     22    bool                   empty = _list_signal->empty();
    2323
    2424    string                 tab   = string(depth,'\t');
     
    2828      {
    2929        // First
    30         if (i != _list_signal.end())
     30        if (i != _list_signal->end())
    3131          {
    3232            text << tab << *i;
     
    3434          }
    3535       
    36         while (i != _list_signal.end())
     36        while (i != _list_signal->end())
    3737          {
    3838            text << separator;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface_set_port.cpp

    r29 r31  
    1515  void Interface::set_port (Vhdl * & vhdl)
    1616  {
    17     if (not _list_signal.empty())
     17    if (not _list_signal->empty())
    1818      {
    19         list<Signal>::iterator i     = _list_signal.begin();
     19        list<Signal>::iterator i     = _list_signal->begin();
    2020       
    21         while (i != _list_signal.end())
     21        while (i != _list_signal->end())
    2222          {
    2323            presence_port_t p = (*i)._presence_port;
     
    3232  void Interface::set_port (Vhdl_Testbench * & vhdl_testbench)
    3333  {
    34     if (not _list_signal.empty())
     34    if (not _list_signal->empty())
    3535      {
    36         list<Signal>::iterator i     = _list_signal.begin();
     36        list<Signal>::iterator i     = _list_signal->begin();
    3737       
    38         while (i != _list_signal.end())
     38        while (i != _list_signal->end())
    3939          {
    4040            presence_port_t p = (*i)._presence_port;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface_set_signal.cpp

    r29 r31  
    1212namespace behavioural          {
    1313
    14   string Interface::set_signal (Signal signal)
    15   {
    16     return set_signal(signal._name     ,
    17                       signal._direction,
    18                       signal._size     );
    19    
    20   };
     14//   string Interface::set_signal (Signal signal)
     15//   {
     16//     return set_signal(signal._name     ,
     17//                    signal._direction,
     18//                    signal._size     );
     19//   };
    2120
    22   string Interface::set_signal (string          name     ,
    23                                 direction_t     direction,
    24                                 uint32_t        size     ,
    25                                 presence_port_t presence_port)
     21  Signal * Interface::set_signal (string          name     ,
     22                                  direction_t     direction,
     23                                  uint32_t        size     ,
     24                                  presence_port_t presence_port)
    2625  {
    2726    string str_direction =  toString(direction);
     
    3938      signame += "_"+str_signal;
    4039   
    41     _list_signal.push_back (Signal (signame      ,
    42                                     direction    ,
    43                                     size         ,
    44                                     presence_port));
     40    Signal * sig = new Signal (signame      ,
     41                               direction    ,
     42                               size         ,
     43                               presence_port);
     44    _list_signal->push_back (*sig);
    4545
    46     return signame;
     46    return sig;
    4747  };
    4848
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface_toXML.cpp

    r29 r31  
    77
    88#include "Behavioural/include/Interface.h"
     9#include "Behavioural/include/Entity.h"
    910
    1011namespace morpheo              {
     
    1516    XML xml ("interface");
    1617   
    17     xml.balise_open_begin ("interface");
     18    xml.balise_open_begin ("port");
    1819    xml.  attribut        ("name"         ,_name                 );
    1920    xml.  attribut        ("direction"   ,toString(_direction   ));
     
    2223    xml.  text            (get_comment());
    2324
    24     if (_list_signal.empty()== false)
     25    if (_list_signal->empty()== false)
    2526      {
    26         list<Signal>::iterator i     = _list_signal.begin();
     27        list<Signal>::iterator i     = _list_signal->begin();
    2728
    28         while (i != _list_signal.end())
     29        while (i != _list_signal->end())
    2930          {
    3031            xml.  insert_XML ((*i).toXML());
     
    3839  };
    3940
     41#ifdef POSITION
     42  XML Interface::toXML_mapping (void)
     43  {
     44    if (_is_map != true)
     45      throw (ErrorMorpheo ("Interface \""+_name+"\" is never mapped"));
     46
     47    XML xml ("interface");
     48   
     49    xml.singleton_begin ("port_map");
     50    xml.  attribut      ("name"     ,_name               );
     51    xml.  attribut      ("component",(static_cast<Entity    *>(_entity_map   ))->_name);
     52    xml.  attribut      ("port"     ,(static_cast<Interface *>(_interface_map))->_name);
     53    xml.singleton_end   ();
     54     
     55    return xml;
     56  };
     57#endif
    4058}; // end namespace behavioural         
    4159}; // end namespace morpheo             
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces.cpp

    r29 r31  
    1313  Interfaces::Interfaces  (void)
    1414  {
     15    _list_interface = new list<Interface>;
     16  };
     17
     18  Interfaces::Interfaces  (const Interfaces & interfaces)
     19  {
     20    _list_interface = interfaces._list_interface;
    1521  };
    1622 
    1723  Interfaces::~Interfaces ()
    1824  {
     25    delete _list_interface;
    1926  };
    2027 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_get_interface.cpp

    r29 r31  
    1515  {
    1616    uint32_t               depth          = 0;
    17     string                 separator      = ",\n";
     17    string                 separator      = "\n";
    1818    bool                   last_separator = false;
    1919
    20 
    21     list<Interface>::iterator i  = _list_interface.begin();
    22     bool                   empty = _list_interface.empty();
     20    list<Interface>::iterator i  = _list_interface->begin();
     21    bool                   empty = _list_interface->empty();
    2322
    2423    string                 tab   = string(depth,'\t');
     
    2827      {
    2928        // First
    30         if (i != _list_interface.end())
     29        if (i != _list_interface->end())
    3130          {
    3231            text << tab << *i;
     
    3433          }
    3534       
    36         while (i != _list_interface.end())
     35        while (i != _list_interface->end())
    3736          {
    3837            text << separator;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_print.cpp

    r29 r31  
    1212namespace behavioural          {
    1313
    14   ostream& operator<< (ostream& output_stream,
     14  ostream& operator<< (ostream& output_stream ,
    1515                       morpheo::behavioural::Interfaces & x)
    1616  {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_set_interface.cpp

    r29 r31  
    1111namespace behavioural          {
    1212
    13   void Interfaces::set_interface (Interface interface)
     13  Interface * Interfaces::set_interface (string         name        ,
     14                                         direction_t    direction   ,
     15                                         localisation_t localisation)
    1416  {
    15     _list_interface.push_back (interface);
     17    Interface * interface = new Interface (name, direction, localisation);
     18   
     19    _list_interface->push_back (*interface);
     20
     21    return interface;
     22  };
     23
     24  Interface * Interfaces::set_interface (string         name        ,
     25                                         direction_t    direction   ,
     26                                         localisation_t localisation,
     27                                         string         comment     )
     28  {
     29    Interface * interface = set_interface(name, direction, localisation);
     30   
     31    interface->set_comment (comment);
     32
     33    return interface;
    1634  };
    1735
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_set_port.cpp

    r29 r31  
    1515  void Interfaces::set_port (Vhdl * & vhdl)
    1616  {
    17     if (not _list_interface.empty())
     17    if (not _list_interface->empty())
    1818      {
    19         list<Interface>::iterator i     = _list_interface.begin();
     19        list<Interface>::iterator i     = _list_interface->begin();
    2020       
    21         while (i != _list_interface.end())
     21        while (i != _list_interface->end())
    2222          {
    2323            (*i).set_port (vhdl);
     
    2929  void Interfaces::set_port (Vhdl_Testbench * & vhdl_testbench)
    3030  {
    31     if (not _list_interface.empty())
     31    if (not _list_interface->empty())
    3232      {
    33         list<Interface>::iterator i     = _list_interface.begin();
     33        list<Interface>::iterator i     = _list_interface->begin();
    3434       
    35         while (i != _list_interface.end())
     35        while (i != _list_interface->end())
    3636          {
    3737            (*i).set_port (vhdl_testbench);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_toXML.cpp

    r29 r31  
    1515    XML xml ("interfaces");
    1616   
    17 //     xml.balise_open ("interfaces");
     17    if (_list_interface->empty()== false)
     18      {
     19        list<Interface>::iterator i     = _list_interface->begin();
    1820
    19     if (_list_interface.empty()== false)
    20       {
    21         list<Interface>::iterator i     = _list_interface.begin();
    22 
    23         while (i != _list_interface.end())
     21        while (i != _list_interface->end())
    2422          {
    2523            xml.  insert_XML ((*i).toXML());
     
    2725          }
    2826      }
    29 
    30 //     xml.balise_close      ();
    3127     
    3228    return xml;
    3329  };
    3430
     31#ifdef POSITION
     32  XML Interfaces::toXML_mapping (void)
     33  {
     34    XML xml ("interfaces");
     35   
     36    if (_list_interface->empty()== false)
     37      {
     38        list<Interface>::iterator i     = _list_interface->begin();
     39
     40        while (i != _list_interface->end())
     41          {
     42            xml.  insert_XML ((*i).toXML_mapping());
     43            ++i;
     44          }
     45      }
     46     
     47    return xml;
     48  };
     49#endif
    3550}; // end namespace behavioural         
    3651}; // end namespace morpheo             
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Signal.cpp

    r29 r31  
    2121  {
    2222  };
    23  
     23
     24  Signal::Signal  (const Signal & signal):
     25    _name          (signal._name         ),
     26    _direction     (signal._direction    ),
     27    _size          (signal._size         ),
     28    _presence_port (signal._presence_port)
     29  {
     30  };
     31
    2432  Signal::~Signal ()
    2533  {
    2634  };
    27  
    2835
    2936}; // end namespace behavioural         
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/XML.cpp

    r3 r31  
    1414    _name (name)
    1515  {
     16    _filename_extension="xml";
    1617  };
    1718
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/XML_generate_file.cpp

    r3 r31  
    1818
    1919    string name     = _name;
    20     string filename =  name + ".xml";
     20    string filename =  name + "." + _filename_extension;
    2121
    2222    cout << "Generate file \""<< filename << "\"" << endl;
  • trunk/IPs/systemC/processor/Morpheo/Include/Types.h

    r2 r31  
    3535#define SC_CLOCK                 sc_in_clk       
    3636#define SC_INTERNAL(type)        type
     37#define SC_REGISTER(type)        sc_signal<type >
    3738#define SC_SIGNAL(type)          sc_signal<type >
    38 #define SC_REGISTER(type)        sc_signal<type >
    3939#define SC_IN(type)              sc_in    <type >
    4040#define SC_OUT(type)             sc_out   <type >
Note: See TracChangeset for help on using the changeset viewer.