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

Last change on this file was 124, checked in by rosiere, 15 years ago

1) Add test and configuration
2) Fix Bug
3) Add log file in load store unit
4) Fix Bug in environment

  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1/*
2 * $Id: Parameters_msg_error.cpp 124 2009-06-17 12:11:25Z rosiere $
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  Parameters_test Parameters::msg_error(void)
25  {
26    log_printf(FUNC,Stat_List_unit,FUNCTION,"Begin");
27
28    Parameters_test test("Stat_List_unit");
29
30    if (not is_multiple(_nb_bank, _nb_reg_free))
31      test.error(_("nb_bank must be a multiple of nb_reg_free.\n"));
32
33    if (_nb_general_register < _nb_gpr_use_init)
34      test.error(toString(_("the number of physical general register is insuffisant. (you need less %d registers.\n"),_nb_gpr_use_init));
35
36    if (_nb_special_register < _nb_spr_use_init)
37      test.error(toString(_("the number of physical special register is insuffisant. (you need less %d registers.\n"),_nb_spr_use_init));
38   
39    if (not is_power2(_nb_general_register))
40      test.error(_("the number of physical general register must be a power of 2.\n"));
41
42    if (not is_power2(_nb_special_register))
43      test.error(_("the number of physical special register must be a power of 2.\n"));
44
45//     if (not is_multiple(_nb_general_register,_nb_bank))
46//       test.error(_("nb_general_register must be a multiple of nb_bank.\n"));
47//     if (not is_multiple(_nb_special_register,_nb_bank))
48//       test.error(_("nb_special_register must be a multiple of nb_bank.\n"));
49
50    if (not is_power2(_nb_bank))
51      test.error(_("the number of bank must be a power of 2.\n"));
52
53    return test;
54
55    log_printf(FUNC,Stat_List_unit,FUNCTION,"End");
56  };
57
58}; // end namespace stat_list_unit
59}; // end namespace register_translation_unit
60}; // end namespace rename_unit
61}; // end namespace ooo_engine
62}; // end namespace multi_ooo_engine
63}; // end namespace core
64
65}; // end namespace behavioural
66}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.