Ignore:
Timestamp:
Jun 8, 2009, 10:43:30 PM (15 years ago)
Author:
rosiere
Message:

1) Fix performance
2) add auto generation to SPECINT2000
3) add reset in genMoore and genMealy

Location:
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src/Address_management.cpp

    r88 r123  
    3838    log_printf(FUNC,Address_management,FUNCTION,"Begin");
    3939
    40 #if DEBUG_Address_management == true
    41     log_printf(INFO,Address_management,FUNCTION,_("<%s> Parameters"),_name.c_str());
     40// #if DEBUG_Address_management == true
     41//     log_printf(INFO,Address_management,FUNCTION,_("<%s> Parameters"),_name.c_str());
    4242
    43     std::cout << *param << std::endl;
    44 #endif   
     43//     std::cout << *param << std::endl;
     44// #endif   
    4545
    4646    log_printf(INFO,Address_management,FUNCTION,"Allocation");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src/Address_management_genMoore.cpp

    r107 r123  
    2424    log_printf(FUNC,Address_management,FUNCTION,"Begin");
    2525
     26    if (PORT_READ(in_NRESET))
     27      {
    2628    // =========================================
    2729    // ===== ADDRESS ===========================
     
    3032    internal_ADDRESS_VAL = reg_PC_ACCESS_VAL;
    3133
    32     PORT_WRITE(out_ADDRESS_VAL                        ,internal_ADDRESS_VAL                     );
    3334    // Align pc on instruction packet address.
    3435    PORT_WRITE(out_ADDRESS_INSTRUCTION_ADDRESS        ,reg_PC_ACCESS - (reg_PC_ACCESS%_param->_nb_instruction));
     
    4849    internal_PREDICT_VAL = not reg_PC_NEXT_NEXT_VAL;
    4950
    50     PORT_WRITE(out_PREDICT_VAL                  ,internal_PREDICT_VAL);
    5151    PORT_WRITE(out_PREDICT_PC_PREVIOUS          ,reg_PC_CURRENT        );
    5252    PORT_WRITE(out_PREDICT_PC_CURRENT           ,reg_PC_NEXT           );
    5353    PORT_WRITE(out_PREDICT_PC_CURRENT_IS_DS_TAKE,reg_PC_NEXT_IS_DS_TAKE);
    54    
     54      }
     55    else
     56      {
     57    internal_ADDRESS_VAL = 0;
     58    internal_PREDICT_VAL = 0;
     59      }
     60
     61    PORT_WRITE(out_ADDRESS_VAL,internal_ADDRESS_VAL);
     62    PORT_WRITE(out_PREDICT_VAL,internal_PREDICT_VAL);
     63
    5564    log_printf(FUNC,Address_management,FUNCTION,"End");
    5665  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src/Address_management_transition.cpp

    r119 r123  
    222222      std::string instruction_enable;
    223223      for (uint32_t i=0; i<_param->_nb_instruction; ++i)
    224         instruction_enable += toString(reg_PC_ACCESS_INSTRUCTION_ENABLE [i])+ " ";
     224        instruction_enable += ((reg_PC_ACCESS_VAL)?(toString(reg_PC_ACCESS_INSTRUCTION_ENABLE [i])):"X") + " ";
    225225
    226226      log_printf(TRACE,Address_management,FUNCTION,"    * Access    : %d %d 0x%.8x (%.8x) - %.2d %.2d %.2d - %s",
     
    238238      std::string instruction_enable;
    239239      for (uint32_t i=0; i<_param->_nb_instruction; ++i)
    240         instruction_enable += toString(reg_PC_CURRENT_INSTRUCTION_ENABLE [i])+ " ";
     240        instruction_enable += ((reg_PC_CURRENT_VAL)?(toString(reg_PC_CURRENT_INSTRUCTION_ENABLE [i])):"X") + " ";
    241241
    242242      log_printf(TRACE,Address_management,FUNCTION,"    * Current   : %d %d 0x%.8x (%.8x) - %.2d %.2d %.2d - %s",
     
    254254      std::string instruction_enable;
    255255      for (uint32_t i=0; i<_param->_nb_instruction; ++i)
    256         instruction_enable += toString(reg_PC_NEXT_INSTRUCTION_ENABLE [i])+ " ";
     256        instruction_enable += ((reg_PC_NEXT_VAL)?(toString(reg_PC_NEXT_INSTRUCTION_ENABLE [i])):"X") + " ";
    257257
    258258      log_printf(TRACE,Address_management,FUNCTION,"    * Next      : %d %d 0x%.8x (%.8x) - %.2d %.2d %.2d - %s",
Note: See TracChangeset for help on using the changeset viewer.