Ignore:
Timestamp:
Mar 18, 2009, 11:36:26 PM (15 years ago)
Author:
rosiere
Message:

1) Stat_list : fix retire old and new register bug
2) Stat_list : remove read_counter and valid flag, because validation of destination is in retire step (not in commit step)
3) Model : add class Model (cf Morpheo.sim)
4) Allocation : alloc_interface_begin and alloc_interface_end to delete temporary array.
5) Script : add distexe.sh
6) Add Comparator, Multiplier, Divider. But this component are not implemented
7) Software : add Dhrystone

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit_deallocation.cpp

    r88 r112  
    77
    88#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h"
     9#include "Behavioural/include/Allocation.h"
    910
    1011namespace morpheo                    {
     
    2829        delete    in_NRESET;
    2930
    30         // ~~~~~[ Interface : "insert" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    31         delete []  in_INSERT_VAL                  ;
    32         delete [] out_INSERT_ACK                  ;
    33         if (_param->_have_port_front_end_id)
    34         delete []  in_INSERT_FRONT_END_ID         ;
    35         if (_param->_have_port_context_id)
    36         delete []  in_INSERT_CONTEXT_ID           ;
    37         delete []  in_INSERT_TYPE                 ;
    38         delete []  in_INSERT_OPERATION            ;
    39         delete [] out_INSERT_STORE_QUEUE_PTR_WRITE;
    40         if (_param->_have_port_load_queue_ptr)
    41         delete [] out_INSERT_LOAD_QUEUE_PTR_WRITE ;
    42        
    43         // ~~~~~[ Interface : "retire" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    44         delete []  in_RETIRE_VAL                  ;
    45         delete [] out_RETIRE_ACK                  ;
    46         if (_param->_have_port_front_end_id)
    47         delete []  in_RETIRE_FRONT_END_ID         ;
    48         if (_param->_have_port_context_id)
    49         delete []  in_RETIRE_CONTEXT_ID           ;
    50 //      delete []  in_RETIRE_TYPE                 ;
    51 //      delete []  in_RETIRE_OPERATION            ;
    52         delete []  in_RETIRE_USE_STORE_QUEUE      ;
    53         delete []  in_RETIRE_USE_LOAD_QUEUE       ;
    54         delete []  in_RETIRE_STORE_QUEUE_PTR_WRITE;
    55         if (_param->_have_port_load_queue_ptr)
    56         delete []  in_RETIRE_LOAD_QUEUE_PTR_WRITE ;
     31        DELETE1_SIGNAL( in_INSERT_VAL                  ,_param->_nb_inst_insert,1);
     32        DELETE1_SIGNAL(out_INSERT_ACK                  ,_param->_nb_inst_insert,1);
     33        DELETE1_SIGNAL( in_INSERT_FRONT_END_ID         ,_param->_nb_inst_insert,_param->_size_front_end_id   );
     34        DELETE1_SIGNAL( in_INSERT_CONTEXT_ID           ,_param->_nb_inst_insert,_param->_size_context_id     );
     35        DELETE1_SIGNAL( in_INSERT_TYPE                 ,_param->_nb_inst_insert,_param->_size_type           );
     36        DELETE1_SIGNAL( in_INSERT_OPERATION            ,_param->_nb_inst_insert,_param->_size_operation      );
     37        DELETE1_SIGNAL(out_INSERT_STORE_QUEUE_PTR_WRITE,_param->_nb_inst_insert,_param->_size_store_queue_ptr);
     38        DELETE1_SIGNAL(out_INSERT_LOAD_QUEUE_PTR_WRITE ,_param->_nb_inst_insert,_param->_size_load_queue_ptr );
    5739
    58         delete [] reg_STORE_QUEUE_PTR_WRITE    ;
    59         delete [] reg_STORE_QUEUE_USE          ;
    60         delete [] reg_STORE_QUEUE_NB_USE       ;
    61         delete [] reg_LOAD_QUEUE_PTR_WRITE     ;
    62         delete [] reg_LOAD_QUEUE_USE           ;
    63         delete [] internal_INSERT_ACK          ;
    64         delete [] internal_INSERT_OPERATION_USE;
    65         delete [] internal_INSERT_LSQ          ;
    66         delete [] internal_INSERT_PTR          ;
    67         delete [] internal_RETIRE_ACK          ;
    68         delete [] internal_RETIRE_OPERATION_USE;
    69         delete [] internal_RETIRE_LSQ          ;
    70         delete [] internal_RETIRE_PTR          ;
     40        DELETE1_SIGNAL( in_RETIRE_VAL                  ,_param->_nb_inst_retire,1);
     41        DELETE1_SIGNAL(out_RETIRE_ACK                  ,_param->_nb_inst_retire,1);
     42        DELETE1_SIGNAL( in_RETIRE_FRONT_END_ID         ,_param->_nb_inst_retire,_param->_size_front_end_id   );
     43        DELETE1_SIGNAL( in_RETIRE_CONTEXT_ID           ,_param->_nb_inst_retire,_param->_size_context_id     );
     44//      DELETE1_SIGNAL( in_RETIRE_TYPE                 ,_param->_nb_inst_retire,_param->_size_type           );
     45//      DELETE1_SIGNAL( in_RETIRE_OPERATION            ,_param->_nb_inst_retire,_param->_size_operation      );
     46        DELETE1_SIGNAL( in_RETIRE_USE_STORE_QUEUE      ,_param->_nb_inst_retire,1);
     47        DELETE1_SIGNAL( in_RETIRE_USE_LOAD_QUEUE       ,_param->_nb_inst_retire,1);
     48        DELETE1_SIGNAL( in_RETIRE_STORE_QUEUE_PTR_WRITE,_param->_nb_inst_retire,_param->_size_store_queue_ptr);
     49        DELETE1_SIGNAL( in_RETIRE_LOAD_QUEUE_PTR_WRITE ,_param->_nb_inst_retire,_param->_size_load_queue_ptr );
     50
     51        DELETE1(reg_STORE_QUEUE_PTR_WRITE     ,_param->_nb_load_store_queue);
     52        DELETE2(reg_STORE_QUEUE_USE           ,_param->_nb_load_store_queue,_param->_size_store_queue [it1]);
     53        DELETE1(reg_STORE_QUEUE_NB_USE        ,_param->_nb_load_store_queue);
     54        DELETE1(reg_LOAD_QUEUE_PTR_WRITE      ,_param->_nb_load_store_queue);
     55        DELETE2(reg_LOAD_QUEUE_USE            ,_param->_nb_load_store_queue,_param->_size_load_queue  [it1]);
     56       
     57        DELETE1(internal_INSERT_ACK           ,_param->_nb_inst_insert);
     58        DELETE1(internal_INSERT_OPERATION_USE ,_param->_nb_inst_insert);
     59        DELETE1(internal_INSERT_LSQ           ,_param->_nb_inst_insert);
     60        DELETE1(internal_INSERT_PTR           ,_param->_nb_inst_insert);
     61       
     62        DELETE1(internal_RETIRE_ACK           ,_param->_nb_inst_retire);
     63        DELETE1(internal_RETIRE_OPERATION_USE ,_param->_nb_inst_retire);
     64        DELETE1(internal_RETIRE_LSQ           ,_param->_nb_inst_retire);
     65        DELETE1(internal_RETIRE_PTR           ,_param->_nb_inst_retire);
    7166      }
    7267
Note: See TracChangeset for help on using the changeset viewer.