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_deallocation.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: 3.1 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::deallocation"
21  void Execution_unit_to_Write_unit::deallocation (void)
22  {
23    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"Begin");
24
25    if (_usage & USE_SYSTEMC)
26      {
27        delete     in_CLOCK ;
28        delete     in_NRESET;
29
30        delete []  in_EXECUTE_UNIT_OUT_VAL;
31        delete [] out_EXECUTE_UNIT_OUT_ACK;
32        if (_param->_have_port_context_id)
33        delete []  in_EXECUTE_UNIT_OUT_CONTEXT_ID   ;
34        if (_param->_have_port_front_end_id)
35        delete []  in_EXECUTE_UNIT_OUT_FRONT_END_ID ;
36        if (_param->_have_port_ooo_engine_id)
37        delete []  in_EXECUTE_UNIT_OUT_OOO_ENGINE_ID;
38        if (_param->_have_port_packet_id)
39        delete []  in_EXECUTE_UNIT_OUT_PACKET_ID    ;
40      //delete []  in_EXECUTE_UNIT_OUT_OPERATION    ;
41      //delete []  in_EXECUTE_UNIT_OUT_TYPE         ;
42        delete []  in_EXECUTE_UNIT_OUT_WRITE_RD     ;
43        delete []  in_EXECUTE_UNIT_OUT_NUM_REG_RD   ;
44        delete []  in_EXECUTE_UNIT_OUT_DATA_RD      ;
45        delete []  in_EXECUTE_UNIT_OUT_WRITE_RE     ;
46        delete []  in_EXECUTE_UNIT_OUT_NUM_REG_RE   ;
47        delete []  in_EXECUTE_UNIT_OUT_DATA_RE      ;
48        delete []  in_EXECUTE_UNIT_OUT_EXCEPTION    ;
49        delete []  in_EXECUTE_UNIT_OUT_NO_SEQUENCE  ;
50        delete []  in_EXECUTE_UNIT_OUT_ADDRESS      ;
51
52        delete [] out_WRITE_UNIT_IN_VAL;
53        delete []  in_WRITE_UNIT_IN_ACK;
54        if (_param->_have_port_context_id)
55        delete [] out_WRITE_UNIT_IN_CONTEXT_ID   ;
56        if (_param->_have_port_front_end_id)
57        delete [] out_WRITE_UNIT_IN_FRONT_END_ID ;
58        if (_param->_have_port_ooo_engine_id)
59        delete [] out_WRITE_UNIT_IN_OOO_ENGINE_ID;
60        if (_param->_have_port_packet_id)
61        delete [] out_WRITE_UNIT_IN_PACKET_ID    ;
62      //delete [] out_WRITE_UNIT_IN_OPERATION    ;
63      //delete [] out_WRITE_UNIT_IN_TYPE         ;
64        delete [] out_WRITE_UNIT_IN_WRITE_RD     ;
65        delete [] out_WRITE_UNIT_IN_NUM_REG_RD   ;
66        delete [] out_WRITE_UNIT_IN_DATA_RD      ;
67        delete [] out_WRITE_UNIT_IN_WRITE_RE     ;
68        delete [] out_WRITE_UNIT_IN_NUM_REG_RE   ;
69        delete [] out_WRITE_UNIT_IN_DATA_RE      ;
70        delete [] out_WRITE_UNIT_IN_EXCEPTION    ;
71        delete [] out_WRITE_UNIT_IN_NO_SEQUENCE  ;
72        delete [] out_WRITE_UNIT_IN_ADDRESS      ;
73      }
74    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
75
76    delete [] _destination;
77    delete    _component;
78
79    log_printf(FUNC,Execution_unit_to_Write_unit,FUNCTION,"End");
80  };
81
82}; // end namespace execution_unit_to_write_unit
83}; // end namespace network
84}; // end namespace execute_loop
85}; // end namespace multi_execute_loop
86}; // end namespace core
87}; // end namespace behavioural
88}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.