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

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

1) Add new algo in ifetch queue
2) Add Cancel bit
3) new config

  • Property svn:keywords set to Id
File size: 2.9 KB
Line 
1#ifndef morpheo_behavioural_core_multi_front_end_front_end_ifetch_unit_Parameters_h
2#define morpheo_behavioural_core_multi_front_end_front_end_ifetch_unit_Parameters_h
3
4/*
5 * $Id: Parameters.h 136 2009-10-20 18:52:15Z rosiere $
6 *
7 * [ Description ]
8 *
9 */
10
11#include "Common/include/Debug.h"
12#include "Behavioural/include/Parameters.h"
13
14#include "Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/include/Parameters.h"
15#include "Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_queue/include/Parameters.h"
16#include "Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_unit_Glue/include/Parameters.h"
17
18namespace morpheo {
19namespace behavioural {
20namespace core {
21namespace multi_front_end {
22namespace front_end {
23namespace ifetch_unit {
24
25  class Parameters : public morpheo::behavioural::Parameters
26  {
27    //-----[ fields ]------------------------------------------------------------
28  public : uint32_t _size_queue                   ;
29  public : ifetch_queue::Tifetch_queue_scheme_t
30                    _queue_scheme                 ;
31  public : uint32_t _nb_instruction               ;
32//public : uint32_t _size_address                 ;
33//public : uint32_t _size_branch_update_prediction;
34//
35//public : uint32_t _size_queue_ptr                       ;
36//public : uint32_t _size_instruction_ptr                 ;
37//
38//public : bool     _have_port_queue_ptr                  ;
39//public : bool     _have_port_instruction_ptr            ;
40//public : bool     _have_port_branch_update_prediction_id;
41
42  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::address_management::Parameters * _param_address_management;
43  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::ifetch_queue::      Parameters * _param_ifetch_queue;
44  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::ifetch_unit_glue::  Parameters * _param_ifetch_unit_glue;
45   
46    //-----[ methods ]-----------------------------------------------------------
47  public : Parameters  (uint32_t size_queue                   ,
48                        ifetch_queue::Tifetch_queue_scheme_t
49                                 queue_scheme                 ,
50                        uint32_t nb_instruction               ,
51                        uint32_t size_branch_update_prediction,
52                        uint32_t size_address                 ,
53                        bool     is_toplevel=false
54                        );
55//   public : Parameters  (Parameters & param) ;
56  public : ~Parameters () ;
57
58  public :        void            copy       (void);
59
60  public :        Parameters_test msg_error  (void);
61
62  public :        std::string     print      (uint32_t depth);
63  public : friend std::ostream&   operator<< (std::ostream& output_stream,
64                                              morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::Parameters & x);
65  };
66
67}; // end namespace ifetch_unit
68}; // end namespace front_end
69}; // end namespace multi_front_end
70}; // end namespace core
71
72}; // end namespace behavioural
73}; // end namespace morpheo             
74
75#endif
Note: See TracBrowser for help on using the repository browser.