source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Parameters.h @ 112

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

1) Stat_list : fix retire old and new register bug
2) Stat_list : remove read_counter and valid flag, because validation of destination is in retire step (not in commit step)
3) Model : add class Model (cf Morpheo.sim)
4) Allocation : alloc_interface_begin and alloc_interface_end to delete temporary array.
5) Script : add distexe.sh
6) Add Comparator, Multiplier, Divider. But this component are not implemented
7) Software : add Dhrystone

  • Property svn:keywords set to Id
File size: 3.8 KB
Line 
1#ifndef morpheo_behavioural_core_multi_front_end_front_end_decod_unit_decod_Parameters_h
2#define morpheo_behavioural_core_multi_front_end_front_end_decod_unit_decod_Parameters_h
3
4/*
5 * $Id: Parameters.h 112 2009-03-18 22:36:26Z rosiere $
6 *
7 * [ Description ]
8 *
9 */
10
11#include "Common/include/Debug.h"
12#include "Behavioural/include/Parameters.h"
13#include "Behavioural/include/Types.h"
14#include "Behavioural/Custom/include/Custom.h"
15#include "Behavioural/Custom/include/Custom_default.h"
16
17namespace morpheo {
18namespace behavioural {
19namespace core {
20namespace multi_front_end {
21namespace front_end {
22namespace decod_unit {
23namespace decod {
24
25    const uint32_t nb_opcod_type = 14;
26    const uint32_t tab_opcod_type [] = {MAX_OPCOD_0,
27                                        MAX_OPCOD_1 ,
28                                        MAX_OPCOD_2 ,
29                                        MAX_OPCOD_3 ,
30                                        MAX_OPCOD_4 ,
31                                        MAX_OPCOD_5 ,
32                                        MAX_OPCOD_6 ,
33                                        MAX_OPCOD_7 ,
34                                        MAX_OPCOD_8 ,
35                                        MAX_OPCOD_9 ,
36                                        MAX_OPCOD_10,
37                                        MAX_OPCOD_11,
38                                        MAX_OPCOD_12,
39                                        MAX_OPCOD_13};
40
41  class Parameters : public morpheo::behavioural::Parameters
42  {
43    //-----[ fields ]------------------------------------------------------------
44  public : uint32_t            _nb_context                   ;
45  public : uint32_t          * _nb_inst_fetch                ; //[nb_context]
46  public : uint32_t            _nb_inst_decod                ;
47//public : uint32_t            _size_general_data            ;
48  public : uint32_t          * _nb_branch_speculated         ; //[nb_context]
49//public : uint32_t          * _size_branch_update_prediction; //[nb_context]
50  public : uint32_t            _nb_context_select            ;
51  public : Tpriority_t         _priority                     ;
52  public : Tload_balancing_t   _load_balancing               ;
53  public : bool             ** _instruction_implemeted       ; //[nb_context][nb_instruction]
54  public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) (void);
55
56  public : uint32_t            _max_nb_inst_fetch;
57//public : uint32_t            _size_address_inst;
58
59    //-----[ methods ]-----------------------------------------------------------
60
61  public : Parameters  (uint32_t            nb_context                   ,
62                        uint32_t          * nb_inst_fetch                ,
63                        uint32_t            nb_inst_decod                ,
64                        uint32_t          * nb_branch_speculated         ,
65//                      uint32_t          * size_branch_update_prediction,
66                        uint32_t            nb_context_select            ,
67                        uint32_t            size_general_data            ,
68                        Tpriority_t         priority                     ,
69                        Tload_balancing_t   load_balancing               ,
70                        bool             ** instruction_implemeted       ,
71                        morpheo::behavioural::custom::custom_information_t (*get_custom_information) (void),
72                        bool                is_toplevel=false
73                        );
74
75//   public : Parameters  (Parameters & param) ;
76  public : ~Parameters () ;
77
78  public :        void            copy       (void);
79
80  public :        Parameters_test msg_error  (void);
81
82  public :        std::string     print      (uint32_t depth);
83  public : friend std::ostream&   operator<< (std::ostream& output_stream,
84                                              morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod::Parameters & x);
85  };
86
87}; // end namespace decod
88}; // end namespace decod_unit
89}; // end namespace front_end
90}; // end namespace multi_front_end
91}; // end namespace core
92
93}; // end namespace behavioural
94}; // end namespace morpheo             
95
96#endif
Note: See TracBrowser for help on using the repository browser.