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_Execute_loop/Execute_loop
Files:
8 edited

Legend:

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

    r123 r132  
    100100        dont_initialize ();
    101101//      sensitive << (*(in_CLOCK)).neg(); // don't internal register
    102        
     102        sensitive << (*(in_NRESET));
     103
    103104    for (uint32_t i=0; i<_param->_nb_gpr_write; i++)
    104105      {
     
    135136        dont_initialize ();
    136137//      sensitive << (*(in_CLOCK)).neg(); // don't internal register
    137        
     138        sensitive << (*(in_NRESET));
     139
    138140    for (uint32_t i=0; i<_param->_nb_spr_write; i++)
    139141      {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Functionnal_unit.cpp

    r123 r132  
    9595        dont_initialize ();
    9696        sensitive << (*(in_CLOCK)).neg()  // use internal register
     97                  << (*(in_NRESET))
    9798//                << (*(in_EXECUTE_IN_VAL ))
    9899                  << (*(in_EXECUTE_OUT_ACK));
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Load_store_unit.cpp

    r131 r132  
    132132    SC_METHOD (genMealy_insert);
    133133    dont_initialize ();
    134     sensitive << (*(in_CLOCK)).neg();
     134    sensitive << (*(in_CLOCK)).neg()
     135              << (*(in_NRESET));
    135136    for (uint32_t i=0; i<_param->_nb_inst_memory; i++)
    136137      sensitive << (*(in_MEMORY_IN_VAL       [i]))
     
    151152    SC_METHOD (genMealy_retire);
    152153    dont_initialize ();
    153     sensitive << (*(in_CLOCK)).neg();
     154    sensitive << (*(in_CLOCK)).neg()
     155              << (*(in_NRESET));
    154156
    155157#ifdef SYSTEMCASS_SPECIFIC
     
    161163    SC_METHOD (genMealy_dcache);
    162164    dont_initialize ();
    163     sensitive << (*(in_CLOCK)).neg();
     165    sensitive << (*(in_CLOCK)).neg()
     166              << (*(in_NRESET));
    164167
    165168#ifdef SYSTEMCASS_SPECIFIC
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue.cpp

    r131 r132  
    8686    SC_METHOD (genMealy_read_queue_out_val);
    8787    dont_initialize ();
    88     sensitive << (*(in_CLOCK)).neg();
     88    sensitive << (*(in_CLOCK)).neg()
     89              << (*(in_NRESET));
    8990    for (uint32_t i=0; i<_param->_nb_gpr_read ; i++)
    9091      sensitive << *(in_GPR_READ_ACK      [i]);
     
    133134    SC_METHOD (genMealy_read_queue_out_gpr);
    134135    dont_initialize ();
    135     sensitive << (*(in_CLOCK)).neg();
     136    sensitive << (*(in_CLOCK)).neg()
     137              << (*(in_NRESET));
    136138    for (uint32_t i=0; i<_param->_nb_gpr_read ; i++)
    137139      sensitive << *(in_GPR_READ_ACK      [i])
     
    185187    SC_METHOD (genMealy_read_queue_out_spr);
    186188    dont_initialize ();
    187     sensitive << (*(in_CLOCK)).neg();
     189    sensitive << (*(in_CLOCK)).neg()
     190              << (*(in_NRESET));
    188191    for (uint32_t i=0; i<_param->_nb_spr_read ; i++)
    189192      sensitive << *(in_SPR_READ_ACK      [i])
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue.cpp

    r118 r132  
    9696        SC_METHOD (genMealy_write);
    9797        dont_initialize ();
    98         sensitive << (*(in_CLOCK)).neg(); // need internal register
     98        sensitive << (*(in_CLOCK)).neg() // need internal register
     99                  << (*(in_NRESET));
    99100        for (uint32_t i=0; i<_param->_nb_gpr_write; ++i)
    100101          sensitive << (*(in_GPR_WRITE_ACK [i]));
     
    115116        dont_initialize ();
    116117//      sensitive << (*(in_CLOCK)).neg(); // don't need internal register
    117         sensitive << (*(in_WRITE_QUEUE_IN_VAL          ))
     118        sensitive << (*(in_NRESET))
     119                  << (*(in_WRITE_QUEUE_IN_VAL          ))
    118120                  << (*(in_WRITE_QUEUE_IN_WRITE_RD     ))
    119121                  << (*(in_WRITE_QUEUE_IN_NUM_REG_RD   ))
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/src/Execution_unit_to_Write_unit.cpp

    r123 r132  
    8888        SC_METHOD (genMealy);
    8989        dont_initialize ();
    90         sensitive << (*(in_CLOCK)).pos();
     90        sensitive << (*(in_CLOCK)).neg()
     91                  << (*(in_NRESET));
    9192        for (uint32_t i=0; i<_param->_nb_execute_unit; i++)
    9293          for (uint32_t j=0; j<_param->_nb_execute_unit_port[i]; j++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/src/Read_unit_to_Execution_unit.cpp

    r123 r132  
    8888        SC_METHOD (genMealy);
    8989        dont_initialize ();
    90         sensitive << (*(in_CLOCK)).neg();
     90        sensitive << (*(in_CLOCK)).neg()
     91                  << (*(in_NRESET));
    9192
    9293        for (uint32_t i=0; i<_param->_nb_read_unit; i++)
     
    105106                        << (*(in_READ_UNIT_OUT_WRITE_RE              [i][j]))
    106107                        << (*(in_READ_UNIT_OUT_NUM_REG_RE            [i][j]))
    107                         << (*(in_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE [i][j]));
     108                        << (*(in_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE [i][j]))
     109                        << (*(in_READ_UNIT_OUT_STORE_QUEUE_PTR_READ  [i][j]))
     110                        << (*(in_READ_UNIT_OUT_STORE_QUEUE_EMPTY     [i][j]));
    108111
    109112              if (_param->_have_port_load_queue_ptr)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue.cpp

    r131 r132  
    9898    dont_initialize ();
    9999//     sensitive << (*(in_CLOCK)).neg();
     100    sensitive << (*(in_NRESET));
    100101    for (uint32_t j=0; j<_param->_nb_gpr_read; j++)
    101102      {
     
    135136    dont_initialize ();
    136137//     sensitive << (*(in_CLOCK)).neg();
     138    sensitive << (*(in_NRESET));
    137139    for (uint32_t j=0; j<_param->_nb_gpr_read; j++)
    138140      {
     
    164166    dont_initialize ();
    165167//     sensitive << (*(in_CLOCK)).neg();
     168    sensitive << (*(in_NRESET));
    166169    for (uint32_t j=0; j<_param->_nb_gpr_read; j++)
    167170      {
     
    193196    dont_initialize ();
    194197//     sensitive << (*(in_CLOCK)).neg();
     198    sensitive << (*(in_NRESET));
    195199    for (uint32_t j=0; j<_param->_nb_gpr_write; j++)
    196200      {
     
    223227    dont_initialize ();
    224228//     sensitive << (*(in_CLOCK)).neg();
     229    sensitive << (*(in_NRESET));
    225230    for (uint32_t j=0; j<_param->_nb_gpr_write; j++)
    226231      {
     
    252257    dont_initialize ();
    253258//     sensitive << (*(in_CLOCK)).neg();
     259    sensitive << (*(in_NRESET));
    254260    for (uint32_t j=0; j<_param->_nb_gpr_write; j++)
    255261      {
     
    281287    dont_initialize ();
    282288//     sensitive << (*(in_CLOCK)).neg();
     289    sensitive << (*(in_NRESET));
    283290    for (uint32_t j=0; j<_param->_nb_spr_read; j++)
    284291      {
     
    318325    dont_initialize ();
    319326//     sensitive << (*(in_CLOCK)).neg();
     327    sensitive << (*(in_NRESET));
    320328    for (uint32_t j=0; j<_param->_nb_spr_read; j++)
    321329      {
     
    347355    dont_initialize ();
    348356//     sensitive << (*(in_CLOCK)).neg();
     357    sensitive << (*(in_NRESET));
    349358    for (uint32_t j=0; j<_param->_nb_spr_read; j++)
    350359      {
     
    376385    dont_initialize ();
    377386//     sensitive << (*(in_CLOCK)).neg();
     387    sensitive << (*(in_NRESET));
    378388    for (uint32_t j=0; j<_param->_nb_spr_write; j++)
    379389      {
     
    406416    dont_initialize ();
    407417//     sensitive << (*(in_CLOCK)).neg();
     418    sensitive << (*(in_NRESET));
    408419    for (uint32_t j=0; j<_param->_nb_spr_write; j++)
    409420      {
     
    435446    dont_initialize ();
    436447//     sensitive << (*(in_CLOCK)).neg();
     448    sensitive << (*(in_NRESET));
    437449    for (uint32_t j=0; j<_param->_nb_spr_write; j++)
    438450      {
     
    464476    dont_initialize ();
    465477//     sensitive << (*(in_CLOCK)).neg();
     478    sensitive << (*(in_NRESET));
    466479    for (uint32_t i=0; i<_param->_nb_ooo_engine; i++)
    467480      {
Note: See TracChangeset for help on using the changeset viewer.