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 @ 66

Last change on this file since 66 was 66, checked in by rosiere, 17 years ago
  • un pas de plus vers la compatibilite avec systemC
  • modification de l'interface de read_queue : context_id devient context_id, front_end_id et ooo_engine_id
File size: 4.7 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    delete     in_READ_QUEUE_IN_CONTEXT_ID     ;
33    delete     in_READ_QUEUE_IN_FRONT_END_ID   ;
34    delete     in_READ_QUEUE_IN_OOO_ENGINE_ID  ;
35    delete     in_READ_QUEUE_IN_ROB_ID         ;
36    delete     in_READ_QUEUE_IN_OPERATION      ;
37    delete     in_READ_QUEUE_IN_TYPE           ;
38    delete     in_READ_QUEUE_IN_HAS_IMMEDIAT   ;
39    delete     in_READ_QUEUE_IN_IMMEDIAT       ;
40    delete     in_READ_QUEUE_IN_READ_RA        ;
41    delete     in_READ_QUEUE_IN_NUM_REG_RA     ;
42    delete     in_READ_QUEUE_IN_READ_RB        ;
43    delete     in_READ_QUEUE_IN_NUM_REG_RB     ;
44    delete     in_READ_QUEUE_IN_READ_RC        ;
45    delete     in_READ_QUEUE_IN_NUM_REG_RC     ;
46    delete     in_READ_QUEUE_IN_WRITE_RD       ;
47    delete     in_READ_QUEUE_IN_NUM_REG_RD     ;
48    delete     in_READ_QUEUE_IN_WRITE_RE       ;
49    delete     in_READ_QUEUE_IN_NUM_REG_RE     ;
50
51    // ~~~~~[ Interface : "read_queue_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52    delete    out_READ_QUEUE_OUT_VAL            ;
53    delete     in_READ_QUEUE_OUT_ACK            ;
54    delete    out_READ_QUEUE_OUT_CONTEXT_ID     ;
55    delete    out_READ_QUEUE_OUT_FRONT_END_ID   ;
56    delete    out_READ_QUEUE_OUT_OOO_ENGINE_ID  ;
57    delete    out_READ_QUEUE_OUT_ROB_ID         ;
58    delete    out_READ_QUEUE_OUT_OPERATION      ;
59    delete    out_READ_QUEUE_OUT_TYPE           ;
60    delete    out_READ_QUEUE_OUT_HAS_IMMEDIAT   ;
61    delete    out_READ_QUEUE_OUT_IMMEDIAT       ;
62    delete    out_READ_QUEUE_OUT_READ_RA        ;
63    delete    out_READ_QUEUE_OUT_NUM_REG_RA     ;
64    delete    out_READ_QUEUE_OUT_DATA_RA_VAL    ;
65    delete    out_READ_QUEUE_OUT_DATA_RA        ;
66    delete    out_READ_QUEUE_OUT_READ_RB        ;
67    delete    out_READ_QUEUE_OUT_NUM_REG_RB     ;
68    delete    out_READ_QUEUE_OUT_DATA_RB_VAL    ;
69    delete    out_READ_QUEUE_OUT_DATA_RB        ;
70    delete    out_READ_QUEUE_OUT_READ_RC        ;
71    delete    out_READ_QUEUE_OUT_NUM_REG_RC     ;
72    delete    out_READ_QUEUE_OUT_DATA_RC_VAL    ;
73    delete    out_READ_QUEUE_OUT_DATA_RC        ;
74    delete    out_READ_QUEUE_OUT_WRITE_RD       ;
75    delete    out_READ_QUEUE_OUT_NUM_REG_RD     ;
76    delete    out_READ_QUEUE_OUT_WRITE_RE       ;
77    delete    out_READ_QUEUE_OUT_NUM_REG_RE     ;
78
79    // ~~~~~[ Interface : "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
80   
81    delete [] out_GPR_READ_VAL       ;
82    delete []  in_GPR_READ_ACK       ;
83    delete [] out_GPR_READ_OOO_ENGINE_ID;
84    delete [] out_GPR_READ_NUM_REG   ;
85    delete []  in_GPR_READ_DATA      ;
86    delete []  in_GPR_READ_DATA_VAL  ;
87
88    // ~~~~~[ Interface : "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
89   
90    delete [] out_SPR_READ_VAL       ;
91    delete []  in_SPR_READ_ACK       ;
92    delete [] out_SPR_READ_OOO_ENGINE_ID;
93    delete [] out_SPR_READ_NUM_REG   ;
94    delete []  in_SPR_READ_DATA      ;
95    delete []  in_SPR_READ_DATA_VAL  ;
96
97    // ~~~~~[ Interface : "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
98   
99    delete []  in_GPR_WRITE_VAL       ;
100    delete []  in_GPR_WRITE_OOO_ENGINE_ID;
101    delete []  in_GPR_WRITE_NUM_REG   ;
102    delete []  in_GPR_WRITE_DATA      ;
103
104    // ~~~~~[ Interface : "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
105   
106    delete []  in_SPR_WRITE_VAL       ;
107    delete []  in_SPR_WRITE_OOO_ENGINE_ID;
108    delete []  in_SPR_WRITE_NUM_REG   ;
109    delete []  in_SPR_WRITE_DATA      ;
110
111    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
112
113    while (_queue->empty() == false)
114      {
115        delete _queue->front();
116        _queue->pop();
117      }
118    delete _queue;
119    delete _queue_head;
120    delete _component;
121    log_printf(FUNC,Read_queue,"deallocation","End");
122  };
123
124}; // end namespace read_queue
125}; // end namespace read_unit
126}; // end namespace multi_read_unit
127}; // end namespace execute_loop
128}; // end namespace multi_execute_loop
129}; // end namespace core
130
131}; // end namespace behavioural
132}; // end namespace morpheo             
133#endif
Note: See TracBrowser for help on using the repository browser.