Ignore:
Timestamp:
Feb 27, 2009, 7:37:40 PM (15 years ago)
Author:
rosiere
Message:

1) Decod_queue : multi implementation (one_fifo, multi_fifo)
2) Issue_queue : multi implementation (in_order, out_of_order)
3) Direction : Add Meta predictor
4) Context_State : re add Branch_complete, More priority to Load miss (is not speculative)
5) Return_Address_Stack : update reg_PREDICT pointer on decod miss prediction
6) UPT : Fix bug in multi event
7) Prediction_glue : in read_stack case, insert in UPT pc_next
8) Rename select : when rob have an event (need flush), read_r{a,b,c} and write_r{d,e} is set at 0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/src/Parameters.cpp

    r110 r111  
    8989  uint32_t                nb_decod_bloc                                 ,
    9090  uint32_t              * size_decod_queue                              ,//[nb_decod_bloc]
     91  multi_front_end::front_end::decod_unit::decod_queue::Tdecod_queue_scheme_t
     92                        * decod_queue_scheme                            ,//[nb_decod_bloc]
    9193  uint32_t              * nb_inst_decod                                 ,//[nb_decod_bloc]
    9294  uint32_t              * nb_context_select                             ,//[nb_decod_bloc]
     
    181183  Tload_balancing_t     * commit_load_balancing                         ,//[nb_ooo_engine]
    182184  uint32_t              * size_issue_queue                              ,//[nb_ooo_engine]
     185  multi_ooo_engine::ooo_engine::issue_queue::Tissue_queue_scheme_t
     186                        * issue_queue_scheme                            ,//[nb_ooo_engine]
    183187  uint32_t              * nb_issue_queue_bank                           ,//[nb_ooo_engine]
    184188  Tpriority_t           * issue_priority                                ,//[nb_ooo_engine]
     
    242246    _nb_decod_bloc                           = nb_decod_bloc                           ;
    243247    _size_decod_queue                        = size_decod_queue                        ;
     248    _decod_queue_scheme                      = decod_queue_scheme                      ;
    244249    _nb_inst_decod                           = nb_inst_decod                           ;
    245250    _nb_context_select                       = nb_context_select                       ;
     
    323328    _commit_load_balancing                   = commit_load_balancing                   ;
    324329    _size_issue_queue                        = size_issue_queue                        ;
     330    _issue_queue_scheme                      = issue_queue_scheme                      ;
    325331    _nb_issue_queue_bank                     = nb_issue_queue_bank                     ;
    326332    _issue_priority                          = issue_priority                          ;
     
    786792    ALLOC1(_front_end_nb_inst_branch_complete             ,uint32_t         ,_nb_front_end);
    787793    ALLOC2(_front_end_size_decod_queue                    ,uint32_t         ,_nb_front_end,_nb_decod_unit[it1]);
     794    ALLOC2(_front_end_decod_queue_scheme                  ,multi_front_end::front_end::decod_unit::decod_queue::Tdecod_queue_scheme_t
     795                                                                            ,_nb_front_end,_nb_decod_unit[it1]);
    788796    ALLOC2(_front_end_nb_inst_decod                       ,uint32_t         ,_nb_front_end,_nb_decod_unit[it1]);
    789797    ALLOC1(_front_end_sum_inst_decod                      ,uint32_t         ,_nb_front_end);
     
    804812           
    805813            _front_end_size_decod_queue              [i][j] = _size_decod_queue              [num_decod_bloc];
     814            _front_end_decod_queue_scheme            [i][j] = _decod_queue_scheme            [num_decod_bloc];
    806815            _front_end_nb_inst_decod                 [i][j] = _nb_inst_decod                 [num_decod_bloc];
    807816            _front_end_sum_inst_decod                [i]   += _nb_inst_decod                 [num_decod_bloc];
     
    18351844        _front_end_link_decod_unit_with_context [i],
    18361845        _front_end_size_decod_queue             [i],
     1846        _front_end_decod_queue_scheme           [i],
    18371847        _front_end_nb_inst_decod                [i],
    18381848        _front_end_nb_context_select            [i],
     
    18581868        _front_end_upt_size_queue               [i],
    18591869        _front_end_ufpt_size_queue              [i],
    1860         _size_nb_inst_commit                   
     1870        _size_nb_inst_commit                       ,
     1871        _nb_thread                                 ,
     1872        _link_thread_with_context               [i]
    18611873        );
    18621874
     
    18901902       _commit_load_balancing                        [i],
    18911903       _size_issue_queue                             [i],
     1904       _issue_queue_scheme                           [i],
    18921905       _nb_issue_queue_bank                          [i],
    18931906       _issue_priority                               [i],
     
    21532166    DELETE1(_front_end_sum_inst_decod                               ,_nb_front_end);
    21542167    DELETE2(_front_end_nb_inst_decod                                ,_nb_front_end,_nb_decod_unit[it1]);
     2168    DELETE2(_front_end_decod_queue_scheme                           ,_nb_front_end,_nb_decod_unit[it1]);
    21552169    DELETE2(_front_end_size_decod_queue                             ,_nb_front_end,_nb_decod_unit[it1]);
    21562170    DELETE1(_front_end_nb_inst_branch_complete                      ,_nb_front_end);
Note: See TracChangeset for help on using the changeset viewer.