source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/include/Parameters.h

Last change on this file was 138, checked in by rosiere, 14 years ago

1) add counters_t type for interface
2) fix in check load in load_store_unit
3) add parameters (but not yet implemented)
4) change environment and add script (distcc_env.sh ...)
5) add warning if an unser change rename flag with l.mtspr instruction
6) ...

  • Property svn:keywords set to Id
File size: 4.3 KB
Line 
1#ifndef morpheo_behavioural_core_multi_execute_loop_execute_loop_multi_write_unit_write_unit_Parameters_h
2#define morpheo_behavioural_core_multi_execute_loop_execute_loop_multi_write_unit_write_unit_Parameters_h
3
4/*
5 * $Id: Parameters.h 138 2010-05-12 17:34:01Z rosiere $
6 *
7 * [ Description ]
8 *
9 */
10
11#include "Common/include/Debug.h"
12#include "Behavioural/include/Parameters.h"
13#include <math.h>
14
15#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Parameters.h"
16#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/include/Parameters.h"
17
18namespace morpheo {
19namespace behavioural {
20namespace core {
21namespace multi_execute_loop {
22namespace execute_loop {
23namespace multi_write_unit {
24namespace write_unit {
25
26
27  class Parameters : public morpheo::behavioural::Parameters
28  {
29    //-----[ fields ]------------------------------------------------------------
30  public : uint32_t              _nb_inst_write                ;
31  public : uint32_t              _size_write_queue             ;
32  public : uint32_t              _size_execute_queue           ;
33  public : uint32_t              _nb_context                   ;
34  public : uint32_t              _nb_front_end                 ;
35  public : uint32_t              _nb_ooo_engine                ;
36  public : uint32_t              _nb_packet                    ;
37//public : uint32_t              _size_general_data            ;
38  public : uint32_t              _nb_general_register          ;
39//public : uint32_t              _size_special_data            ;
40  public : uint32_t              _nb_special_register          ;
41  public : uint32_t              _nb_bypass_write              ;
42  public : write_queue::Twrite_queue_scheme_t _write_queue_scheme           ;
43
44  public : uint32_t              _nb_gpr_write                 ;
45  public : uint32_t              _nb_spr_write                 ;
46                               
47//public : uint32_t              _size_context_id              ;
48//public : uint32_t              _size_front_end_id            ;
49//public : uint32_t              _size_ooo_engine_id           ;
50//public : uint32_t              _size_packet_id               ;
51//public : uint32_t              _size_general_register        ;
52//public : uint32_t              _size_special_register        ;
53                               
54  public : bool                  _have_component_execute_queue ;
55//public : bool                  _have_port_context_id         ;
56//public : bool                  _have_port_front_end_id       ;
57//public : bool                  _have_port_ooo_engine_id      ;
58//public : bool                  _have_port_packet_id          ;
59
60  public : morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue  ::Parameters * _param_write_queue;
61  public : morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::execute_queue::Parameters * _param_execute_queue;
62
63    //-----[ methods ]-----------------------------------------------------------
64  public : Parameters  (uint32_t              nb_inst_write      ,
65                        uint32_t              size_write_queue   ,
66                        uint32_t              size_execute_queue ,
67                        uint32_t              nb_context         ,
68                        uint32_t              nb_front_end       ,
69                        uint32_t              nb_ooo_engine      ,
70                        uint32_t              nb_packet          ,
71                        uint32_t              size_general_data  ,
72                        uint32_t              nb_general_register,
73                        uint32_t              size_special_data  ,
74                        uint32_t              nb_special_register,
75                        uint32_t              nb_bypass_write    ,
76                        write_queue::Twrite_queue_scheme_t write_queue_scheme ,
77                        bool                  is_toplevel=false);
78//public : Parameters  (Parameters & param) ;
79  public : ~Parameters () ;
80
81  public :        void            copy       (void);
82
83  public :        Parameters_test msg_error  (void);
84
85  public :        std::string   print      (uint32_t depth);
86  public : friend std::ostream& operator<< (std::ostream& output_stream,
87                                            morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::Parameters & x);
88  };
89
90}; // end namespace write_unit
91}; // end namespace multi_write_unit
92}; // end namespace execute_loop
93}; // end namespace multi_execute_loop
94}; // end namespace core
95
96}; // end namespace behavioural
97}; // end namespace morpheo             
98
99#endif
Note: See TracBrowser for help on using the repository browser.