source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Front_end_Glue/include/Parameters.h @ 108

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

1) decod_queue : add reg_LAST_SLOT.
2) Commit : insert on event -> to pop decod_queue. Head test : add information (speculative or not)
3) Context State / UPT : Branch miss and Load miss in same cycle.
4) Free List : Bank is on LSB not MSB.
5) Platforms : move data

  • Property svn:keywords set to Id
File size: 3.6 KB
Line 
1#ifndef morpheo_behavioural_core_multi_front_end_front_end_front_end_glue_Parameters_h
2#define morpheo_behavioural_core_multi_front_end_front_end_front_end_glue_Parameters_h
3
4/*
5 * $Id: Parameters.h 108 2009-02-12 11:55:06Z rosiere $
6 *
7 * [ Description ]
8 *
9 */
10
11#include "Behavioural/include/Parameters.h"
12#include "Common/include/Debug.h"
13#include <vector>
14
15namespace morpheo {
16namespace behavioural {
17namespace core {
18namespace multi_front_end {
19namespace front_end {
20namespace front_end_glue {
21
22
23  class Parameters : public morpheo::behavioural::Parameters
24  {
25    //-----[ fields ]------------------------------------------------------------
26  public : uint32_t                _nb_context                           ;
27  public : uint32_t                _nb_decod_unit                        ;
28  public : uint32_t              * _nb_inst_decod                        ;//[nb_decod_unit]
29  public : uint32_t                _nb_inst_branch_complete              ;
30  public : uint32_t              * _link_context_to_decod_unit           ;//[nb_context]
31  public : std::vector<uint32_t> * _translate_context_id_from_decod_unit ;//[nb_decod_unit]{decod_unit_nb_context} -> nb_context
32//public : uint32_t                _size_address                         ;
33//public : uint32_t              * _size_depth                           ;//[nb_context]
34  public : uint32_t              * _nb_branch_speculated                 ;//[nb_context]
35
36  public : uint32_t              * _decod_unit_nb_context                ;//[nb_decod_unit]
37//public : uint32_t              * _size_decod_unit_context_id           ;//[nb_decod_unit]
38//public : uint32_t                _size_context_id                      ;
39//public : uint32_t                _max_size_depth                       ;
40
41//public : bool                  * _have_port_decod_unit_context_id      ;//[nb_decod_unit]
42//public : bool                    _have_port_context_id                 ;
43//public : bool                  * _have_port_depth                      ;//[nb_context]
44//public : bool                    _have_port_max_depth                  ;
45
46    //-----[ methods ]-----------------------------------------------------------
47  public : Parameters  (uint32_t                nb_context                           ,
48                        uint32_t                nb_decod_unit                        ,
49                        uint32_t              * nb_inst_decod                        ,
50                        uint32_t                nb_inst_branch_complete              ,
51                        uint32_t              * link_context_to_decod_unit           ,
52                        std::vector<uint32_t> * translate_context_id_from_decod_unit ,
53                        uint32_t                size_address                         ,
54                        uint32_t              * size_depth                           ,
55                        uint32_t              * nb_branch_speculated                 ,
56                        uint32_t                size_nb_inst_decod                   ,
57                        uint32_t                is_toplevel=false);
58//   public : Parameters  (Parameters & param) ;
59  public : ~Parameters () ;
60
61  public :        void            copy       (void);
62
63  public :        Parameters_test msg_error  (void);
64
65  public :        std::string     print      (uint32_t depth);
66  public : friend std::ostream&   operator<< (std::ostream& output_stream,
67                                            morpheo::behavioural::core::multi_front_end::front_end::front_end_glue::Parameters & x);
68  };
69
70}; // end namespace front_end_glue
71}; // end namespace front_end
72}; // end namespace multi_front_end
73}; // end namespace core
74
75}; // end namespace behavioural
76}; // end namespace morpheo             
77
78#endif
Note: See TracBrowser for help on using the repository browser.