Ignore:
Timestamp:
Dec 10, 2008, 7:31:39 PM (15 years ago)
Author:
rosiere
Message:

Almost complete design
with Test and test platform

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/src/Read_unit_to_Execution_unit_deallocation.cpp

    r81 r88  
    77
    88#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/include/Read_unit_to_Execution_unit.h"
     9#include "Behavioural/include/Allocation.h"
    910
    1011namespace morpheo                    {
     
    2324    log_printf(FUNC,Read_unit_to_Execution_unit,FUNCTION,"Begin");
    2425
    25     if (_usage & USE_SYSTEMC)
     26    if (usage_is_set(_usage,USE_SYSTEMC))
    2627      {
    2728        delete    in_CLOCK ;
    2829        delete    in_NRESET;
    2930
    30         // ~~~~~[ Interface "read_unit_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    31         delete [] in_READ_UNIT_OUT_VAL                  ;
    32         delete []out_READ_UNIT_OUT_ACK                  ;
    33         if (_param->_have_port_context_id)
    34         delete [] in_READ_UNIT_OUT_CONTEXT_ID           ;
    35         if (_param->_have_port_front_end_id)
    36         delete [] in_READ_UNIT_OUT_FRONT_END_ID         ;
    37         if (_param->_have_port_ooo_engine_id)
    38         delete [] in_READ_UNIT_OUT_OOO_ENGINE_ID        ;
    39         if (_param->_have_port_packet_id)
    40         delete [] in_READ_UNIT_OUT_PACKET_ID            ;
    41         delete [] in_READ_UNIT_OUT_OPERATION            ;
    42         delete [] in_READ_UNIT_OUT_TYPE                 ;
    43         delete [] in_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE;
    44         if (_param->_have_port_load_queue_ptr)
    45         delete [] in_READ_UNIT_OUT_LOAD_QUEUE_PTR_WRITE ;
    46         delete [] in_READ_UNIT_OUT_HAS_IMMEDIAT         ;
    47         delete [] in_READ_UNIT_OUT_IMMEDIAT             ;
    48         delete [] in_READ_UNIT_OUT_DATA_RA              ;
    49         delete [] in_READ_UNIT_OUT_DATA_RB              ;
    50         delete [] in_READ_UNIT_OUT_DATA_RC              ;
    51         delete [] in_READ_UNIT_OUT_WRITE_RD             ;
    52         delete [] in_READ_UNIT_OUT_NUM_REG_RD           ;
    53         delete [] in_READ_UNIT_OUT_WRITE_RE             ;
    54         delete [] in_READ_UNIT_OUT_NUM_REG_RE           ;
     31         DELETE2_SIGNAL( in_READ_UNIT_OUT_VAL                    , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],1                              );
     32         DELETE2_SIGNAL(out_READ_UNIT_OUT_ACK                    , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],1                              );
     33         DELETE2_SIGNAL( in_READ_UNIT_OUT_CONTEXT_ID             , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_context_id       );
     34         DELETE2_SIGNAL( in_READ_UNIT_OUT_FRONT_END_ID           , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_front_end_id     );
     35         DELETE2_SIGNAL( in_READ_UNIT_OUT_OOO_ENGINE_ID          , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_ooo_engine_id    );
     36         DELETE2_SIGNAL( in_READ_UNIT_OUT_PACKET_ID              , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_rob_ptr          );
     37         DELETE2_SIGNAL( in_READ_UNIT_OUT_OPERATION              , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_operation        );
     38         DELETE2_SIGNAL( in_READ_UNIT_OUT_TYPE                   , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_type             );
     39         DELETE2_SIGNAL( in_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE  , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_store_queue_ptr  );
     40         DELETE2_SIGNAL( in_READ_UNIT_OUT_LOAD_QUEUE_PTR_WRITE   , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_load_queue_ptr   );
     41         DELETE2_SIGNAL( in_READ_UNIT_OUT_HAS_IMMEDIAT           , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],1                              );
     42         DELETE2_SIGNAL( in_READ_UNIT_OUT_IMMEDIAT               , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_general_data     );
     43         DELETE2_SIGNAL( in_READ_UNIT_OUT_DATA_RA                , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_general_data     );
     44         DELETE2_SIGNAL( in_READ_UNIT_OUT_DATA_RB                , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_general_data     );
     45         DELETE2_SIGNAL( in_READ_UNIT_OUT_DATA_RC                , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_special_data     );
     46         DELETE2_SIGNAL( in_READ_UNIT_OUT_WRITE_RD               , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],1                              );
     47         DELETE2_SIGNAL( in_READ_UNIT_OUT_NUM_REG_RD             , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_general_register );
     48         DELETE2_SIGNAL( in_READ_UNIT_OUT_WRITE_RE               , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],1                              );
     49         DELETE2_SIGNAL( in_READ_UNIT_OUT_NUM_REG_RE             , _param->_nb_read_unit, _param->_nb_read_unit_port [it1],_param->_size_special_register );
     50       
     51         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_VAL                  , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],1                              );
     52         DELETE2_SIGNAL( in_EXECUTE_UNIT_IN_ACK                  , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],1                              );
     53         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_CONTEXT_ID           , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_context_id       );
     54         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_FRONT_END_ID         , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_front_end_id     );
     55         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_OOO_ENGINE_ID        , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_ooo_engine_id    );
     56         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_PACKET_ID            , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_rob_ptr          );
     57         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_OPERATION            , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_operation        );
     58         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_TYPE                 , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_type             );
     59         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_HAS_IMMEDIAT         , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],1                              );
     60         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_DATA_RC              , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_special_data     );
     61         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_WRITE_RD             , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],1                              );
     62         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_WRITE_RE             , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],1                              );
     63         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_NUM_REG_RE           , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_special_register );
     64         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_STORE_QUEUE_PTR_WRITE, _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_store_queue_ptr  );
     65         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_LOAD_QUEUE_PTR_WRITE , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_load_queue_ptr   );
     66         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_IMMEDIAT             , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_general_data     );
     67         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_DATA_RA              , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_general_data     );
     68         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_DATA_RB              , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_general_data     );
     69         DELETE2_SIGNAL(out_EXECUTE_UNIT_IN_NUM_REG_RD           , _param->_nb_execute_unit, _param->_nb_execute_unit_port [it1],_param->_size_general_register );
    5570
    56         // ~~~~~[ Interface "execute_unit_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    57         delete [] out_EXECUTE_UNIT_IN_VAL                  ;
    58         delete []  in_EXECUTE_UNIT_IN_ACK                  ;
    59         if (_param->_have_port_context_id)
    60         delete [] out_EXECUTE_UNIT_IN_CONTEXT_ID           ;
    61         if (_param->_have_port_front_end_id)
    62         delete [] out_EXECUTE_UNIT_IN_FRONT_END_ID         ;
    63         if (_param->_have_port_ooo_engine_id)
    64         delete [] out_EXECUTE_UNIT_IN_OOO_ENGINE_ID        ;
    65         if (_param->_have_port_packet_id)
    66         delete [] out_EXECUTE_UNIT_IN_PACKET_ID            ;
    67         delete [] out_EXECUTE_UNIT_IN_OPERATION            ;
    68         delete [] out_EXECUTE_UNIT_IN_TYPE                 ;
    69         delete [] out_EXECUTE_UNIT_IN_HAS_IMMEDIAT         ;
    70         delete [] out_EXECUTE_UNIT_IN_DATA_RC              ;
    71         delete [] out_EXECUTE_UNIT_IN_WRITE_RD             ;
    72         delete [] out_EXECUTE_UNIT_IN_WRITE_RE             ;
    73         delete [] out_EXECUTE_UNIT_IN_NUM_REG_RE           ;
    74         delete [] out_EXECUTE_UNIT_IN_STORE_QUEUE_PTR_WRITE;
    75         if (_param->_have_port_load_queue_ptr)
    76         delete [] out_EXECUTE_UNIT_IN_LOAD_QUEUE_PTR_WRITE ;
    77         delete [] out_EXECUTE_UNIT_IN_IMMEDIAT             ;
    78         delete [] out_EXECUTE_UNIT_IN_DATA_RA              ;
    79         delete [] out_EXECUTE_UNIT_IN_DATA_RB              ;
    80         delete [] out_EXECUTE_UNIT_IN_NUM_REG_RD           ;
     71         delete [] _destination;
    8172      }
    8273    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    8374
    84     delete [] _destination;
    8575    delete    _component;
    8676
Note: See TracChangeset for help on using the changeset viewer.