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

Last change on this file since 78 was 78, checked in by rosiere, 16 years ago

Add :

  • Execute_loop (must be test systemC)
  • Prediction
    • Direction : predifined scheme
    • Branch Target Buffer
  • iFetch_unit
    • ifetch_queue
    • pc management
  • Decod_unit
    • coming soon : support for custom operation
  • Rename_unit
    • RAT
    • Free_list
    • Dependence RAW check
    • Load store unit pointer
  • New Environnement (hierarchy_memory will remove in a next version)


Modif :

  • Manage Custom Operation
  • All component in execute_loop to use the new statistics management

Not Finish :

  • Return Address Stack
  • Environnement
File size: 2.6 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$
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 : uint32_t _nb_instruction               ;
30  public : uint32_t _size_address                 ;
31  public : uint32_t _size_branch_update_prediction;
32
33  public : uint32_t _size_queue_ptr                       ;
34  public : uint32_t _size_instruction_ptr                 ;
35
36  public : bool     _have_port_queue_ptr                  ;
37  public : bool     _have_port_instruction_ptr            ;
38  public : bool     _have_port_branch_update_prediction_id;
39
40  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::address_management::Parameters * _param_address_management;
41  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::ifetch_queue::      Parameters * _param_ifetch_queue;
42  public :morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::ifetch_unit_glue::  Parameters * _param_ifetch_unit_glue;
43   
44    //-----[ methods ]-----------------------------------------------------------
45  public : Parameters  (uint32_t size_queue                   ,
46                        uint32_t nb_instruction               ,
47                        uint32_t size_branch_update_prediction,
48                        uint32_t size_address                 );
49//   public : Parameters  (Parameters & param) ;
50  public : ~Parameters () ;
51
52  public :        Parameters_test msg_error  (void);
53
54  public :        std::string     print      (uint32_t depth);
55  public : friend std::ostream&   operator<< (std::ostream& output_stream,
56                                              morpheo::behavioural::core::multi_front_end::front_end::ifetch_unit::Parameters & x);
57  };
58
59}; // end namespace ifetch_unit
60}; // end namespace front_end
61}; // end namespace multi_front_end
62}; // end namespace core
63
64}; // end namespace behavioural
65}; // end namespace morpheo             
66
67#endif
Note: See TracBrowser for help on using the repository browser.