Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/include/Parameters.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/include/Parameters.h	(revision 136)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/include/Parameters.h	(revision 138)
@@ -28,5 +28,4 @@
 
 namespace core {
-
 
   class Parameters : public morpheo::behavioural::Parameters
@@ -75,4 +74,5 @@
   // Read bloc
   public : uint32_t                _nb_read_bloc                                  ;//
+  public : uint32_t              * _nb_inst_read                                  ;//[nb_read_bloc]
   public : uint32_t              * _size_read_queue                               ;//[nb_read_bloc]
   public : uint32_t              * _size_reservation_station                      ;//[nb_read_bloc]
@@ -81,4 +81,5 @@
   // Write bloc
   public : uint32_t                _nb_write_bloc                                 ;//
+  public : uint32_t              * _nb_inst_write                                 ;//[nb_write_bloc]
   public : uint32_t              * _size_write_queue                              ;//[nb_write_bloc]
   public : uint32_t              * _size_execute_queue                            ;//[nb_write_bloc]
@@ -91,7 +92,12 @@
   public : uint32_t              * _size_load_queue                               ;//[nb_load_store_unit]
   public : uint32_t              * _size_speculative_access_queue                 ;//[nb_load_store_unit]
+  public : uint32_t              * _nb_store_queue_bank                           ;//[nb_load_store_unit]
+  public : uint32_t              * _nb_load_queue_bank                            ;//[nb_load_store_unit]
   public : uint32_t              * _nb_port_check                                 ;//[nb_load_store_unit]
   public : multi_execute_loop::execute_loop::Tspeculative_load_t  
                                  * _speculative_load                              ;//[nb_load_store_unit]
+  public : Tpredictor_t          * _speculative_commit_predictor_scheme           ;//[nb_load_store_unit]
+  public : uint32_t             ** _lsu_pht_size_counter                          ;//[nb_load_store_unit][1]
+  public : uint32_t             ** _lsu_pht_nb_counter                            ;//[nb_load_store_unit][1]
   public : uint32_t              * _nb_bypass_memory                              ;//[nb_load_store_unit]
   public : uint32_t              * _nb_cache_port                                 ;//[nb_load_store_unit]
@@ -138,5 +144,5 @@
   public : uint32_t              * _nb_rename_unit                                ;//[nb_ooo_engine]
   public : uint32_t              * _nb_inst_issue_queue                           ;//[nb_ooo_engine]
-  public : uint32_t              * _nb_inst_issue_slot                            ;//[nb_ooo_engine]
+//public : uint32_t              * _nb_inst_issue_slot                            ;//[nb_ooo_engine]
   public : uint32_t              * _nb_inst_reexecute                             ;//[nb_ooo_engine]
   public : uint32_t              * _nb_inst_commit                                ;//[nb_ooo_engine]
@@ -146,4 +152,6 @@
   public : uint32_t              * _size_re_order_buffer                          ;//[nb_ooo_engine]
   public : uint32_t              * _nb_re_order_buffer_bank                       ;//[nb_ooo_engine]
+  public : multi_ooo_engine::ooo_engine::commit_unit::Tretire_ooo_scheme_t
+                                 * _retire_ooo_scheme                             ;//[nb_ooo_engine]
   public : Tpriority_t           * _commit_priority                               ;//[nb_ooo_engine]
   public : Tload_balancing_t     * _commit_load_balancing                         ;//[nb_ooo_engine]
@@ -156,6 +164,4 @@
   public : Tload_balancing_t     * _issue_load_balancing                          ;//[nb_ooo_engine]
   public : uint32_t              * _size_reexecute_queue                          ;//[nb_ooo_engine]
-  public : Tpriority_t           * _reexecute_priority                            ;//[nb_ooo_engine]
-  public : Tload_balancing_t     * _reexecute_load_balancing                      ;//[nb_ooo_engine]
 
   //Execute_loop
@@ -183,8 +189,8 @@
   public : uint32_t              * _link_decod_bloc_with_thread                   ;//[nb_thread]
   public : uint32_t              * _link_rename_bloc_with_front_end               ;//[nb_front_end]
-  public : bool                *** _table_dispatch                                ;//[nb_ooo_engine][nb_inst_issue_slot][nb_read_bloc]
-  public : bool                 ** _link_read_bloc_and_load_store_unit            ;//[nb_read_bloc][nb_load_store_unit]
+//public : bool                *** _table_dispatch                                ;//[nb_ooo_engine][nb_inst_issue_slot][nb_read_bloc]
+  public : uint32_t              * _link_read_bloc_with_load_store_unit           ;//[nb_load_store_unit]
   public : bool                 ** _link_read_bloc_and_functionnal_unit           ;//[nb_read_bloc][nb_functionnal_unit]
-  public : bool                 ** _link_write_bloc_and_load_store_unit           ;//[nb_write_bloc][nb_load_store_unit]
+  public : uint32_t              * _link_write_bloc_with_load_store_unit          ;//[nb_load_store_unit]
   public : bool                 ** _link_write_bloc_and_functionnal_unit          ;//[nb_write_bloc][nb_functionnal_unit]
   public : uint32_t              * _link_load_store_unit_with_thread              ;//[nb_thread]
@@ -276,4 +282,5 @@
   public : uint32_t              * _execute_loop_nb_thread                                 ;//[nb_execute_loop]
   public : uint32_t              * _execute_loop_nb_packet                                 ;//[nb_execute_loop]
+  public : uint32_t             ** _execute_loop_nb_inst_read                              ;//[nb_execute_loop][nb_read_unit]
   public : uint32_t             ** _execute_loop_size_read_queue                           ;//[nb_execute_loop][nb_read_unit]
   public : uint32_t             ** _execute_loop_size_reservation_station                  ;//[nb_execute_loop][nb_read_unit]
@@ -285,10 +292,16 @@
   public : uint32_t             ** _execute_loop_size_load_queue                           ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : uint32_t             ** _execute_loop_size_speculative_access_queue             ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
+  public : uint32_t             ** _execute_loop_nb_store_queue_bank                       ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
+  public : uint32_t             ** _execute_loop_nb_load_queue_bank                        ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : uint32_t             ** _execute_loop_nb_port_check                             ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : multi_execute_loop::execute_loop::Tspeculative_load_t
                                 ** _execute_loop_speculative_load                          ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
+  public : Tpredictor_t         ** _execute_loop_speculative_commit_predictor_scheme       ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
+  public : uint32_t            *** _execute_loop_lsu_pht_size_counter                      ;//[nb_execute_loop][execute_loop_nb_load_store_unit][1]
+  public : uint32_t            *** _execute_loop_lsu_pht_nb_counter                        ;//[nb_execute_loop][execute_loop_nb_load_store_unit][1]
   public : uint32_t             ** _execute_loop_nb_bypass_memory                          ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : uint32_t             ** _execute_loop_nb_cache_port                             ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : uint32_t             ** _execute_loop_nb_inst_memory                            ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
+  public : uint32_t             ** _execute_loop_nb_inst_write                             ;//[nb_execute_loop][nb_write_unit]
   public : uint32_t             ** _execute_loop_size_write_queue                          ;//[nb_execute_loop][nb_write_unit]
   public : uint32_t             ** _execute_loop_size_execute_queue                        ;//[nb_execute_loop][nb_write_unit]
@@ -325,5 +338,5 @@
   public : uint32_t             ** _dcache_access_size_packet_id                  ;//[nb_execute_loop][execute_loop_nb_load_store_unit]
   public : uint32_t            *** _dcache_access_table_routing                   ;//[nb_execute_loop][execute_loop_nb_load_store_unit][execute_loop_nb_cache_port]
-  public : uint32_t              * _dcache_access_nb_context                         ;//[nb_execute_loop]
+  public : uint32_t              * _dcache_access_nb_context                      ;//[nb_execute_loop]
   public : uint32_t            *** _dcache_access_translate_load_store_unit_to_thread;//[nb_execute_loop][execute_loop_nb_load_store_unit][dcache_access_nb_context]
 
@@ -338,7 +351,7 @@
 
 
-  public : bool               **** _network_table_dispatch                        ;//[nb_ooo_engine][nb_inst_issue_slot][nb_execute_loop][nb_read_unit]
+//public : bool               **** _network_table_dispatch                        ;//[nb_ooo_engine][nb_inst_issue_slot][nb_execute_loop][nb_read_unit]
   public : bool                *** _network_table_issue_type                      ;//                                   [nb_execute_loop][nb_read_unit][nb_type]
-
+  public : bool                *** _network_table_issue_thread                    ;//                                   [nb_execute_loop][nb_read_unit][nb_thread]
 
   // Translate
@@ -398,4 +411,5 @@
   // Read bloc
   uint32_t                nb_read_bloc                                  ,//
+  uint32_t              * nb_inst_read                                  ,//[nb_read_bloc]
   uint32_t              * size_read_queue                               ,//[nb_read_bloc]
   uint32_t              * size_reservation_station                      ,//[nb_read_bloc]
@@ -404,4 +418,5 @@
   // Write bloc
   uint32_t                nb_write_bloc                                 ,//
+  uint32_t              * nb_inst_write                                 ,//[nb_write_bloc]
   uint32_t              * size_write_queue                              ,//[nb_write_bloc]
   uint32_t              * size_execute_queue                            ,//[nb_write_bloc]
@@ -414,7 +429,12 @@
   uint32_t              * size_load_queue                               ,//[nb_load_store_unit]
   uint32_t              * size_speculative_access_queue                 ,//[nb_load_store_unit]
+  uint32_t              * nb_store_queue_bank                           ,//[nb_load_store_unit]
+  uint32_t              * nb_load_queue_bank                            ,//[nb_load_store_unit]
   uint32_t              * nb_port_check                                 ,//[nb_load_store_unit]
   multi_execute_loop::execute_loop::Tspeculative_load_t  
                         * speculative_load                              ,//[nb_load_store_unit]
+  Tpredictor_t          * speculative_commit_predictor_scheme           ,//[nb_load_store_unit]
+  uint32_t             ** lsu_pht_size_counter                          ,//[nb_load_store_unit][1]
+  uint32_t             ** lsu_pht_nb_counter                            ,//[nb_load_store_unit][1]
   uint32_t              * nb_bypass_memory                              ,//[nb_load_store_unit]
   uint32_t              * nb_cache_port                                 ,//[nb_load_store_unit]
@@ -460,5 +480,5 @@
   uint32_t                nb_ooo_engine                                 ,
   uint32_t              * nb_rename_unit                                ,//[nb_ooo_engine]
-  uint32_t              * nb_inst_issue_slot                            ,//[nb_ooo_engine]
+//uint32_t              * nb_inst_issue_slot                            ,//[nb_ooo_engine]
   uint32_t              * nb_inst_reexecute                             ,//[nb_ooo_engine]
   uint32_t              * nb_inst_commit                                ,//[nb_ooo_engine]
@@ -468,4 +488,6 @@
   uint32_t              * size_re_order_buffer                          ,//[nb_ooo_engine]
   uint32_t              * nb_re_order_buffer_bank                       ,//[nb_ooo_engine]
+  multi_ooo_engine::ooo_engine::commit_unit::Tretire_ooo_scheme_t
+                        * retire_ooo_scheme                             ,//[nb_ooo_engine]
   Tpriority_t           * commit_priority                               ,//[nb_ooo_engine]
   Tload_balancing_t     * commit_load_balancing                         ,//[nb_ooo_engine]
@@ -477,6 +499,4 @@
   Tload_balancing_t     * issue_load_balancing                          ,//[nb_ooo_engine]
   uint32_t              * size_reexecute_queue                          ,//[nb_ooo_engine]
-  Tpriority_t           * reexecute_priority                            ,//[nb_ooo_engine]
-  Tload_balancing_t     * reexecute_load_balancing                      ,//[nb_ooo_engine]
 
   //Execute_loop
@@ -504,8 +524,8 @@
   uint32_t              * link_decod_bloc_with_thread                   ,//[nb_thread]
   uint32_t              * link_rename_bloc_with_front_end               ,//[nb_front_end]
-  bool                *** table_dispatch                                ,//[nb_ooo_engine][nb_inst_issue_slot][nb_read_bloc]
-  bool                 ** link_read_bloc_and_load_store_unit            ,//[nb_read_bloc][nb_load_store_unit]
+//bool                *** table_dispatch                                ,//[nb_ooo_engine][nb_inst_issue_slot][nb_read_bloc]
+  uint32_t              * link_read_bloc_with_load_store_unit           ,//[nb_load_store_unit]
   bool                 ** link_read_bloc_and_functionnal_unit           ,//[nb_read_bloc][nb_functionnal_unit]
-  bool                 ** link_write_bloc_and_load_store_unit           ,//[nb_write_bloc][nb_load_store_unit]
+  uint32_t              * link_write_bloc_with_load_store_unit          ,//[nb_load_store_unit]
   bool                 ** link_write_bloc_and_functionnal_unit          ,//[nb_write_bloc][nb_functionnal_unit]
   uint32_t              * link_load_store_unit_with_thread              ,//[nb_thread]
