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

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

Import Morpheo

File size: 1.3 KB
Line 
1#ifdef SYSTEMC
2/*
3 * $Id$
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/include/Two_Level_Branch_Predictor_Glue.h"
10#include "Include/BitManipulation.h"
11
12namespace morpheo {
13namespace behavioural {
14namespace stage_1_ifetch {
15namespace predictor {
16namespace meta_predictor {
17namespace two_level_branch_predictor {
18namespace two_level_branch_predictor_glue {
19
20  void Two_Level_Branch_Predictor_Glue::genMealy_branch_complete_bht_address (void)
21  {
22    log_printf(FUNC,Two_Level_Branch_Predictor_Glue,"genMealy_branch_complete_address","Begin");
23
24    if (_param._have_bht)
25      for (uint32_t i=0; i<_param._nb_branch_complete; i++)
26        {
27          // Address
28          Taddress_t address = PORT_READ(in_BRANCH_COMPLETE_ADDRESS [i]);
29         
30          PORT_WRITE (out_BRANCH_COMPLETE_BHT_ADDRESS [i], range<Taddress_t>(_param._size_address, address, _param._bht_size_address));
31        }
32   
33    log_printf(FUNC,Two_Level_Branch_Predictor_Glue,"genMealy_branch_complete_address","End");
34  };
35
36}; // end namespace two_level_branch_predictor_glue
37}; // end namespace two_level_branch_predictor
38}; // end namespace meta_predictor
39}; // end namespace predictor
40}; // end namespace stage_1_ifetch
41}; // end namespace behavioural
42}; // end namespace morpheo             
43#endif
Note: See TracBrowser for help on using the repository browser.