source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Parameters.cpp @ 2

Last change on this file since 2 was 2, checked in by kane, 17 years ago

Import Morpheo

File size: 2.5 KB
Line 
1/*
2 * $Id$
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Parameters.h"
9
10namespace morpheo {
11namespace behavioural {
12namespace stage_1_ifetch {
13namespace predictor {
14namespace meta_predictor {
15namespace two_level_branch_predictor {
16namespace pattern_history_table {
17
18
19  Parameters::Parameters (uint32_t size_counter      ,
20                          uint32_t nb_counter        ,
21                          uint32_t nb_prediction     ,
22                          uint32_t nb_branch_complete) :
23    _size_counter       (size_counter      ),
24    _nb_counter         (nb_counter        ),
25    _nb_prediction      (nb_prediction     ),
26    _nb_branch_complete (nb_branch_complete)
27  {
28    log_printf(FUNC,Pattern_History_Table,"Parameters","Begin");
29
30    _param_counter      = new morpheo::behavioural::generic::counter::Parameters (size_counter       ,
31                                                                                  nb_branch_complete );
32    _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (nb_prediction      ,
33                                                                                       nb_branch_complete ,
34                                                                                       nb_counter         ,
35                                                                                       size_counter       );
36   
37
38    test();
39    log_printf(FUNC,Pattern_History_Table,"Parameters","End");
40  };
41 
42  Parameters::Parameters (Parameters & param) :
43    _size_counter       (param._size_counter      ),
44    _nb_counter         (param._nb_counter        ),
45    _nb_prediction      (param._nb_prediction     ),
46    _nb_branch_complete (param._nb_branch_complete)
47  {
48    log_printf(FUNC,Pattern_History_Table,"Parameters","Begin");
49
50    _param_counter = new morpheo::behavioural::generic::counter::Parameters (param._size_counter       ,
51                                                                             param._nb_branch_complete );
52
53    _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (param._nb_prediction      ,
54                                                                                       param._nb_branch_complete ,
55                                                                                       param._nb_counter         ,
56                                                                                       param._size_counter       );
57
58    test();
59    log_printf(FUNC,Pattern_History_Table,"Parameters","End");
60  };
61
62  Parameters::~Parameters () 
63  {
64    log_printf(FUNC,Pattern_History_Table,"~Parameters","Begin");
65    delete _param_counter;
66    delete _param_registerfile;
67    log_printf(FUNC,Pattern_History_Table,"~Parameters","End");
68  };
69
70}; // end namespace pattern_history_table
71}; // end namespace two_level_branch_predictor
72}; // end namespace meta_predictor
73}; // end namespace predictor
74}; // end namespace stage_1_ifetch
75}; // end namespace behavioural
76}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.