Ignore:
Timestamp:
Jul 11, 2009, 6:39:35 PM (15 years ago)
Author:
rosiere
Message:

1) add constant method - compatibility with SystemC
2) add Script to test sensitive list
3) fix bug in sensitive list

Location:
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine
Files:
12 edited

Legend:

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

    r131 r132  
    113113        SC_METHOD (genMealy_insert);
    114114        dont_initialize ();
    115         sensitive << (*(in_CLOCK)).neg(); // need internal register
     115        sensitive << (*(in_CLOCK)).neg() // need internal register
     116                  << (*(in_NRESET));
    116117//      for (uint32_t i=0; i<_param->_nb_rename_unit; i++)
    117118//        for (uint32_t j=0; j<_param->_nb_inst_insert[i]; j++)
     
    135136        SC_METHOD (genMealy_retire);
    136137        dont_initialize ();
    137         sensitive << (*(in_CLOCK)).neg(); // need internal register
     138        sensitive << (*(in_CLOCK)).neg() // need internal register
     139                  << (*(in_NRESET));
    138140        for (uint32_t i=0; i<_param->_nb_rename_unit; i++)
    139141          for (uint32_t j=0; j<_param->_nb_inst_retire[i]; j++)
     
    243245        SC_METHOD (genMealy_commit);
    244246        dont_initialize ();
    245         sensitive << (*(in_CLOCK)).neg(); // need internal register
     247        sensitive << (*(in_CLOCK)).neg() // need internal register
     248                  << (*(in_NRESET));
    246249        for (uint32_t j=0; j<_param->_nb_inst_commit; j++)
    247250          {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Issue_queue/src/Issue_queue.cpp

    r123 r132  
    134134            SC_METHOD (genMealy_issue_in);
    135135            dont_initialize ();
    136             sensitive << (*(in_CLOCK)).neg(); // need internal register
    137            
     136            sensitive << (*(in_CLOCK)).neg() // need internal register
     137                      << (*(in_NRESET));
    138138# ifdef SYSTEMCASS_SPECIFIC
    139139            // List dependency information
     
    147147            SC_METHOD (genMealy_issue_out);
    148148            dont_initialize ();
    149             sensitive << (*(in_CLOCK)).neg(); // need internal register
    150 
     149            sensitive << (*(in_CLOCK)).neg() // need internal register
     150                      << (*(in_NRESET));
    151151            if (_param->_queue_scheme == ISSUE_QUEUE_SCHEME_IN_ORDER)
    152152              {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/OOO_Engine_Glue/src/OOO_Engine_Glue.cpp

    r123 r132  
    102102        dont_initialize ();
    103103        //sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     104        sensitive << (*(in_NRESET));
    104105        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
    105106          for (uint32_t j=0; j<_param->_nb_inst_decod[i]; ++j)
     
    116117        dont_initialize ();
    117118        //sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     119        sensitive << (*(in_NRESET));
    118120        {
    119121          uint32_t x=0;
     
    136138        dont_initialize ();
    137139        //sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     140        sensitive << (*(in_NRESET));
    138141
    139142        for (uint32_t i=0; i<_param->_nb_rename_unit; ++i)
     
    220223        dont_initialize ();
    221224        //sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     225        sensitive << (*(in_NRESET));
    222226        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
    223227          for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit.cpp

    r131 r132  
    112112        SC_METHOD (genMealy_reexecute);
    113113        dont_initialize ();
    114         sensitive << (*(in_CLOCK)).neg(); // need internal register
     114        sensitive << (*(in_CLOCK)).neg() // need internal register
     115                  << (*(in_NRESET));
    115116
    116117        for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
     
    122123            if (_param->_have_port_rob_ptr  )
    123124            sensitive << (*(in_REEXECUTE_ROB_PACKET_ID             [i]));
    124             sensitive << (*(in_REEXECUTE_ROB_OPERATION             [i]))
     125            sensitive << (*(in_REEXECUTE_ROB_VAL                   [i]))
     126                      << (*(in_REEXECUTE_ACK                       [i]))
     127                      << (*(in_REEXECUTE_ROB_OPERATION             [i]))
    125128                      << (*(in_REEXECUTE_ROB_TYPE                  [i]))
    126129                      << (*(in_REEXECUTE_ROB_STORE_QUEUE_PTR_WRITE [i]));
     
    135138        SC_METHOD (genMealy_commit);
    136139        dont_initialize ();
    137         sensitive << (*(in_CLOCK)).neg(); // need internal register
     140        sensitive << (*(in_CLOCK)).neg() // need internal register
     141                  << (*(in_NRESET));
    138142
    139143        for (uint32_t i=0; i<_param->_nb_execute_loop; ++i)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit.cpp

    r131 r132  
    101101        SC_METHOD (genMealy_insert);
    102102        dont_initialize ();
    103         sensitive << (*(in_CLOCK)).neg();
     103        sensitive << (*(in_CLOCK)).neg()
     104                  << (*(in_NRESET));
     105
    104106        for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
    105107          {
     
    150152        SC_METHOD (genMealy_retire);
    151153        dont_initialize ();
    152         sensitive << (*(in_CLOCK)).neg();
     154        sensitive << (*(in_CLOCK)).neg()
     155                  << (*(in_NRESET));
     156
    153157        for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
    154158          {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Dependency_checking_unit/src/Dependency_checking_unit.cpp

    r123 r132  
    9393        dont_initialize ();
    9494//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     95        sensitive << (*(in_NRESET));
    9596        for (uint32_t i=0;i<_param->_nb_inst_insert; i++)
    9697          {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Free_List_unit/src/Free_List_unit.cpp

    r123 r132  
    100100        SC_METHOD (genMealy_pop);
    101101        dont_initialize ();
    102         sensitive << (*(in_CLOCK)).neg(); // need internal register
     102        sensitive << (*(in_CLOCK)).neg() // need internal register
     103                  << (*(in_NRESET));
     104
    103105        for (uint32_t i=0; i<_param->_nb_pop; i++)
    104106          sensitive << (*(in_POP_GPR_VAL[i]))
     
    121123        SC_METHOD (genMealy_push_gpr);
    122124        dont_initialize ();
    123         sensitive << (*(in_CLOCK)).neg(); // need internal register
     125        sensitive << (*(in_CLOCK)).neg() // need internal register
     126                  << (*(in_NRESET));
     127
    124128        for (uint32_t i=0; i<_param->_nb_push; i++)
    125129          sensitive << (*(in_PUSH_GPR_VAL    [i]))
     
    140144        SC_METHOD (genMealy_push_spr);
    141145        dont_initialize ();
    142         sensitive << (*(in_CLOCK)).neg(); // need internal register
     146        sensitive << (*(in_CLOCK)).neg() // need internal register
     147                  << (*(in_NRESET));
     148
    143149        for (uint32_t i=0; i<_param->_nb_push; i++)
    144150          sensitive << (*(in_PUSH_SPR_VAL    [i]))
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit.cpp

    r131 r132  
    102102        SC_METHOD (genMealy_rename);
    103103        dont_initialize ();
    104         sensitive << (*(in_CLOCK)).neg(); // need internal register
     104        sensitive << (*(in_CLOCK)).neg() // need internal register
     105                  << (*(in_NRESET));
     106
    105107        for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
    106108          {
     
    130132        SC_METHOD (genMealy_retire);
    131133        dont_initialize ();
    132         sensitive << (*(in_CLOCK)).neg(); // need internal register
     134        sensitive << (*(in_CLOCK)).neg() // need internal register
     135                  << (*(in_NRESET));
     136
    133137        for (uint32_t i=0; i<_param->_nb_inst_retire; ++i)
    134138          {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_translation_unit_Glue/src/Register_translation_unit_Glue.cpp

    r123 r132  
    9090        dont_initialize ();
    9191//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     92        sensitive << (*(in_NRESET));
    9293        for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
    9394          sensitive << (*(in_RETIRE_VAL           [i]))
     
    115116        dont_initialize ();
    116117//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     118        sensitive << (*(in_NRESET));
    117119        for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
    118120          sensitive << (*(in_INSERT_RENAME_VAL     [i]))
     
    164166        dont_initialize ();
    165167//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     168        sensitive << (*(in_NRESET));
    166169        for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
    167170          sensitive << (*(in_INSERT_DEPENDENCY_CHECKING_READ_RA            [i]))
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Rename_select/src/Rename_select.cpp

    r123 r132  
    8888        SC_METHOD (genMealy);
    8989        dont_initialize ();
    90         sensitive << (*(in_CLOCK)).neg();
     90        sensitive << (*(in_CLOCK)).neg()
     91                  << (*(in_NRESET));
     92
    9193        for (uint32_t i=0; i<_param->_nb_front_end; i++)
    9294          for (uint32_t j=0; j<_param->_nb_inst_decod [i]; j++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Rename_unit_Glue/src/Rename_unit_Glue.cpp

    r123 r132  
    101101        dont_initialize ();
    102102//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
    103        
     103        sensitive << (*(in_NRESET));
     104
    104105        for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
    105106          sensitive
     
    120121        dont_initialize ();
    121122//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     123        sensitive << (*(in_NRESET));
    122124        for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
    123125          sensitive
     
    136138        dont_initialize ();
    137139//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     140        sensitive << (*(in_NRESET));
    138141        for (uint32_t i=0; i<_param->_nb_front_end; i++)
    139142          for (uint32_t j=0; j<_param->_nb_context[i]; j++)
     
    153156        dont_initialize ();
    154157//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
     158        sensitive << (*(in_NRESET));
    155159        for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
    156160          {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit.cpp

    r131 r132  
    112112        SC_METHOD (genMealy_spr_access);
    113113        dont_initialize ();
    114         sensitive << (*(in_CLOCK)).neg(); // need internal register
    115        
     114        sensitive << (*(in_CLOCK)).neg() // need internal register
     115                  << (*(in_NRESET));
     116
    116117        for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
    117118          {
    118             sensitive << (*(in_SPR_ACCESS_NUM_GROUP    [i]))
     119            sensitive << (*(in_SPR_ACCESS_VAL          [i]))
     120                      << (*(in_SPR_ACCESS_NUM_GROUP    [i]))
    119121                      << (*(in_SPR_ACCESS_NUM_REG      [i]))
    120122//                    << (*(in_SPR_ACCESS_VAL          [i]))
Note: See TracChangeset for help on using the changeset viewer.