- Timestamp:
- Feb 2, 2008, 12:39:01 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Allocation.h
r73 r76 41 41 } 42 42 #define ALLOC_SIGNAL_IN( sig, name, type, size) \ 43 { \ 44 sig = interface->set_signal_in <type> (name, size); \ 45 } 43 if (size > 0) \ 44 { \ 45 sig = interface->set_signal_in <type> (name, size); \ 46 } 46 47 #define ALLOC_SIGNAL_OUT( sig, name, type, size) \ 47 { \ 48 sig = interface->set_signal_out<type> (name, size); \ 49 } 48 if (size > 0) \ 49 { \ 50 sig = interface->set_signal_out<type> (name, size); \ 51 } 50 52 51 53 #define ALLOC_SC_SIGNAL( sig, name, type) \ … … 61 63 #ifdef POSITION 62 64 #define ALLOC1_INTERFACE( name, direction, localisation, str, it1) \ 63 Interface_fifo * interface [it1]; \ 65 const uint32_t iterator_1 = it1; \ 66 Interface_fifo * interface [iterator_1]; \ 64 67 { \ 65 68 std::string separator="_"; \ 66 for (uint32_t i=0; i<it 1; i++)\69 for (uint32_t i=0; i<iterator_1; i++) \ 67 70 { \ 68 71 interface [i] = _interfaces->set_interface( name+separator+toString(i), direction, localisation, str); \ … … 71 74 #else 72 75 #define ALLOC1_INTERFACE( name, direction, localisation, str, it1) \ 73 Interface_fifo * interface [it1]; \ 76 const uint32_t iterator_1 = it1; \ 77 Interface_fifo * interface [iterator_1]; \ 74 78 { \ 75 79 std::string separator="_"; \ 76 for (uint32_t i=0; i<it 1; i++)\80 for (uint32_t i=0; i<iterator_1; i++) \ 77 81 { \ 78 82 interface [i] = _interfaces->set_interface( name+separator+toString(i)); \ … … 82 86 83 87 84 #define ALLOC1_VALACK_IN( sig, name, type , it1) \88 #define ALLOC1_VALACK_IN( sig, name, type) \ 85 89 { \ 86 sig = new SC_IN (Tcontrol_t) * [it 1];\87 for (uint32_t i=0; i<it 1; i++)\90 sig = new SC_IN (Tcontrol_t) * [iterator_1]; \ 91 for (uint32_t i=0; i<iterator_1; i++) \ 88 92 { \ 89 93 sig [i] = interface[i]->set_signal_valack_in (name, type); \ 90 94 } \ 91 95 } 92 #define ALLOC1_VALACK_OUT(sig, name, type , it1) \96 #define ALLOC1_VALACK_OUT(sig, name, type) \ 93 97 { \ 94 sig = new SC_OUT(Tcontrol_t) * [it 1];\95 for (uint32_t i=0; i<it 1; i++)\98 sig = new SC_OUT(Tcontrol_t) * [iterator_1]; \ 99 for (uint32_t i=0; i<iterator_1; i++) \ 96 100 { \ 97 101 sig [i] = interface[i]->set_signal_valack_out(name, type); \ 98 102 } \ 99 103 } 100 #define ALLOC1_VAL_IN( sig , it1)\104 #define ALLOC1_VAL_IN( sig) \ 101 105 { \ 102 sig = new SC_IN (Tcontrol_t) * [it 1];\103 for (uint32_t i=0; i<it 1; i++)\106 sig = new SC_IN (Tcontrol_t) * [iterator_1]; \ 107 for (uint32_t i=0; i<iterator_1; i++) \ 104 108 { \ 105 109 sig [i] = interface[i]->set_signal_valack_in (VAL); \ 106 110 } \ 107 111 } 108 #define ALLOC1_VAL_OUT( sig , it1)\112 #define ALLOC1_VAL_OUT( sig) \ 109 113 { \ 110 sig = new SC_OUT(Tcontrol_t) * [it 1];\111 for (uint32_t i=0; i<it 1; i++)\114 sig = new SC_OUT(Tcontrol_t) * [iterator_1]; \ 115 for (uint32_t i=0; i<iterator_1; i++) \ 112 116 { \ 113 117 sig [i] = interface[i]->set_signal_valack_out(VAL); \ 114 118 } \ 115 119 } 116 #define ALLOC1_ACK_IN( sig , it1)\120 #define ALLOC1_ACK_IN( sig) \ 117 121 { \ 118 sig = new SC_IN (Tcontrol_t) * [it 1];\119 for (uint32_t i=0; i<it 1; i++)\122 sig = new SC_IN (Tcontrol_t) * [iterator_1]; \ 123 for (uint32_t i=0; i<iterator_1; i++) \ 120 124 { \ 121 125 sig [i] = interface[i]->set_signal_valack_in (ACK); \ 122 126 } \ 123 127 } 124 #define ALLOC1_ACK_OUT( sig , it1)\128 #define ALLOC1_ACK_OUT( sig) \ 125 129 { \ 126 sig = new SC_OUT(Tcontrol_t) * [it 1];\127 for (uint32_t i=0; i<it 1; i++)\130 sig = new SC_OUT(Tcontrol_t) * [iterator_1]; \ 131 for (uint32_t i=0; i<iterator_1; i++) \ 128 132 { \ 129 133 sig [i] = interface[i]->set_signal_valack_out(ACK); \ 130 134 } \ 131 135 } 132 #define ALLOC1_SIGNAL_IN( sig, name, type, size, it1) \ 133 { \ 134 sig = new SC_IN (type) * [it1]; \ 135 for (uint32_t i=0; i<it1; i++) \ 136 { \ 137 sig [i] = interface[i]->set_signal_in <type> (name, size); \ 138 } \ 139 } 136 #define ALLOC1_SIGNAL_IN( sig, name, type, size) \ 137 if (size > 0) \ 138 { \ 139 sig = new SC_IN (type) * [iterator_1]; \ 140 for (uint32_t i=0; i<iterator_1; i++) \ 141 { \ 142 sig [i] = interface[i]->set_signal_in <type> (name, size); \ 143 } \ 144 } 140 145 141 #define ALLOC1_SIGNAL_OUT(sig, name, type, size, it1) \ 142 { \ 143 sig = new SC_OUT(type) * [it1]; \ 144 for (uint32_t i=0; i<it1; i++) \ 145 { \ 146 sig [i] = interface[i]->set_signal_out<type> (name, size); \ 147 } \ 148 } 146 #define ALLOC1_SIGNAL_OUT(sig, name, type, size) \ 147 if (size > 0) \ 148 { \ 149 sig = new SC_OUT(type) * [iterator_1]; \ 150 for (uint32_t i=0; i<iterator_1; i++) \ 151 { \ 152 sig [i] = interface[i]->set_signal_out<type> (name, size); \ 153 } \ 154 } 149 155 150 156 #define ALLOC1_SC_SIGNAL( sig, name, type, it1) \
Note: See TracChangeset
for help on using the changeset viewer.