source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Parameters_msg_error.cpp @ 78

Last change on this file since 78 was 78, checked in by rosiere, 16 years ago

Add :

  • Execute_loop (must be test systemC)
  • Prediction
    • Direction : predifined scheme
    • Branch Target Buffer
  • iFetch_unit
    • ifetch_queue
    • pc management
  • Decod_unit
    • coming soon : support for custom operation
  • Rename_unit
    • RAT
    • Free_list
    • Dependence RAW check
    • Load store unit pointer
  • New Environnement (hierarchy_memory will remove in a next version)


Modif :

  • Manage Custom Operation
  • All component in execute_loop to use the new statistics management

Not Finish :

  • Return Address Stack
  • Environnement
File size: 1.8 KB
Line 
1/*
2 * $Id$
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/include/Types.h"
9#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Parameters.h"
10#include <sstream>
11
12namespace morpheo                    {
13namespace behavioural {
14namespace core {
15namespace multi_ooo_engine {
16namespace ooo_engine {
17namespace rename_unit {
18namespace register_translation_unit {
19namespace stat_list_unit {
20
21
22#undef  FUNCTION
23#define FUNCTION "Stat_List_unit::msg_error"
24  std::string Parameters::msg_error(void)
25  {
26    log_printf(FUNC,Stat_List_unit,FUNCTION,"Begin");
27
28    std::string msg = "";
29
30    if (not is_multiple(_nb_bank, _nb_reg_free))
31      msg += "  - nb_bank must be a multiple of nb_reg_free.\n";
32
33    if (_nb_general_register < _nb_gpr_use_init)
34      msg += "  - the number of physical general register is insuffisant. (you need less "+toString(_nb_gpr_use_init)+" registers.\n";
35
36    if (_nb_special_register < _nb_spr_use_init)
37      msg += "  - the number of physical special register is insuffisant. (you need less "+toString(_nb_spr_use_init)+" registers.\n";
38   
39    if (not is_power2(_nb_general_register))
40      msg += "  - the number of physical general register must be a power of 2.\n";
41
42    if (not is_power2(_nb_special_register))
43      msg += "  - the number of physical special register must be a power of 2.\n";
44
45    if (not is_power2(_nb_bank))
46      msg += "  - the number of bank must be a power of 2.\n";
47
48    return msg;
49
50    log_printf(FUNC,Stat_List_unit,FUNCTION,"End");
51  };
52
53}; // end namespace stat_list_unit
54}; // end namespace register_translation_unit
55}; // end namespace rename_unit
56}; // end namespace ooo_engine
57}; // end namespace multi_ooo_engine
58}; // end namespace core
59
60}; // end namespace behavioural
61}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.