source: trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interface_set_signal.cpp @ 113

Last change on this file since 113 was 113, checked in by rosiere, 15 years ago

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

  • Property svn:keywords set to Id
File size: 1.1 KB
RevLine 
[29]1/*
2 * $Id: Interface_set_signal.cpp 113 2009-04-14 18:39:12Z rosiere $
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/include/Interface.h"
9
10namespace morpheo              {
11namespace behavioural          {
12
[113]13#undef  FUNCTION
14#define FUNCTION "Interface::set_signal"
[88]15  Signal * Interface::set_signal (std::string     name     ,
[31]16                                  direction_t     direction,
17                                  uint32_t        size     ,
18                                  presence_port_t presence_port)
[29]19  {
[113]20    log_begin(Behavioural,FUNCTION);
[29]21
[75]22    std::string signame = signal_name(_name, name, direction);
[88]23   
[112]24    Signal * sig = new Signal (signame, direction, size, presence_port);
[29]25
[38]26    _list_signal->push_back (sig);
27
[113]28    log_end(Behavioural,FUNCTION);
[38]29
[31]30    return sig;
[29]31  };
32
[41]33#ifdef VHDL
34#  ifdef VHDL_TESTBENCH
[43]35
36#undef  FUNCTION
37#define FUNCTION "Interface::set_signal"
[41]38  void Interface::set_signal (Vhdl * & vhdl)
39  {
[113]40    log_begin(Behavioural,FUNCTION);
[41]41    if (not _list_signal->empty())
42      {
[75]43        std::list<Signal*>::iterator i = _list_signal->begin();
[41]44       
45        while (i != _list_signal->end())
46          {
47            (*i)->set_signal (vhdl);
48            ++i;
49          }
50      }
[113]51    log_end(Behavioural,FUNCTION);
[41]52  };
53#  endif
54#endif
55
[29]56}; // end namespace behavioural         
57}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.