source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/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.1 KB
Line 
1#ifndef morpheo_behavioural_generic_registerfile_Parameters_h
2#define morpheo_behavioural_generic_registerfile_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/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
14#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
15#include <math.h>
16
17namespace morpheo {
18namespace behavioural {
19namespace generic {
20namespace registerfile {
21
22  typedef enum {instance_RegisterFile_Monolithic  ,
23                instance_RegisterFile_Multi_Banked} Tinstance_t;
24
25  class Parameters : public morpheo::behavioural::Parameters
26  {
27    //-----[ fields ]------------------------------------------------------------
28  public : const Tinstance_t _instance;
29  public : const uint32_t    _nb_port_read ;
30  public : const uint32_t    _nb_port_write;
31  public : const uint32_t    _nb_word      ;
32  public : const uint32_t    _size_word    ;
33  public : const uint32_t    _size_address ;
34  public : const bool        _have_port_address;
35
36  public : morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * _param_registerfile_monolithic;
37  public : morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * _param_registerfile_multi_banked;
38
39    //-----[ methods ]-----------------------------------------------------------
40  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * param);
41  public : Parameters  (morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * param);
42  public : Parameters  (Parameters & param) ;
43  public : ~Parameters () ;
44
45  public :        Parameters_test  msg_error  (void);
46  public :        std::string   print      (uint32_t depth);
47  public : friend std::ostream& operator<< (std::ostream& output_stream,
48                                       morpheo::behavioural::generic::registerfile::Parameters & x);
49  };
50
51}; // end namespace registerfile
52}; // end namespace generic
53
54}; // end namespace behavioural
55}; // end namespace morpheo             
56
57#endif
Note: See TracBrowser for help on using the repository browser.