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_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue_deallocation.cpp

    r88 r112  
    77
    88#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/include/Register_unit_Glue.h"
     9#include "Behavioural/include/Allocation.h"
    910
    1011namespace morpheo                    {
     
    2627      {
    2728//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    28     delete    in_CLOCK ;
     29    delete  in_CLOCK ;
    2930//#endif
    30     delete    in_NRESET;
     31    delete  in_NRESET;
     32    delete out_CONST_0;
     33    delete out_CONST_1;
    3134
    32     // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    33     delete []  in_GPR_READ_VAL               ;
    34     delete [] out_GPR_READ_ACK               ;
    35     if (_param->_have_port_ooo_engine_id == true)
    36     delete []  in_GPR_READ_OOO_ENGINE_ID     ;
    37     delete [] out_GPR_READ_DATA              ;
    38     delete [] out_GPR_READ_DATA_VAL          ;
     35    DELETE1_SIGNAL( in_GPR_READ_VAL           ,_param->_nb_gpr_read,1  );
     36    DELETE1_SIGNAL(out_GPR_READ_ACK           ,_param->_nb_gpr_read,1  );
     37    DELETE1_SIGNAL( in_GPR_READ_OOO_ENGINE_ID ,_param->_nb_gpr_read,_param->_size_ooo_engine_id);
     38    DELETE1_SIGNAL(out_GPR_READ_DATA          ,_param->_nb_gpr_read,_param->_size_general_data);
     39    DELETE1_SIGNAL(out_GPR_READ_DATA_VAL      ,_param->_nb_gpr_read,1);
     40   
     41    DELETE2_SIGNAL(out_GPR_READ_REGISTERFILE_VAL ,_param->_nb_ooo_engine,_param->_nb_gpr_read,1  );
     42    DELETE2_SIGNAL( in_GPR_READ_REGISTERFILE_ACK ,_param->_nb_ooo_engine,_param->_nb_gpr_read,1  );
     43    DELETE2_SIGNAL( in_GPR_READ_REGISTERFILE_DATA,_param->_nb_ooo_engine,_param->_nb_gpr_read,_param->_size_general_data);
    3944
    40     delete [] out_GPR_READ_REGISTERFILE_VAL  ;
    41     delete []  in_GPR_READ_REGISTERFILE_ACK  ;
    42     delete []  in_GPR_READ_REGISTERFILE_DATA ;
     45    DELETE2_SIGNAL(out_GPR_READ_STATUS_VAL     ,_param->_nb_ooo_engine,_param->_nb_gpr_read,1  );
     46    DELETE2_SIGNAL( in_GPR_READ_STATUS_ACK     ,_param->_nb_ooo_engine,_param->_nb_gpr_read,1  );
     47    DELETE2_SIGNAL( in_GPR_READ_STATUS_DATA_VAL,_param->_nb_ooo_engine,_param->_nb_gpr_read,1);
    4348
    44     delete [] out_GPR_READ_STATUS_VAL        ;
    45     delete []  in_GPR_READ_STATUS_ACK        ;
    46     delete []  in_GPR_READ_STATUS_DATA_VAL   ;
     49    DELETE1_SIGNAL( in_SPR_READ_VAL           ,_param->_nb_spr_read,1  );
     50    DELETE1_SIGNAL(out_SPR_READ_ACK           ,_param->_nb_spr_read,1  );
     51    DELETE1_SIGNAL( in_SPR_READ_OOO_ENGINE_ID ,_param->_nb_spr_read,_param->_size_ooo_engine_id);
     52    DELETE1_SIGNAL(out_SPR_READ_DATA          ,_param->_nb_spr_read,_param->_size_special_data);
     53    DELETE1_SIGNAL(out_SPR_READ_DATA_VAL      ,_param->_nb_spr_read,1);
     54   
     55    DELETE2_SIGNAL(out_SPR_READ_REGISTERFILE_VAL ,_param->_nb_ooo_engine,_param->_nb_spr_read,1  );
     56    DELETE2_SIGNAL( in_SPR_READ_REGISTERFILE_ACK ,_param->_nb_ooo_engine,_param->_nb_spr_read,1  );
     57    DELETE2_SIGNAL( in_SPR_READ_REGISTERFILE_DATA,_param->_nb_ooo_engine,_param->_nb_spr_read,_param->_size_special_data);
     58   
     59    DELETE2_SIGNAL(out_SPR_READ_STATUS_VAL     ,_param->_nb_ooo_engine,_param->_nb_spr_read,1  );
     60    DELETE2_SIGNAL( in_SPR_READ_STATUS_ACK     ,_param->_nb_ooo_engine,_param->_nb_spr_read,1  );
     61    DELETE2_SIGNAL( in_SPR_READ_STATUS_DATA_VAL,_param->_nb_ooo_engine,_param->_nb_spr_read,1);
     62   
     63    DELETE1_SIGNAL( in_GPR_WRITE_VAL          ,_param->_nb_gpr_write,1  );
     64    DELETE1_SIGNAL(out_GPR_WRITE_ACK          ,_param->_nb_gpr_write,1  );
     65    DELETE1_SIGNAL( in_GPR_WRITE_OOO_ENGINE_ID,_param->_nb_gpr_write,_param->_size_ooo_engine_id);
    4766
     67   
     68    DELETE2_SIGNAL(out_GPR_WRITE_REGISTERFILE_VAL,_param->_nb_ooo_engine,_param->_nb_gpr_write,1  );
     69    DELETE2_SIGNAL( in_GPR_WRITE_REGISTERFILE_ACK,_param->_nb_ooo_engine,_param->_nb_gpr_write,1  );
    4870
    49     // ~~~~~[ Interface "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    50     delete []  in_SPR_READ_VAL               ;
    51     delete [] out_SPR_READ_ACK               ;
    52     if (_param->_have_port_ooo_engine_id == true)
    53     delete []  in_SPR_READ_OOO_ENGINE_ID     ;
    54     delete [] out_SPR_READ_DATA              ;
    55     delete [] out_SPR_READ_DATA_VAL          ;
     71    DELETE2_SIGNAL(out_GPR_WRITE_STATUS_VAL,_param->_nb_ooo_engine,_param->_nb_gpr_write,1  );
     72    DELETE2_SIGNAL( in_GPR_WRITE_STATUS_ACK,_param->_nb_ooo_engine,_param->_nb_gpr_write,1  );
    5673
    57     delete [] out_SPR_READ_REGISTERFILE_VAL  ;
    58     delete []  in_SPR_READ_REGISTERFILE_ACK  ;
    59     delete []  in_SPR_READ_REGISTERFILE_DATA ;
     74    DELETE1_SIGNAL( in_SPR_WRITE_VAL          ,_param->_nb_spr_write,1  );
     75    DELETE1_SIGNAL(out_SPR_WRITE_ACK          ,_param->_nb_spr_write,1  );
     76    DELETE1_SIGNAL( in_SPR_WRITE_OOO_ENGINE_ID,_param->_nb_spr_write,_param->_size_ooo_engine_id);
    6077
    61     delete [] out_SPR_READ_STATUS_VAL        ;
    62     delete []  in_SPR_READ_STATUS_ACK        ;
    63     delete []  in_SPR_READ_STATUS_DATA_VAL   ;
     78    DELETE2_SIGNAL(out_SPR_WRITE_REGISTERFILE_VAL,_param->_nb_ooo_engine,_param->_nb_spr_write,1  );
     79    DELETE2_SIGNAL( in_SPR_WRITE_REGISTERFILE_ACK,_param->_nb_ooo_engine,_param->_nb_spr_write,1  );
    6480
    65     // ~~~~~[ Interface "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    66     delete []  in_GPR_WRITE_VAL               ;
    67     delete [] out_GPR_WRITE_ACK               ;
    68     if (_param->_have_port_ooo_engine_id == true)
    69     delete []  in_GPR_WRITE_OOO_ENGINE_ID     ;
     81    DELETE2_SIGNAL(out_SPR_WRITE_STATUS_VAL,_param->_nb_ooo_engine,_param->_nb_spr_write,1  );
     82    DELETE2_SIGNAL( in_SPR_WRITE_STATUS_ACK,_param->_nb_ooo_engine,_param->_nb_spr_write,1  );
    7083
    71     delete [] out_GPR_WRITE_REGISTERFILE_VAL  ;
    72     delete []  in_GPR_WRITE_REGISTERFILE_ACK  ;
     84    DELETE2_SIGNAL( in_INSERT_ROB_VAL   ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
     85    DELETE2_SIGNAL(out_INSERT_ROB_ACK   ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
     86    DELETE2_SIGNAL( in_INSERT_ROB_RD_USE,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
     87    DELETE2_SIGNAL( in_INSERT_ROB_RE_USE,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
    7388
    74     delete [] out_GPR_WRITE_STATUS_VAL        ;
    75     delete []  in_GPR_WRITE_STATUS_ACK        ;
     89    DELETE2_SIGNAL(out_INSERT_ROB_GPR_STATUS_VAL,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
     90    DELETE2_SIGNAL( in_INSERT_ROB_GPR_STATUS_ACK,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
    7691
    77     // ~~~~~[ Interface "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    78     delete []  in_SPR_WRITE_VAL               ;
    79     delete [] out_SPR_WRITE_ACK               ;
    80     if (_param->_have_port_ooo_engine_id == true)
    81     delete []  in_SPR_WRITE_OOO_ENGINE_ID     ;
    82 
    83     delete [] out_SPR_WRITE_REGISTERFILE_VAL  ;
    84     delete []  in_SPR_WRITE_REGISTERFILE_ACK  ;
    85 
    86     delete [] out_SPR_WRITE_STATUS_VAL        ;
    87     delete []  in_SPR_WRITE_STATUS_ACK        ;
    88 
    89     // ~~~~~[ Interface "insert_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    90     delete []  in_INSERT_ROB_VAL                  ;
    91     delete [] out_INSERT_ROB_ACK                  ;
    92     delete []  in_INSERT_ROB_RD_USE               ;
    93     delete []  in_INSERT_ROB_RE_USE               ;
    94     delete [] out_INSERT_ROB_GPR_STATUS_VAL       ;
    95     delete []  in_INSERT_ROB_GPR_STATUS_ACK       ;
    96     delete [] out_INSERT_ROB_SPR_STATUS_VAL       ;
    97     delete []  in_INSERT_ROB_SPR_STATUS_ACK       ;
    98 
    99 //     // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    100 //     delete []  in_RETIRE_ROB_VAL                      ;
    101 //     delete [] out_RETIRE_ROB_ACK                      ;
    102 //     delete []  in_RETIRE_ROB_RD_OLD_USE               ;
    103 //     delete []  in_RETIRE_ROB_RD_NEW_USE               ;
    104 //     delete []  in_RETIRE_ROB_RE_OLD_USE               ;
    105 //     delete []  in_RETIRE_ROB_RE_NEW_USE               ;
    106 //     delete [] out_RETIRE_ROB_GPR_STATUS_OLD_VAL       ;
    107 //     delete [] out_RETIRE_ROB_GPR_STATUS_NEW_VAL       ;
    108 //     delete []  in_RETIRE_ROB_GPR_STATUS_OLD_ACK       ;
    109 //     delete []  in_RETIRE_ROB_GPR_STATUS_NEW_ACK       ;
    110 //     delete [] out_RETIRE_ROB_SPR_STATUS_OLD_VAL       ;
    111 //     delete [] out_RETIRE_ROB_SPR_STATUS_NEW_VAL       ;
    112 //     delete []  in_RETIRE_ROB_SPR_STATUS_OLD_ACK       ;
    113 //     delete []  in_RETIRE_ROB_SPR_STATUS_NEW_ACK       ;
     92    DELETE2_SIGNAL(out_INSERT_ROB_SPR_STATUS_VAL,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
     93    DELETE2_SIGNAL( in_INSERT_ROB_SPR_STATUS_ACK,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob [it1],1);
    11494      }
    11595    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
Note: See TracChangeset for help on using the changeset viewer.