source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_deallocation.cpp @ 68

Last change on this file since 68 was 68, checked in by rosiere, 16 years ago

read_queue : systemC et vhdl ok !
queue : quelques petits modif pour avoir une queue de taille 1
nettoyage des fichiers *mkf*

File size: 5.2 KB
Line 
1#ifdef SYSTEMC
2/*
3 * $Id$
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Read_queue.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace core {
14namespace multi_execute_loop {
15namespace execute_loop {
16namespace multi_read_unit {
17namespace read_unit {
18namespace read_queue {
19
20
21  void Read_queue::deallocation (void)
22  {
23    log_printf(FUNC,Read_queue,"deallocation","Begin");
24
25    // ~~~~~[ Interface : "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26    delete     in_CLOCK ;
27    delete     in_NRESET;
28
29    // ~~~~~[ Interface : "read_queue_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30    delete     in_READ_QUEUE_IN_VAL            ;
31    delete    out_READ_QUEUE_IN_ACK            ;
32
33    if(_param->_have_port_context_id   )
34      delete     in_READ_QUEUE_IN_CONTEXT_ID     ;
35    if(_param->_have_port_front_end_id )
36      delete     in_READ_QUEUE_IN_FRONT_END_ID   ;
37    if(_param->_have_port_ooo_engine_id)
38      delete     in_READ_QUEUE_IN_OOO_ENGINE_ID  ;
39    if(_param->_have_port_rob_id       )
40      delete     in_READ_QUEUE_IN_ROB_ID         ;
41    delete     in_READ_QUEUE_IN_OPERATION      ;
42    delete     in_READ_QUEUE_IN_TYPE           ;
43    delete     in_READ_QUEUE_IN_HAS_IMMEDIAT   ;
44    delete     in_READ_QUEUE_IN_IMMEDIAT       ;
45    delete     in_READ_QUEUE_IN_READ_RA        ;
46    delete     in_READ_QUEUE_IN_NUM_REG_RA     ;
47    delete     in_READ_QUEUE_IN_READ_RB        ;
48    delete     in_READ_QUEUE_IN_NUM_REG_RB     ;
49    delete     in_READ_QUEUE_IN_READ_RC        ;
50    delete     in_READ_QUEUE_IN_NUM_REG_RC     ;
51    delete     in_READ_QUEUE_IN_WRITE_RD       ;
52    delete     in_READ_QUEUE_IN_NUM_REG_RD     ;
53    delete     in_READ_QUEUE_IN_WRITE_RE       ;
54    delete     in_READ_QUEUE_IN_NUM_REG_RE     ;
55
56    // ~~~~~[ Interface : "read_queue_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
57    delete    out_READ_QUEUE_OUT_VAL            ;
58    delete     in_READ_QUEUE_OUT_ACK            ;
59
60    if(_param->_have_port_context_id   )
61      delete    out_READ_QUEUE_OUT_CONTEXT_ID     ;
62    if(_param->_have_port_front_end_id )
63      delete    out_READ_QUEUE_OUT_FRONT_END_ID   ;
64    if(_param->_have_port_ooo_engine_id)
65      delete    out_READ_QUEUE_OUT_OOO_ENGINE_ID  ;
66    if(_param->_have_port_rob_id       )
67      delete    out_READ_QUEUE_OUT_ROB_ID         ;
68    delete    out_READ_QUEUE_OUT_OPERATION      ;
69    delete    out_READ_QUEUE_OUT_TYPE           ;
70    delete    out_READ_QUEUE_OUT_HAS_IMMEDIAT   ;
71    delete    out_READ_QUEUE_OUT_IMMEDIAT       ;
72    delete    out_READ_QUEUE_OUT_READ_RA        ;
73    delete    out_READ_QUEUE_OUT_NUM_REG_RA     ;
74    delete    out_READ_QUEUE_OUT_DATA_RA_VAL    ;
75    delete    out_READ_QUEUE_OUT_DATA_RA        ;
76    delete    out_READ_QUEUE_OUT_READ_RB        ;
77    delete    out_READ_QUEUE_OUT_NUM_REG_RB     ;
78    delete    out_READ_QUEUE_OUT_DATA_RB_VAL    ;
79    delete    out_READ_QUEUE_OUT_DATA_RB        ;
80    delete    out_READ_QUEUE_OUT_READ_RC        ;
81    delete    out_READ_QUEUE_OUT_NUM_REG_RC     ;
82    delete    out_READ_QUEUE_OUT_DATA_RC_VAL    ;
83    delete    out_READ_QUEUE_OUT_DATA_RC        ;
84    delete    out_READ_QUEUE_OUT_WRITE_RD       ;
85    delete    out_READ_QUEUE_OUT_NUM_REG_RD     ;
86    delete    out_READ_QUEUE_OUT_WRITE_RE       ;
87    delete    out_READ_QUEUE_OUT_NUM_REG_RE     ;
88
89    // ~~~~~[ Interface : "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
90   
91    delete [] out_GPR_READ_VAL       ;
92    delete []  in_GPR_READ_ACK       ;
93    if(_param->_have_port_ooo_engine_id)
94      delete [] out_GPR_READ_OOO_ENGINE_ID;
95    delete [] out_GPR_READ_NUM_REG   ;
96    delete []  in_GPR_READ_DATA      ;
97    delete []  in_GPR_READ_DATA_VAL  ;
98
99    // ~~~~~[ Interface : "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
100   
101    delete [] out_SPR_READ_VAL       ;
102    delete []  in_SPR_READ_ACK       ;
103    if(_param->_have_port_ooo_engine_id)
104      delete [] out_SPR_READ_OOO_ENGINE_ID;
105    delete [] out_SPR_READ_NUM_REG   ;
106    delete []  in_SPR_READ_DATA      ;
107    delete []  in_SPR_READ_DATA_VAL  ;
108
109    // ~~~~~[ Interface : "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
110   
111    delete []  in_GPR_WRITE_VAL       ;
112    if(_param->_have_port_ooo_engine_id)
113      delete []  in_GPR_WRITE_OOO_ENGINE_ID;
114    delete []  in_GPR_WRITE_NUM_REG   ;
115    delete []  in_GPR_WRITE_DATA      ;
116
117    // ~~~~~[ Interface : "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118   
119    delete []  in_SPR_WRITE_VAL       ;
120    if(_param->_have_port_ooo_engine_id)
121      delete []  in_SPR_WRITE_OOO_ENGINE_ID;
122    delete []  in_SPR_WRITE_NUM_REG   ;
123    delete []  in_SPR_WRITE_DATA      ;
124
125    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
126
127    while (_queue->empty() == false)
128      {
129        delete _queue->front();
130        _queue->pop();
131      }
132    delete _queue;
133    delete _queue_head;
134    delete _component;
135    log_printf(FUNC,Read_queue,"deallocation","End");
136  };
137
138}; // end namespace read_queue
139}; // end namespace read_unit
140}; // end namespace multi_read_unit
141}; // end namespace execute_loop
142}; // end namespace multi_execute_loop
143}; // end namespace core
144
145}; // end namespace behavioural
146}; // end namespace morpheo             
147#endif
Note: See TracBrowser for help on using the repository browser.