source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/src/Execution_unit_to_Write_unit.cpp @ 77

Last change on this file since 77 was 77, checked in by rosiere, 16 years ago
  • Add two component :
    • network between read unit and execute unit
    • network between execute unit and write unit
  • remove parameters "nb_operation" and "nb_type"
  • in write_queue add the special case : load_speculative
File size: 15.4 KB
Line 
1/*
2 * $Id$
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/include/Execution_unit_to_Write_unit.h"
9
10namespace morpheo                    {
11namespace behavioural {
12namespace core {
13namespace multi_execute_loop {
14namespace execute_loop {
15namespace network {
16namespace execution_unit_to_write_unit {
17
18
19#undef  FUNCTION
20#define FUNCTION "Execution_unit_to_Write_unit::Execution_unit_to_Write_unit"
21  Execution_unit_to_Write_unit::Execution_unit_to_Write_unit
22  (
23#ifdef SYSTEMC
24   sc_module_name name,
25#else
26   string name,
27#endif
28#ifdef STATISTICS
29   morpheo::behavioural::Parameters_Statistics * param_statistics,
30#endif
31   morpheo::behavioural::core::multi_execute_loop::execute_loop::network::execution_unit_to_write_unit::Parameters * param,
32   morpheo::behavioural::Tusage_t usage
33   ):
34    _name              (name)
35    ,_param            (param)
36    ,_usage            (usage)
37  {
38    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"Begin");
39
40    log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Allocation");
41
42    allocation (
43#ifdef STATISTICS
44                param_statistics
45#endif
46                );
47
48#ifdef STATISTICS
49    if (_usage & USE_STATISTICS)
50      { 
51        log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Allocation of statistics");
52
53        statistics_declaration(param_statistics);
54      }
55#endif
56
57#ifdef VHDL
58    if (_usage & USE_VHDL)
59      {
60        // generate the vhdl
61        log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Generate the vhdl");
62       
63        vhdl();
64      }
65#endif
66
67#ifdef SYSTEMC
68    if (_usage & USE_SYSTEMC)
69      {
70        log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Method - transition");
71
72        SC_METHOD (transition);
73        dont_initialize ();
74        sensitive << (*(in_CLOCK)).pos();
75       
76# ifdef SYSTEMCASS_SPECIFIC
77        // List dependency information
78# endif   
79
80        log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Method - genMealy");
81
82        SC_METHOD (genMealy);
83        dont_initialize ();
84        sensitive << (*(in_CLOCK)).pos();
85        for (uint32_t i=0; i<_param->_nb_execute_unit; i++)
86          {
87            if (_param->_have_port_context_id)
88            sensitive << (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [i]));
89            if (_param->_have_port_front_end_id)
90            sensitive << (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [i]));
91            if (_param->_have_port_ooo_engine_id)
92            sensitive << (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [i]));
93            if (_param->_have_port_packet_id)
94            sensitive << (*(in_EXECUTE_UNIT_OUT_PACKET_ID     [i]));
95
96            sensitive << (*(in_EXECUTE_UNIT_OUT_VAL           [i]))
97                    //<< (*(in_EXECUTE_UNIT_OUT_OPERATION     [i]))
98                    //<< (*(in_EXECUTE_UNIT_OUT_TYPE          [i]))
99                      << (*(in_EXECUTE_UNIT_OUT_WRITE_RD      [i]))
100                      << (*(in_EXECUTE_UNIT_OUT_NUM_REG_RD    [i]))
101                      << (*(in_EXECUTE_UNIT_OUT_DATA_RD       [i]))
102                      << (*(in_EXECUTE_UNIT_OUT_WRITE_RE      [i]))
103                      << (*(in_EXECUTE_UNIT_OUT_NUM_REG_RE    [i]))
104                      << (*(in_EXECUTE_UNIT_OUT_DATA_RE       [i]))
105                      << (*(in_EXECUTE_UNIT_OUT_EXCEPTION     [i]))
106                      << (*(in_EXECUTE_UNIT_OUT_NO_SEQUENCE   [i]))
107                      << (*(in_EXECUTE_UNIT_OUT_ADDRESS       [i]));
108          }
109        for (uint32_t i=0; i<_param->_nb_write_unit; i++)
110          sensitive << (*(in_WRITE_UNIT_IN_ACK [i]));
111
112# ifdef SYSTEMCASS_SPECIFIC
113        // List dependency information
114        for (uint32_t i=0; i<_param->_nb_execute_unit; i++)
115          {
116            (*(out_EXECUTE_UNIT_OUT_ACK [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [i]));
117            if (_param->_have_port_context_id)
118            (*(out_EXECUTE_UNIT_OUT_ACK [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [i]));
119            if (_param->_have_port_front_end_id)
120            (*(out_EXECUTE_UNIT_OUT_ACK [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [i]));
121            if (_param->_have_port_ooo_engine_id)
122            (*(out_EXECUTE_UNIT_OUT_ACK [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [i]));
123
124            for (uint32_t j=0; j<_param->_nb_write_unit; j++)
125              (*(out_EXECUTE_UNIT_OUT_ACK [i])) (*(in_WRITE_UNIT_IN_ACK [j])); 
126          }
127
128        for (uint32_t i=0; i<_param->_nb_write_unit; i++)
129          {
130            (*(out_WRITE_UNIT_IN_VAL [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
131            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
132              {
133                (*(out_WRITE_UNIT_IN_VAL [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
134                if (_param->_have_port_context_id)
135                (*(out_WRITE_UNIT_IN_VAL [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
136                if (_param->_have_port_front_end_id)
137                (*(out_WRITE_UNIT_IN_VAL [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
138                if (_param->_have_port_ooo_engine_id)
139                (*(out_WRITE_UNIT_IN_VAL [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
140              }
141
142            if (_param->_have_port_context_id)
143              {
144            (*(out_WRITE_UNIT_IN_CONTEXT_ID [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
145            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
146              {
147                (*(out_WRITE_UNIT_IN_CONTEXT_ID [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
148                if (_param->_have_port_context_id)
149                (*(out_WRITE_UNIT_IN_CONTEXT_ID [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
150                if (_param->_have_port_front_end_id)
151                (*(out_WRITE_UNIT_IN_CONTEXT_ID [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
152                if (_param->_have_port_ooo_engine_id)
153                (*(out_WRITE_UNIT_IN_CONTEXT_ID [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
154              }
155              }
156            if (_param->_have_port_front_end_id)
157              {
158            (*(out_WRITE_UNIT_IN_FRONT_END_ID [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
159            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
160              {
161                (*(out_WRITE_UNIT_IN_FRONT_END_ID [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
162                if (_param->_have_port_context_id)
163                (*(out_WRITE_UNIT_IN_FRONT_END_ID [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
164                if (_param->_have_port_front_end_id)
165                (*(out_WRITE_UNIT_IN_FRONT_END_ID [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
166                if (_param->_have_port_ooo_engine_id)
167                (*(out_WRITE_UNIT_IN_FRONT_END_ID [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
168              }
169              }
170            if (_param->_have_port_ooo_engine_id)
171              {
172            (*(out_WRITE_UNIT_IN_OOO_ENGINE_ID [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
173            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
174              {
175                (*(out_WRITE_UNIT_IN_OOO_ENGINE_ID [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
176                if (_param->_have_port_context_id)
177                (*(out_WRITE_UNIT_IN_OOO_ENGINE_ID [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
178                if (_param->_have_port_front_end_id)
179                (*(out_WRITE_UNIT_IN_OOO_ENGINE_ID [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
180                if (_param->_have_port_ooo_engine_id)
181                (*(out_WRITE_UNIT_IN_OOO_ENGINE_ID [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
182              }
183              }
184
185            if (_param->_have_port_packet_id)
186              {
187            (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
188            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
189              {
190                (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_EXECUTE_UNIT_OUT_PACKET_ID [j]));
191                (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
192                if (_param->_have_port_context_id)
193                (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
194                if (_param->_have_port_front_end_id)
195                (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
196                if (_param->_have_port_ooo_engine_id)
197                (*(out_WRITE_UNIT_IN_PACKET_ID [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
198              }
199              }
200
201//          (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_WRITE_UNIT_IN_ACK [i]));
202//          for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
203//            {
204//              (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_EXECUTE_UNIT_OUT_OPERATION [j]));
205//              (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
206//              if (_param->_have_port_context_id)
207//              (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
208//              if (_param->_have_port_front_end_id)
209//              (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
210//              if (_param->_have_port_ooo_engine_id)
211//              (*(out_WRITE_UNIT_IN_OPERATION [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
212//            }
213
214//          (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_WRITE_UNIT_IN_ACK [i]));
215//          for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
216//            {
217//              (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_EXECUTE_UNIT_OUT_TYPE [j]));
218//              (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
219//              if (_param->_have_port_context_id)
220//              (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
221//              if (_param->_have_port_front_end_id)
222//              (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
223//              if (_param->_have_port_ooo_engine_id)
224//              (*(out_WRITE_UNIT_IN_TYPE [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
225//            }
226
227            (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
228            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
229              {
230                (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_EXECUTE_UNIT_OUT_WRITE_RD [j]));
231                (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
232                if (_param->_have_port_context_id)
233                (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
234                if (_param->_have_port_front_end_id)
235                (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
236                if (_param->_have_port_ooo_engine_id)
237                (*(out_WRITE_UNIT_IN_WRITE_RD [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
238              }
239
240            (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
241            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
242              {
243                (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_EXECUTE_UNIT_OUT_NUM_REG_RD [j]));
244                (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
245                if (_param->_have_port_context_id)
246                (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
247                if (_param->_have_port_front_end_id)
248                (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
249                if (_param->_have_port_ooo_engine_id)
250                (*(out_WRITE_UNIT_IN_NUM_REG_RD [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
251              }
252
253            (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
254            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
255              {
256                (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_EXECUTE_UNIT_OUT_DATA_RD [j]));
257                (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
258                if (_param->_have_port_context_id)
259                (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
260                if (_param->_have_port_front_end_id)
261                (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
262                if (_param->_have_port_ooo_engine_id)
263                (*(out_WRITE_UNIT_IN_DATA_RD [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
264              }
265
266            (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
267            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
268              {
269                (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_EXECUTE_UNIT_OUT_WRITE_RE [j]));
270                (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
271                if (_param->_have_port_context_id)
272                (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
273                if (_param->_have_port_front_end_id)
274                (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
275                if (_param->_have_port_ooo_engine_id)
276                (*(out_WRITE_UNIT_IN_WRITE_RE [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
277              }
278
279            (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
280            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
281              {
282                (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_EXECUTE_UNIT_OUT_NUM_REG_RE [j]));
283                (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
284                if (_param->_have_port_context_id)
285                (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
286                if (_param->_have_port_front_end_id)
287                (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
288                if (_param->_have_port_ooo_engine_id)
289                (*(out_WRITE_UNIT_IN_NUM_REG_RE [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
290              }
291
292            (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
293            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
294              {
295                (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_EXECUTE_UNIT_OUT_DATA_RE [j]));
296                (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
297                if (_param->_have_port_context_id)
298                (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
299                if (_param->_have_port_front_end_id)
300                (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
301                if (_param->_have_port_ooo_engine_id)
302                (*(out_WRITE_UNIT_IN_DATA_RE [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
303              }
304
305            (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
306            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
307              {
308                (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_EXECUTE_UNIT_OUT_EXCEPTION [j]));
309                (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
310                if (_param->_have_port_context_id)
311                (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
312                if (_param->_have_port_front_end_id)
313                (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
314                if (_param->_have_port_ooo_engine_id)
315                (*(out_WRITE_UNIT_IN_EXCEPTION [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
316              }
317
318            (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
319            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
320              {
321                (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_EXECUTE_UNIT_OUT_NO_SEQUENCE [j]));
322                (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
323                if (_param->_have_port_context_id)
324                (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
325                if (_param->_have_port_front_end_id)
326                (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
327                if (_param->_have_port_ooo_engine_id)
328                (*(out_WRITE_UNIT_IN_NO_SEQUENCE [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
329              }
330
331            (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_WRITE_UNIT_IN_ACK [i])); 
332            for (uint32_t j=0; j<_param->_nb_execute_unit; j++)
333              {
334                (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_EXECUTE_UNIT_OUT_ADDRESS [j]));
335                (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_EXECUTE_UNIT_OUT_VAL           [j]));
336                if (_param->_have_port_context_id)
337                (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_EXECUTE_UNIT_OUT_CONTEXT_ID    [j]));
338                if (_param->_have_port_front_end_id)
339                (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_EXECUTE_UNIT_OUT_FRONT_END_ID  [j]));
340                if (_param->_have_port_ooo_engine_id)
341                (*(out_WRITE_UNIT_IN_ADDRESS [i])) (*(in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID [j]));
342              }
343
344          }
345# endif   
346       
347#endif
348      }
349    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"End");
350  };
351   
352#undef  FUNCTION
353#define FUNCTION "Execution_unit_to_Write_unit::~Execution_unit_to_Write_unit"
354  Execution_unit_to_Write_unit::~Execution_unit_to_Write_unit (void)
355  {
356    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"Begin");
357
358#ifdef STATISTICS
359    if (_usage & USE_STATISTICS)
360      {
361        log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Generate Statistics file");
362       
363        delete _stat;
364      }
365#endif
366
367    log_printf(INFO,Execution_unit_to_Write_unit,FUNCTION,"Deallocation");
368    deallocation ();
369
370    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"End");
371  };
372
373}; // end namespace execution_unit_to_write_unit
374}; // end namespace network
375}; // end namespace execute_loop
376}; // end namespace multi_execute_loop
377}; // end namespace core
378
379}; // end namespace behavioural
380}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.