source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/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.8 KB
Line 
1#ifndef morpheo_behavioural_generic_victim_Parameters_h
2#define morpheo_behavioural_generic_victim_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#include "Behavioural/Generic/Victim/include/Types.h"
14
15// #include "Behavioural/Generic/Victim/Victim_Random/include/Parameters.h"
16// #include "Behavioural/Generic/Victim/Victim_Round_Robin/include/Parameters.h"
17// #include "Behavioural/Generic/Victim/Victim_NLU/include/Parameters.h"
18#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
19// #include "Behavioural/Generic/Victim/Victim_LRU/include/Parameters.h"
20// #include "Behavioural/Generic/Victim/Victim_FIFO/include/Parameters.h"
21
22namespace morpheo {
23namespace behavioural {
24namespace generic {
25namespace victim {
26
27
28  class Parameters : public morpheo::behavioural::Parameters
29  {
30    //-----[ fields ]------------------------------------------------------------
31  public : Tvictim_t _victim_scheme    ; // Scheme to select the victim
32  public : uint32_t  _nb_entity        ; // number of entity
33  public : uint32_t  _nb_entry         ; // number of entry
34  public : uint32_t  _nb_access        ; // number of port to select an entity
35  public : bool      _table_global     ; // Have one table or one by entry
36
37  public : uint32_t  _size_entity      ;
38  public : uint32_t  _size_table       ; // Size of internal table
39  public : uint32_t  _size_address     ;
40
41  public : bool      _have_port_address;
42
43//public : morpheo::behavioural::generic::victim::victim_random     ::Parameters * _param_victim_random     ;
44//public : morpheo::behavioural::generic::victim::victim_round_robin::Parameters * _param_victim_round_robin;
45//public : morpheo::behavioural::generic::victim::victim_nlu        ::Parameters * _param_victim_nlu        ;
46  public : morpheo::behavioural::generic::victim::victim_pseudo_lru ::Parameters * _param_victim_pseudo_lru ;
47//public : morpheo::behavioural::generic::victim::victim_lru        ::Parameters * _param_victim_lru        ;
48//public : morpheo::behavioural::generic::victim::victim_fifo       ::Parameters * _param_victim_fifo       ;
49
50    //-----[ methods ]-----------------------------------------------------------
51  public : Parameters  (Tvictim_t victim_scheme    ,
52                        uint32_t  nb_entity        ,
53                        uint32_t  nb_entry         ,
54                        uint32_t  nb_access        ,
55                        bool      table_global     );
56//public : Parameters  (Parameters & param) ;
57  public : ~Parameters () ;
58
59  public :        Parameters_test msg_error  (void);
60
61  public :        std::string     print      (uint32_t depth);
62  public : friend std::ostream&   operator<< (std::ostream& output_stream,
63                                              morpheo::behavioural::generic::victim::Parameters & x);
64  };
65
66}; // end namespace victim
67}; // end namespace generic
68
69}; // end namespace behavioural
70}; // end namespace morpheo             
71
72#endif
Note: See TracBrowser for help on using the repository browser.