source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_vhdl_declaration.cpp @ 3

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

1) Ajout d'un "printer" XML pour la configuration de paramètres

2) Fin du composant "Two_Level_Branch_Predictor"

validation * systemc

  • vhdl
File size: 1.8 KB
Line 
1#ifdef VHDL
2/*
3 * $Id$
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/include/Two_Level_Branch_Predictor.h"
10
11namespace morpheo {
12namespace behavioural {
13namespace stage_1_ifetch {
14namespace predictor {
15namespace meta_predictor {
16namespace two_level_branch_predictor {
17
18
19  void Two_Level_Branch_Predictor::vhdl_declaration (Vhdl & vhdl)
20  {
21    log_printf(FUNC,Two_Level_Branch_Predictor,"vhdl_declaration","Begin");
22
23    for (uint32_t i=0; i<_param._nb_prediction; i++)
24      {
25        if (_param._have_bht)
26          {
27        vhdl.set_signal  ("signal_PREDICT_BHT_ACK_"+toString(i), 1);
28        vhdl.set_signal  ("signal_PREDICT_BHT_ADDRESS_"+toString(i), _param._bht_size_address);
29        vhdl.set_signal  ("signal_PREDICT_BHT_HISTORY_"+toString(i), _param._bht_size_shifter);
30          }
31        if (_param._have_pht)
32          {
33        vhdl.set_signal  ("signal_PREDICT_PHT_ACK_"+toString(i), 1);
34        vhdl.set_signal  ("signal_PREDICT_PHT_ADDRESS_"+toString(i), _param._pht_size_address);
35          }
36      }
37
38    for (uint32_t i=0; i<_param._nb_branch_complete; i++)
39      {
40        if (_param._have_bht)
41          {
42        vhdl.set_signal  ("signal_BRANCH_COMPLETE_BHT_ACK_"+toString(i), 1);
43        vhdl.set_signal  ("signal_BRANCH_COMPLETE_BHT_ADDRESS_"+toString(i), _param._bht_size_address);
44          }
45        if (_param._have_pht)
46          {
47        vhdl.set_signal  ("signal_BRANCH_COMPLETE_PHT_ACK_"+toString(i), 1);
48        vhdl.set_signal  ("signal_BRANCH_COMPLETE_PHT_ADDRESS_"+toString(i), _param._pht_size_address);
49          }
50      }
51    log_printf(FUNC,Two_Level_Branch_Predictor,"vhdl_declaration","End");
52  };
53
54}; // end namespace two_level_branch_predictor
55}; // end namespace meta_predictor
56}; // end namespace predictor
57}; // end namespace stage_1_ifetch
58
59}; // end namespace behavioural
60}; // end namespace morpheo             
61#endif
Note: See TracBrowser for help on using the repository browser.