- Timestamp:
- Jun 5, 2007, 11:06:46 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Signal.h
r38 r40 23 23 #include "Behavioural/include/XML.h" 24 24 #include "Include/ErrorMorpheo.h" 25 #include "Include/ToBase2.h" 25 26 #include "Include/ToString.h" 26 27 #include "Include/Debug.h" … … 56 57 private : void * _signal ; 57 58 private : type_info_t _type_info ; 59 60 private : list<string> * _list_value ; 58 61 #endif 59 62 … … 67 70 68 71 #ifdef VHDL_TESTBENCH 72 public :template <typename T> 73 T read (void) 74 { 75 switch (_direction) 76 { 77 case IN : {return read_in <T>();} 78 case OUT : {return read_out <T>();} 79 default : throw (ErrorMorpheo ("Signal \""+_name+"\" : direction unknow.")); 80 } 81 } 82 83 public :template <typename T> 84 T read_in (void) 85 { 86 switch (_type_info) 87 { 88 case BOOL : return (static_cast<sc_in <bool > *>(_signal)->read()); 89 case UINT8_T : return (static_cast<sc_in <uint8_t > *>(_signal)->read()); 90 case UINT16_T : return (static_cast<sc_in <uint16_t> *>(_signal)->read()); 91 case UINT32_T : return (static_cast<sc_in <uint32_t> *>(_signal)->read()); 92 case UINT64_T : return (static_cast<sc_in <uint64_t> *>(_signal)->read()); 93 default : throw (ErrorMorpheo ("Signal \""+_name+"\" : type unknow.")); 94 } 95 } 96 97 public :template <typename T> 98 T read_out(void) 99 { 100 switch (_type_info) 101 { 102 case BOOL : return (static_cast<sc_out <bool > *>(_signal)->read()); 103 case UINT8_T : return (static_cast<sc_out <uint8_t > *>(_signal)->read()); 104 case UINT16_T : return (static_cast<sc_out <uint16_t> *>(_signal)->read()); 105 case UINT32_T : return (static_cast<sc_out <uint32_t> *>(_signal)->read()); 106 case UINT64_T : return (static_cast<sc_out <uint64_t> *>(_signal)->read()); 107 default : throw (ErrorMorpheo ("Signal \""+_name+"\" : type unknow.")); 108 } 109 } 110 69 111 public : void testbench (Vhdl_Testbench * & vhdl_testbench); 70 112
Note: See TracChangeset
for help on using the changeset viewer.