source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/include/Parameters.h @ 146

Last change on this file since 146 was 146, checked in by rosiere, 13 years ago

1) Integration of RegisterFile_Internal_Banked in RegisterFile?
2) Erase "read_write" interface in RegisterFile_Monolithic component
3) Add smith predictor parameters in Load_store_pointer_unit.
4) Fix not statistics flags

  • Property svn:keywords set to Id
File size: 2.5 KB
Line 
1#ifndef morpheo_behavioural_generic_registerfile_Parameters_h
2#define morpheo_behavioural_generic_registerfile_Parameters_h
3
4/*
5 * $Id: Parameters.h 146 2011-02-01 20:57:54Z rosiere $
6 *
7 * [ Description ]
8 *
9 */
10
11#include "Common/include/Debug.h"
12#include "Behavioural/include/Parameters.h"
13#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
14#include "Behavioural/Generic/RegisterFile/RegisterFile_Internal_Banked/include/Parameters.h"
15#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
16#include <math.h>
17
18namespace morpheo {
19namespace behavioural {
20namespace generic {
21namespace registerfile {
22
23  typedef enum {instance_RegisterFile_Monolithic,
24                instance_RegisterFile_Internal_Banked,
25                instance_RegisterFile_Multi_Banked} Tinstance_t;
26
27  class Parameters : public morpheo::behavioural::Parameters
28  {
29    //-----[ fields ]------------------------------------------------------------
30  public : Tinstance_t _instance;
31  public : uint32_t    _nb_port_read ;
32  public : uint32_t    _nb_port_write;
33  public : uint32_t    _nb_word      ;
34  public : uint32_t    _size_word    ;
35  public : uint32_t    _size_address ;
36  public : bool        _have_port_address;
37
38  public : morpheo::behavioural::generic::registerfile::registerfile_monolithic     ::Parameters * _param_registerfile_monolithic;
39  public : morpheo::behavioural::generic::registerfile::registerfile_internal_banked::Parameters * _param_registerfile_internal_banked;
40  public : morpheo::behavioural::generic::registerfile::registerfile_multi_banked   ::Parameters * _param_registerfile_multi_banked;
41
42    //-----[ methods ]-----------------------------------------------------------
43  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_monolithic     ::Parameters * param);
44  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_internal_banked::Parameters * param);
45  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_multi_banked   ::Parameters * param);
46//   public : Parameters  (Parameters & param) ;
47  public : ~Parameters () ;
48
49  public :        void             copy       (void);
50
51  public :        Parameters_test  msg_error  (void);
52
53  public :        std::string   print      (uint32_t depth);
54  public : friend std::ostream& operator<< (std::ostream& output_stream,
55                                       morpheo::behavioural::generic::registerfile::Parameters & x);
56  };
57
58}; // end namespace registerfile
59}; // end namespace generic
60
61}; // end namespace behavioural
62}; // end namespace morpheo             
63
64#endif
Note: See TracBrowser for help on using the repository browser.