source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/src/Parameters_print.cpp @ 60

Last change on this file since 60 was 60, checked in by rosiere, 17 years ago
File size: 4.1 KB
Line 
1/*
2 * $Id$
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/include/Parameters.h"
9#include "Behavioural/include/XML.h"
10using namespace std;
11
12namespace morpheo                    {
13namespace behavioural {
14namespace core {
15namespace multi_execute_loop {
16namespace execute_loop {
17namespace register_unit {
18
19
20#undef  FUNCTION
21#define FUNCTION "Register_unit::print"
22  string Parameters::print (uint32_t depth)
23  {
24    log_printf(FUNC,Register_unit,FUNCTION,"Begin");
25
26    XML xml ("register_unit");
27
28    xml.balise_open("register_unit");
29    xml. singleton_begin("nb_ooo_engine            "); xml.attribut("value",toString(_nb_ooo_engine            )); xml.singleton_end();
30    xml. singleton_begin("size_general_data        "); xml.attribut("value",toString(_size_general_data        )); xml.singleton_end();
31    xml. singleton_begin("size_special_data        "); xml.attribut("value",toString(_size_special_data        )); xml.singleton_end();
32    xml. singleton_begin("nb_gpr_read              "); xml.attribut("value",toString(_nb_gpr_read              )); xml.singleton_end();
33    xml. singleton_begin("nb_gpr_write             "); xml.attribut("value",toString(_nb_gpr_write             )); xml.singleton_end();
34    xml. singleton_begin("nb_gpr_bank              "); xml.attribut("value",toString(_nb_gpr_bank              )); xml.singleton_end();
35    xml. singleton_begin("nb_gpr_port_read_by_bank "); xml.attribut("value",toString(_nb_gpr_port_read_by_bank )); xml.singleton_end();
36    xml. singleton_begin("nb_gpr_port_write_by_bank"); xml.attribut("value",toString(_nb_gpr_port_write_by_bank)); xml.singleton_end();
37    xml. singleton_begin("nb_spr_read              "); xml.attribut("value",toString(_nb_spr_read              )); xml.singleton_end();
38    xml. singleton_begin("nb_spr_write             "); xml.attribut("value",toString(_nb_spr_write             )); xml.singleton_end();
39    xml. singleton_begin("nb_spr_bank              "); xml.attribut("value",toString(_nb_spr_bank              )); xml.singleton_end();
40    xml. singleton_begin("nb_spr_port_read_by_bank "); xml.attribut("value",toString(_nb_spr_port_read_by_bank )); xml.singleton_end();
41    xml. singleton_begin("nb_spr_port_write_by_bank"); xml.attribut("value",toString(_nb_spr_port_write_by_bank)); xml.singleton_end();
42   
43    xml. balise_open("multi_ooo_engine");
44    for (uint32_t i=0; i<_nb_ooo_engine; i++)
45      {
46        xml.  balise_open_begin("ooo_engine");
47        xml.   attribut("id", toString(i));
48        xml.  balise_open_end();
49        xml.   singleton_begin("nb_general_register"); xml.attribut("value",toString(_nb_general_register [i])); xml.singleton_end();
50        xml.   singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register [i])); xml.singleton_end();
51        xml.   singleton_begin("nb_inst_insert_rob "); xml.attribut("value",toString(_nb_inst_insert_rob  [i])); xml.singleton_end();
52        xml.   singleton_begin("nb_inst_retire_rob "); xml.attribut("value",toString(_nb_inst_retire_rob  [i])); xml.singleton_end();
53        xml.  balise_close();
54      }
55    xml. balise_close();
56
57//     xml. text (_param_glue->print(depth+1));
58//     for (uint32_t i=0; i<_nb_ooo_engine; i++)
59//      {
60//        xml. text (_param_gpr        [i]->print(depth+1));
61//        xml. text (_param_gpr_status [i]->print(depth+1));
62//        xml. text (_param_spr        [i]->print(depth+1));
63//        xml. text (_param_spr_status [i]->print(depth+1));
64//      }
65   
66    xml.balise_close();
67
68    log_printf(FUNC,Register_unit,FUNCTION,"End");
69   
70    return xml.get_body(depth);
71  };
72
73#undef  FUNCTION
74#define FUNCTION "Register_unit::operator<<"
75  ostream& operator<< (ostream& output_stream ,
76                       morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit::Parameters & x)
77  {
78    log_printf(FUNC,Register_unit,FUNCTION,"Begin");
79
80    output_stream << x.print(0);
81   
82    log_printf(FUNC,Register_unit,FUNCTION,"End");
83
84    return output_stream;
85  };
86
87}; // end namespace register_unit
88}; // end namespace execute_loop
89}; // end namespace multi_execute_loop
90}; // end namespace core
91
92}; // end namespace behavioural
93}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.