source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Direction/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Parameters.cpp @ 48

Last change on this file since 48 was 48, checked in by rosiere, 17 years ago

Modification des Makefile : pas de creation inutile de shell

File size: 2.9 KB
Line 
1/*
2 * $Id$
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Direction/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Parameters.h"
9
10namespace morpheo {
11namespace behavioural {
12namespace core {
13namespace multi_front_end {
14namespace front_end {
15namespace prediction_unit {
16namespace direction {
17
18namespace meta_predictor {
19namespace two_level_branch_predictor {
20namespace branch_history_table {
21
22
23  Parameters::Parameters (uint32_t size_shifter      ,
24                          uint32_t nb_shifter        ,
25                          uint32_t nb_prediction     ,
26                          uint32_t nb_branch_complete) :
27    _size_shifter       (size_shifter      ),
28    _nb_shifter         (nb_shifter        ),
29    _nb_prediction      (nb_prediction     ),
30    _nb_branch_complete (nb_branch_complete)
31  {
32    _param_shifter = new morpheo::behavioural::generic::shifter::Parameters (size_shifter       ,
33                                                                             nb_branch_complete ,
34                                                                             1                  ,
35                                                                             morpheo::behavioural::generic::shifter::without_rotate     ,
36                                                                             morpheo::behavioural::generic::shifter::internal_left_shift,
37                                                                             morpheo::behavioural::generic::shifter::external_completion),
38    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (nb_prediction      ,
39                                                                                                                nb_branch_complete ,
40                                                                                                                nb_shifter         ,
41                                                                                                                size_shifter       );
42   
43    test();
44  };
45 
46  Parameters::Parameters (Parameters & param) :
47    _size_shifter       (param._size_shifter      ),
48    _nb_shifter         (param._nb_shifter        ),
49    _nb_prediction      (param._nb_prediction     ),
50    _nb_branch_complete (param._nb_branch_complete)
51  {
52    _param_shifter = new morpheo::behavioural::generic::shifter::Parameters (param._size_shifter       ,
53                                                                             param._nb_branch_complete ,
54                                                                             1                         ,
55                                                                             morpheo::behavioural::generic::shifter::without_rotate     ,
56                                                                             morpheo::behavioural::generic::shifter::internal_left_shift,
57                                                                             morpheo::behavioural::generic::shifter::external_completion,
58                                                                             true),
59
60    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (param._nb_prediction      ,
61                                                                                                                param._nb_branch_complete ,
62                                                                                                                param._nb_shifter         ,
63                                                                                                                param._size_shifter       );
64     
65
66
67    test();
68  };
69
70  Parameters::~Parameters () 
71  {
72    delete _param_shifter;
73    delete _param_registerfile;
74  };
75
76}; // end namespace branch_history_table
77}; // end namespace two_level_branch_predictor
78}; // end namespace meta_predictor
79
80}; // end namespace core
81}; // end namespace multi_front_end
82}; // end namespace front_end
83}; // end namespace prediction_unit
84}; // end namespace direction
85
86}; // end namespace behavioural
87}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.