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 @ 15

Last change on this file since 15 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.