Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Configuration/src/Configuration.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Configuration/src/Configuration.cpp	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Configuration/src/Configuration.cpp	(revision 114)
@@ -66,6 +66,6 @@
     if (fromString<bool>(_simulator->getParam("use_statistics")))
       _usage = usage_set(_usage, USE_STATISTICS);
-    if (fromString<bool>(_simulator->getParam("use_information")))
-      _usage = usage_set(_usage, USE_INFORMATION);
+//     if (fromString<bool>(_simulator->getParam("use_information")))
+//       _usage = usage_set(_usage, USE_INFORMATION);
     if (fromString<bool>(_simulator->getParam("use_header")))
       _usage = usage_set(_usage, USE_HEADER);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_allocation.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_allocation.cpp	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_allocation.cpp	(revision 114)
@@ -141,27 +141,32 @@
 
     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
-    _param_queue = new morpheo::behavioural::generic::queue::Parameters
-      (_param->_size_queue,
-       _param->_size_internal_queue,
-       _param->_nb_bypass_write,
-       false,
-       false
-       );
-
-    std::string queue_name = _name + "_queue";
-    _component_queue = new morpheo::behavioural::generic::queue::Queue
-      (queue_name.c_str()
+#ifdef VHDL
+     if (usage_is_set(_usage,USE_VHDL))
+       {
+         _param_queue = new morpheo::behavioural::generic::queue::Parameters
+           (_param->_size_queue,
+            _param->_size_internal_queue,
+            _param->_nb_bypass_write,
+            false,
+            false
+            );
+         
+         std::string queue_name = _name + "_queue";
+         _component_queue = new morpheo::behavioural::generic::queue::Queue
+           (queue_name.c_str()
 #ifdef STATISTICS
-       ,NULL
+            ,NULL
 #endif
-       ,_param_queue
-       ,USE_VHDL);
-    
-    _component->set_component(_component_queue->_component
+            ,_param_queue
+            ,USE_VHDL);
+         
+         _component->set_component(_component_queue->_component
 #ifdef POSITION
-                              , 50, 50, 50, 50
+                                   , 50, 50, 50, 50
 #endif
-                              , INSTANCE_LIBRARY
-                              );
+                                   , INSTANCE_LIBRARY
+                                   );
+       }
+#endif
 
 #ifdef POSITION
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_transition.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_transition.cpp	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_transition.cpp	(revision 114)
@@ -427,9 +427,9 @@
                 instruction_log_file [num_thread] 
                   << "[" << simulation_cycle() << "] "
-                  << "{" << ((retire_ok)?" OK ":"!KO!") << "} "
                   << std::hex
-                  << "0x" << entry->address << " (0x" << (entry->address<<2) << ") "
+                  << (entry->address<<2) << " (" << (entry->address) << ") "
                   << std::dec
                   << "[" << entry->cycle_rob_in << ", " << entry->cycle_commit << "] "
+                  << "{" << ((retire_ok)?" OK ":"!KO!") << "} "
                   << std::endl;
 #endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Version.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Version.h	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Version.h	(revision 114)
@@ -10,8 +10,8 @@
 #define MORPHEO_MAJOR_VERSION "0"
 #define MORPHEO_MINOR_VERSION "2"
-#define MORPHEO_REVISION      "113"
+#define MORPHEO_REVISION      "114"
 #define MORPHEO_CODENAME      "Castor"
 
-#define MORPHEO_DATE_DAY      "14"  
+#define MORPHEO_DATE_DAY      "17"  
 #define MORPHEO_DATE_MONTH    "04"
 #define MORPHEO_DATE_YEAR     "2009" 
Index: trunk/IPs/systemC/processor/Morpheo/Files/Instance_debug.cfg
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Files/Instance_debug.cfg	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Files/Instance_debug.cfg	(revision 114)
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="ISO-8859-1" ?>
 
-<core name="Instance_debug">
+<core name="Instance_min">
 
   <thread id="0">             
-    <parameter name="size_ifetch_queue"                     value="32" />
-    <parameter name="nb_inst_fetch"                         value="8" />
-    <parameter name="ras_size_queue"                        value="8" />
-    <parameter name="upt_size_queue"                        value="8" />
-    <parameter name="ufpt_size_queue"                       value="4" />
+    <parameter name="size_ifetch_queue"                     value="1" />
+    <parameter name="nb_inst_fetch"                         value="1" />
+    <parameter name="ras_size_queue"                        value="2" />
+    <parameter name="upt_size_queue"                        value="1" />
+    <parameter name="ufpt_size_queue"                       value="1" />
 
     <group id="0">
@@ -16,7 +16,7 @@
                                                             
   <decod_bloc id="0">                                       
-    <parameter name="size_decod_queue"                      value="16"/>
-    <parameter name="decod_queue_scheme"                    value="1" />
-    <parameter name="nb_inst_decod"                         value="4" />
+    <parameter name="size_decod_queue"                      value="1" />
+    <parameter name="decod_queue_scheme"                    value="0" />
+    <parameter name="nb_inst_decod"                         value="1" />
     <parameter name="nb_context_select"                     value="1" />
     <parameter name="context_select_priority"               value="1" />
@@ -25,32 +25,32 @@
                                                             
   <rename_bloc id="0">                                      
-    <parameter name="nb_inst_insert"                        value="4" />
-    <parameter name="nb_inst_retire"                        value="4" />
+    <parameter name="nb_inst_insert"                        value="1" />
+    <parameter name="nb_inst_retire"                        value="1" />
     <parameter name="rename_select_priority"                value="1" />
     <parameter name="rename_select_load_balancing"          value="1" />
     <parameter name="rename_select_nb_front_end_select"     value="1" />
-    <parameter name="nb_general_register"                   value="256"/>
-    <parameter name="nb_special_register"                   value="128" />
-    <parameter name="nb_reg_free"                           value="8" />
-    <parameter name="nb_rename_unit_bank"                   value="8" />
+    <parameter name="nb_general_register"                   value="64"/>
+    <parameter name="nb_special_register"                   value="4" />
+    <parameter name="nb_reg_free"                           value="1" />
+    <parameter name="nb_rename_unit_bank"                   value="1" />
   </rename_bloc>                                            
                                                             
-  <read_bloc id="0,1,2,3">                                        
-    <parameter name="size_read_queue"                       value="4" />
-    <parameter name="size_reservation_station"              value="4" />
+  <read_bloc id="0">                                        
+    <parameter name="size_read_queue"                       value="1" />
+    <parameter name="size_reservation_station"              value="1" />
     <parameter name="nb_inst_retire_reservation_station"    value="1" />
   </read_bloc>                                              
-
-  <write_bloc id="0,1,2,3,4,5,6">                                       
-    <parameter name="size_write_queue"                      value="4" />
-    <parameter name="size_execute_queue"                    value="4" />
+                                                            
+  <write_bloc id="0">                                       
+    <parameter name="size_write_queue"                      value="1" />
+    <parameter name="size_execute_queue"                    value="1" />
     <parameter name="nb_bypass_write"                       value="0" />
   </write_bloc>                                             
-
+                                                            
   <load_store_unit id="0">                                  
-    <parameter name="size_store_queue"                      value="16" />
-    <parameter name="size_load_queue"                       value="8" />
-    <parameter name="size_speculative_access_queue"         value="4" />
-    <parameter name="nb_port_check"                         value="4" />
+    <parameter name="size_store_queue"                      value="2" />
+    <parameter name="size_load_queue"                       value="1" />
+    <parameter name="size_speculative_access_queue"         value="1" />
+    <parameter name="nb_port_check"                         value="1" />
     <parameter name="speculative_load"                      value="2" />
     <parameter name="nb_bypass_memory"                      value="0" />
@@ -59,5 +59,5 @@
   </load_store_unit>
 
-  <functionnal_unit id="0,1" >
+  <functionnal_unit id="0">
     <parameter name="nb_inst_functionnal_unit" value="1" />
 
@@ -69,9 +69,4 @@
     <timing type="6"  latence="1" delay="1" />
     <timing type="7"  latence="1" delay="1" />
-  </functionnal_unit>
-
-  <functionnal_unit id="2">
-    <parameter name="nb_inst_functionnal_unit" value="1" />
-
     <timing type="8"  latence="1" delay="1" />
     <timing type="10" latence="1" delay="1" />
@@ -83,55 +78,44 @@
     <parameter name="nb_inst_branch_decod"                  value="1" />
     <parameter name="nb_inst_branch_update"                 value="1" />
-    <parameter name="btb_size_queue"                        value="256" />
-    <parameter name="btb_associativity"                     value="8" />
+    <parameter name="btb_size_queue"                        value="1" />
+    <parameter name="btb_associativity"                     value="1" />
     <parameter name="btb_size_counter"                      value="2" />
-    <parameter name="btb_victim_scheme"                     value="3" />
-    <parameter name="dir_predictor_scheme"                  value="4" />
+    <parameter name="btb_victim_scheme"                     value="1" />
+    <parameter name="dir_predictor_scheme"                  value="1" />
                                                             
     <predictor id="0">                                      
-      <parameter name="dir_have_bht"                        value="0"  />
-      <parameter name="dir_bht_size_shifter"                value="1"  />
-      <parameter name="dir_bht_nb_shifter"                  value="64" />
-      <parameter name="dir_have_pht"                        value="1"  />
-      <parameter name="dir_pht_size_counter"                value="2"  />
-      <parameter name="dir_pht_nb_counter"                  value="16" />
-      <parameter name="dir_pht_size_address_share"          value="0"  />
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="0" />
     </predictor>                                            
+                                                            
     <predictor id="1">                                      
-      <parameter name="dir_have_bht"                        value="1" />
-      <parameter name="dir_bht_size_shifter"                value="4" />
-      <parameter name="dir_bht_nb_shifter"                  value="1" />
-      <parameter name="dir_have_pht"                        value="1" />
-      <parameter name="dir_pht_size_counter"                value="2" />
-      <parameter name="dir_pht_nb_counter"                  value="64" />
-      <parameter name="dir_pht_size_address_share"          value="0" />
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="0" />
     </predictor>                                            
+                                                            
     <predictor id="2">                                      
       <parameter name="dir_have_bht"                        value="0" />
-      <parameter name="dir_have_pht"                        value="1" />
-      <parameter name="dir_pht_size_counter"                value="2" />
-      <parameter name="dir_pht_nb_counter"                  value="128" />
-      <parameter name="dir_pht_size_address_share"          value="0" />
-    </predictor>                                            
+      <parameter name="dir_have_pht"                        value="0" />
+    </predictor>
   </front_end>
 
   <ooo_engine id="0">
     <parameter name="nb_rename_unit"                        value="1" />
-    <parameter name="nb_inst_issue"                         value="4" />
+    <parameter name="nb_inst_issue"                         value="1" />
     <parameter name="nb_inst_reexecute"                     value="1" />
-    <parameter name="nb_inst_commit"                        value="4" />
+    <parameter name="nb_inst_commit"                        value="1" />
     <parameter name="nb_inst_branch_complete"               value="1" />
     <parameter name="nb_rename_unit_select"                 value="1" />
     <parameter name="nb_execute_loop_select"                value="1" />
-    <parameter name="size_re_order_buffer"                  value="64"/>
-    <parameter name="nb_re_order_buffer_bank"               value="64" />
+    <parameter name="size_re_order_buffer"                  value="1" />
+    <parameter name="nb_re_order_buffer_bank"               value="1" />
     <parameter name="commit_priority"                       value="1" />
     <parameter name="commit_load_balancing"                 value="1" />
-    <parameter name="size_issue_queue"                      value="8" />
-    <parameter name="nb_issue_queue_bank"                   value="4" />
+    <parameter name="size_issue_queue"                      value="1" />
+    <parameter name="nb_issue_queue_bank"                   value="1" />
     <parameter name="issue_queue_scheme"                    value="0" />
     <parameter name="issue_priority"                        value="1" />
     <parameter name="issue_load_balancing"                  value="1" />
-    <parameter name="size_reexecute_queue"                  value="4" />
+    <parameter name="size_reexecute_queue"                  value="1" />
     <parameter name="reexecute_priority"                    value="1" />
     <parameter name="reexecute_load_balancing"              value="1" />
@@ -139,15 +123,22 @@
 
   <execute_loop id="0">
-    <parameter name="nb_read_unit"                          value="4" />
-    <parameter name="nb_write_unit"                         value="7" />
-    <parameter name="nb_execute_unit"                       value="4" />
+    <parameter name="nb_read_unit"                          value="1" />
+    <parameter name="nb_write_unit"                         value="1" />
     <parameter name="nb_gpr_bank"                           value="1" />
-    <parameter name="nb_gpr_port_read_by_bank"              value="8" />
-    <parameter name="nb_gpr_port_write_by_bank"             value="4" />
+    <parameter name="nb_gpr_port_read_by_bank"              value="1" />
+    <parameter name="nb_gpr_port_write_by_bank"             value="1" />
     <parameter name="nb_spr_bank"                           value="1" />
-    <parameter name="nb_spr_port_read_by_bank"              value="4" />
-    <parameter name="nb_spr_port_write_by_bank"             value="4" />
+    <parameter name="nb_spr_port_read_by_bank"              value="1" />
+    <parameter name="nb_spr_port_write_by_bank"             value="1" />
     <parameter name="execution_unit_to_write_unit_priority" value="1" />
     <parameter name="read_unit_to_execution_unit_priority"  value="1" />
+
+    <execute_unit id="1">
+      <link name="link_execute_unit_with_load_store_unit"   src="0"/>
+    </execute_unit>
+    <execute_unit id="0">
+      <link name="link_execute_unit_with_functionnal_unit"  src="0"/>
+    </execute_unit>
+
   </execute_loop>
 
@@ -168,22 +159,8 @@
   <link name="link_rename_unit_with_rename_bloc"       src="0"     dest="0.0" />
   <link name="link_read_unit_with_read_bloc"           src="0"     dest="0.0" />
-  <link name="link_read_unit_with_read_bloc"           src="1"     dest="0.1" />
-  <link name="link_read_unit_with_read_bloc"           src="2"     dest="0.2" />
-  <link name="link_read_unit_with_read_bloc"           src="3"     dest="0.3" />
   <link name="link_write_unit_with_write_bloc"         src="0"     dest="0.0" />
-  <link name="link_write_unit_with_write_bloc"         src="1"     dest="0.1" />
-  <link name="link_write_unit_with_write_bloc"         src="2"     dest="0.2" />
-  <link name="link_write_unit_with_write_bloc"         src="3"     dest="0.3" />
-  <link name="link_write_unit_with_write_bloc"         src="4"     dest="0.4" />
-  <link name="link_write_unit_with_write_bloc"         src="5"     dest="0.5" />
-  <link name="link_write_unit_with_write_bloc"         src="6"     dest="0.6" />
   <link name="link_decod_bloc_with_thread"             src="0"     dest="0"   />
   <link name="link_rename_bloc_with_front_end"         src="0"     dest="0"   />
   <link name="link_load_store_unit_with_thread"        src="0"     dest="0"   />
-
-  <link name="link_execute_unit_with_load_store_unit"  src="0"     dest="0.0"/>
-  <link name="link_execute_unit_with_functionnal_unit" src="0"     dest="0.1"/>
-  <link name="link_execute_unit_with_functionnal_unit" src="1"     dest="0.2"/>
-  <link name="link_execute_unit_with_functionnal_unit" src="2"     dest="0.3"/>
 
   <link name="link_icache_port_with_thread"            src="0"     dest="0"   />
@@ -191,71 +168,9 @@
 
   <link name="table_dispatch"                          src="0.0.0" dest="1"   />
-  <link name="table_dispatch"                          src="0.1.0" dest="0"   />
-  <link name="table_dispatch"                          src="0.2.0" dest="0"   />
-  <link name="table_dispatch"                          src="0.3.0" dest="0"   />
-
-  <link name="table_dispatch"                          src="0.0.1" dest="0"   />
-  <link name="table_dispatch"                          src="0.1.1" dest="1"   />
-  <link name="table_dispatch"                          src="0.2.1" dest="0"   />
-  <link name="table_dispatch"                          src="0.3.1" dest="0"   />
-
-  <link name="table_dispatch"                          src="0.0.2" dest="0"   />
-  <link name="table_dispatch"                          src="0.1.2" dest="0"   />
-  <link name="table_dispatch"                          src="0.2.2" dest="1"   />
-  <link name="table_dispatch"                          src="0.3.2" dest="0"   />
-
-  <link name="table_dispatch"                          src="0.0.3" dest="0"   />
-  <link name="table_dispatch"                          src="0.1.3" dest="0"   />
-  <link name="table_dispatch"                          src="0.2.3" dest="0"   />
-  <link name="table_dispatch"                          src="0.3.3" dest="1"   />
-
   <link name="link_read_bloc_and_load_store_unit"      src="0.0"   dest="1"   />
-  <link name="link_read_bloc_and_load_store_unit"      src="1.0"   dest="0"   />
-  <link name="link_read_bloc_and_load_store_unit"      src="2.0"   dest="0"   />
-  <link name="link_read_bloc_and_load_store_unit"      src="3.0"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="0.0"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="1.0"   dest="1"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="2.0"   dest="1"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="3.0"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="0.1"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="1.1"   dest="1"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="2.1"   dest="1"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="3.1"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="0.2"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="1.2"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="2.2"   dest="0"   />
-  <link name="link_read_bloc_and_functionnal_unit"     src="3.2"   dest="1"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="0.0"   dest="1"   />
   <link name="link_write_bloc_and_load_store_unit"     src="0.0"   dest="1"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="1.0"   dest="1"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="2.0"   dest="0"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="3.0"   dest="0"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="4.0"   dest="0"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="5.0"   dest="0"   />
-  <link name="link_write_bloc_and_load_store_unit"     src="6.0"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="0.0"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="1.0"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="2.0"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="3.0"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="4.0"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="5.0"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="6.0"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="0.1"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="1.1"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="2.1"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="3.1"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="4.1"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="5.1"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="6.1"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="0.2"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="1.2"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="2.2"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="3.2"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="4.2"   dest="0"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="5.2"   dest="1"   />
-  <link name="link_write_bloc_and_functionnal_unit"    src="6.2"   dest="1"   />
-
+  <link name="link_write_bloc_and_functionnal_unit"    src="0.0"   dest="1"   />
   <link name="link_thread_and_functionnal_unit"        src="0.0"   dest="1"   />
-  <link name="link_thread_and_functionnal_unit"        src="0.1"   dest="1"   />
-  <link name="link_thread_and_functionnal_unit"        src="0.2"   dest="1"   />
 
 </core>
Index: trunk/IPs/systemC/processor/Morpheo/Files/Instance_min.cfg
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Files/Instance_min.cfg	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Files/Instance_min.cfg	(revision 114)
@@ -17,4 +17,5 @@
   <decod_bloc id="0">                                       
     <parameter name="size_decod_queue"                      value="1" />
+    <parameter name="decod_queue_scheme"                    value="0" />
     <parameter name="nb_inst_decod"                         value="1" />
     <parameter name="nb_context_select"                     value="1" />
@@ -61,5 +62,13 @@
     <parameter name="nb_inst_functionnal_unit" value="1" />
 
-    <timing type="0" latence="1" delay="1" />
+    <timing type="0"  latence="1" delay="1" />
+    <timing type="1"  latence="1" delay="1" />
+    <timing type="2"  latence="1" delay="1" />
+    <timing type="3"  latence="1" delay="1" />
+    <timing type="4"  latence="1" delay="1" />
+    <timing type="6"  latence="1" delay="1" />
+    <timing type="7"  latence="1" delay="1" />
+    <timing type="8"  latence="1" delay="1" />
+    <timing type="10" latence="1" delay="1" />
   </functionnal_unit>
 
@@ -76,31 +85,16 @@
                                                             
     <predictor id="0">                                      
-      <parameter name="dir_have_bht"                        value="1" />
-      <parameter name="dir_bht_size_shifter"                value="1" />
-      <parameter name="dir_bht_nb_shifter"                  value="1" />
-      <parameter name="dir_have_pht"                        value="1" />
-      <parameter name="dir_pht_size_counter"                value="1" />
-      <parameter name="dir_pht_nb_counter"                  value="1" />
-      <parameter name="dir_pht_size_address_share"          value="1" />
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="0" />
     </predictor>                                            
                                                             
     <predictor id="1">                                      
-      <parameter name="dir_have_bht"                        value="1" />
-      <parameter name="dir_bht_size_shifter"                value="1" />
-      <parameter name="dir_bht_nb_shifter"                  value="1" />
-      <parameter name="dir_have_pht"                        value="1" />
-      <parameter name="dir_pht_size_counter"                value="1" />
-      <parameter name="dir_pht_nb_counter"                  value="1" />
-      <parameter name="dir_pht_size_address_share"          value="1" />
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="0" />
     </predictor>                                            
                                                             
     <predictor id="2">                                      
-      <parameter name="dir_have_bht"                        value="1" />
-      <parameter name="dir_bht_size_shifter"                value="1" />
-      <parameter name="dir_bht_nb_shifter"                  value="1" />
-      <parameter name="dir_have_pht"                        value="1" />
-      <parameter name="dir_pht_size_counter"                value="1" />
-      <parameter name="dir_pht_nb_counter"                  value="1" />
-      <parameter name="dir_pht_size_address_share"          value="1" />
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="0" />
     </predictor>
   </front_end>
@@ -120,4 +114,5 @@
     <parameter name="size_issue_queue"                      value="1" />
     <parameter name="nb_issue_queue_bank"                   value="1" />
+    <parameter name="issue_queue_scheme"                    value="0" />
     <parameter name="issue_priority"                        value="1" />
     <parameter name="issue_load_balancing"                  value="1" />
Index: trunk/IPs/systemC/processor/Morpheo/Files/Instance_w4_1.cfg
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Files/Instance_w4_1.cfg	(revision 114)
+++ trunk/IPs/systemC/processor/Morpheo/Files/Instance_w4_1.cfg	(revision 114)
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+
+<core name="Instance_debug">
+
+  <thread id="0">             
+    <parameter name="size_ifetch_queue"                     value="32" />
+    <parameter name="nb_inst_fetch"                         value="8" />
+    <parameter name="ras_size_queue"                        value="8" />
+    <parameter name="upt_size_queue"                        value="8" />
+    <parameter name="ufpt_size_queue"                       value="4" />
+
+    <group id="0">
+      <parameter name="implement_group"                     value="1" />
+    </group>
+  </thread>                                                 
+                                                            
+  <decod_bloc id="0">                                       
+    <parameter name="size_decod_queue"                      value="16"/>
+    <parameter name="decod_queue_scheme"                    value="1" />
+    <parameter name="nb_inst_decod"                         value="4" />
+    <parameter name="nb_context_select"                     value="1" />
+    <parameter name="context_select_priority"               value="1" />
+    <parameter name="context_select_load_balancing"         value="1" />
+  </decod_bloc>                                             
+                                                            
+  <rename_bloc id="0">                                      
+    <parameter name="nb_inst_insert"                        value="4" />
+    <parameter name="nb_inst_retire"                        value="4" />
+    <parameter name="rename_select_priority"                value="1" />
+    <parameter name="rename_select_load_balancing"          value="1" />
+    <parameter name="rename_select_nb_front_end_select"     value="1" />
+    <parameter name="nb_general_register"                   value="256"/>
+    <parameter name="nb_special_register"                   value="128" />
+    <parameter name="nb_reg_free"                           value="8" />
+    <parameter name="nb_rename_unit_bank"                   value="8" />
+  </rename_bloc>                                            
+                                                            
+  <read_bloc id="0,1,2,3">                                        
+    <parameter name="size_read_queue"                       value="4" />
+    <parameter name="size_reservation_station"              value="4" />
+    <parameter name="nb_inst_retire_reservation_station"    value="1" />
+  </read_bloc>                                              
+
+  <write_bloc id="0,1,2,3,4,5,6">                                       
+    <parameter name="size_write_queue"                      value="4" />
+    <parameter name="size_execute_queue"                    value="4" />
+    <parameter name="nb_bypass_write"                       value="0" />
+  </write_bloc>                                             
+
+  <load_store_unit id="0">                                  
+    <parameter name="size_store_queue"                      value="16" />
+    <parameter name="size_load_queue"                       value="8" />
+    <parameter name="size_speculative_access_queue"         value="4" />
+    <parameter name="nb_port_check"                         value="4" />
+    <parameter name="speculative_load"                      value="2" />
+    <parameter name="nb_bypass_memory"                      value="0" />
+    <parameter name="nb_cache_port"                         value="1" />
+    <parameter name="nb_inst_memory"                        value="1" />
+  </load_store_unit>
+
+  <functionnal_unit id="0,1" >
+    <parameter name="nb_inst_functionnal_unit" value="1" />
+
+    <timing type="0"  latence="1" delay="1" />
+    <timing type="1"  latence="1" delay="1" />
+    <timing type="2"  latence="1" delay="1" />
+    <timing type="3"  latence="1" delay="1" />
+    <timing type="4"  latence="1" delay="1" />
+    <timing type="6"  latence="1" delay="1" />
+    <timing type="7"  latence="1" delay="1" />
+  </functionnal_unit>
+
+  <functionnal_unit id="2">
+    <parameter name="nb_inst_functionnal_unit" value="1" />
+
+    <timing type="8"  latence="1" delay="1" />
+    <timing type="10" latence="1" delay="1" />
+  </functionnal_unit>
+
+  <front_end id="0">        
+    <parameter name="nb_decod_unit"                         value="1" />
+    <parameter name="nb_inst_branch_predict"                value="1" />
+    <parameter name="nb_inst_branch_decod"                  value="1" />
+    <parameter name="nb_inst_branch_update"                 value="1" />
+    <parameter name="btb_size_queue"                        value="256" />
+    <parameter name="btb_associativity"                     value="8" />
+    <parameter name="btb_size_counter"                      value="2" />
+    <parameter name="btb_victim_scheme"                     value="3" />
+    <parameter name="dir_predictor_scheme"                  value="4" />
+                                                            
+    <predictor id="0">                                      
+      <parameter name="dir_have_bht"                        value="0"  />
+      <parameter name="dir_bht_size_shifter"                value="1"  />
+      <parameter name="dir_bht_nb_shifter"                  value="64" />
+      <parameter name="dir_have_pht"                        value="1"  />
+      <parameter name="dir_pht_size_counter"                value="2"  />
+      <parameter name="dir_pht_nb_counter"                  value="16" />
+      <parameter name="dir_pht_size_address_share"          value="0"  />
+    </predictor>                                            
+    <predictor id="1">                                      
+      <parameter name="dir_have_bht"                        value="1" />
+      <parameter name="dir_bht_size_shifter"                value="4" />
+      <parameter name="dir_bht_nb_shifter"                  value="1" />
+      <parameter name="dir_have_pht"                        value="1" />
+      <parameter name="dir_pht_size_counter"                value="2" />
+      <parameter name="dir_pht_nb_counter"                  value="64" />
+      <parameter name="dir_pht_size_address_share"          value="0" />
+    </predictor>                                            
+    <predictor id="2">                                      
+      <parameter name="dir_have_bht"                        value="0" />
+      <parameter name="dir_have_pht"                        value="1" />
+      <parameter name="dir_pht_size_counter"                value="2" />
+      <parameter name="dir_pht_nb_counter"                  value="128" />
+      <parameter name="dir_pht_size_address_share"          value="0" />
+    </predictor>                                            
+  </front_end>
+
+  <ooo_engine id="0">
+    <parameter name="nb_rename_unit"                        value="1" />
+    <parameter name="nb_inst_issue"                         value="4" />
+    <parameter name="nb_inst_reexecute"                     value="1" />
+    <parameter name="nb_inst_commit"                        value="4" />
+    <parameter name="nb_inst_branch_complete"               value="1" />
+    <parameter name="nb_rename_unit_select"                 value="1" />
+    <parameter name="nb_execute_loop_select"                value="1" />
+    <parameter name="size_re_order_buffer"                  value="64"/>
+    <parameter name="nb_re_order_buffer_bank"               value="64" />
+    <parameter name="commit_priority"                       value="1" />
+    <parameter name="commit_load_balancing"                 value="1" />
+    <parameter name="size_issue_queue"                      value="8" />
+    <parameter name="nb_issue_queue_bank"                   value="4" />
+    <parameter name="issue_queue_scheme"                    value="0" />
+    <parameter name="issue_priority"                        value="1" />
+    <parameter name="issue_load_balancing"                  value="1" />
+    <parameter name="size_reexecute_queue"                  value="4" />
+    <parameter name="reexecute_priority"                    value="1" />
+    <parameter name="reexecute_load_balancing"              value="1" />
+  </ooo_engine>
+
+  <execute_loop id="0">
+    <parameter name="nb_read_unit"                          value="4" />
+    <parameter name="nb_write_unit"                         value="7" />
+    <parameter name="nb_execute_unit"                       value="4" />
+    <parameter name="nb_gpr_bank"                           value="1" />
+    <parameter name="nb_gpr_port_read_by_bank"              value="8" />
+    <parameter name="nb_gpr_port_write_by_bank"             value="4" />
+    <parameter name="nb_spr_bank"                           value="1" />
+    <parameter name="nb_spr_port_read_by_bank"              value="4" />
+    <parameter name="nb_spr_port_write_by_bank"             value="4" />
+    <parameter name="execution_unit_to_write_unit_priority" value="1" />
+    <parameter name="read_unit_to_execution_unit_priority"  value="1" />
+  </execute_loop>
+
+  <parameter name="size_data"                               value="32" />
+                                                            
+  <parameter name="dispatch_priority"                       value="1" />
+  <parameter name="dispatch_load_balancing"                 value="1" />
+                                                            
+  <parameter name="nb_icache_port"                          value="1" />
+  <parameter name="icache_port_priority"                    value="1" />
+  <parameter name="icache_port_load_balancing"              value="1" />
+                                                            
+  <parameter name="nb_dcache_port"                          value="1" />
+  <parameter name="dcache_port_priority"                    value="1" />
+  <parameter name="dcache_port_load_balancing"              value="1" />
+
+  <link name="link_decod_unit_with_decod_bloc"         src="0"     dest="0.0" />
+  <link name="link_rename_unit_with_rename_bloc"       src="0"     dest="0.0" />
+  <link name="link_read_unit_with_read_bloc"           src="0"     dest="0.0" />
+  <link name="link_read_unit_with_read_bloc"           src="1"     dest="0.1" />
+  <link name="link_read_unit_with_read_bloc"           src="2"     dest="0.2" />
+  <link name="link_read_unit_with_read_bloc"           src="3"     dest="0.3" />
+  <link name="link_write_unit_with_write_bloc"         src="0"     dest="0.0" />
+  <link name="link_write_unit_with_write_bloc"         src="1"     dest="0.1" />
+  <link name="link_write_unit_with_write_bloc"         src="2"     dest="0.2" />
+  <link name="link_write_unit_with_write_bloc"         src="3"     dest="0.3" />
+  <link name="link_write_unit_with_write_bloc"         src="4"     dest="0.4" />
+  <link name="link_write_unit_with_write_bloc"         src="5"     dest="0.5" />
+  <link name="link_write_unit_with_write_bloc"         src="6"     dest="0.6" />
+  <link name="link_decod_bloc_with_thread"             src="0"     dest="0"   />
+  <link name="link_rename_bloc_with_front_end"         src="0"     dest="0"   />
+  <link name="link_load_store_unit_with_thread"        src="0"     dest="0"   />
+
+  <link name="link_execute_unit_with_load_store_unit"  src="0"     dest="0.0"/>
+  <link name="link_execute_unit_with_functionnal_unit" src="0"     dest="0.1"/>
+  <link name="link_execute_unit_with_functionnal_unit" src="1"     dest="0.2"/>
+  <link name="link_execute_unit_with_functionnal_unit" src="2"     dest="0.3"/>
+
+  <link name="link_icache_port_with_thread"            src="0"     dest="0"   />
+  <link name="link_dcache_port_with_load_store_unit"   src="0.0"   dest="0"   />
+
+  <link name="table_dispatch"                          src="0.0.0" dest="1"   />
+  <link name="table_dispatch"                          src="0.1.0" dest="0"   />
+  <link name="table_dispatch"                          src="0.2.0" dest="0"   />
+  <link name="table_dispatch"                          src="0.3.0" dest="0"   />
+
+  <link name="table_dispatch"                          src="0.0.1" dest="0"   />
+  <link name="table_dispatch"                          src="0.1.1" dest="1"   />
+  <link name="table_dispatch"                          src="0.2.1" dest="0"   />
+  <link name="table_dispatch"                          src="0.3.1" dest="0"   />
+
+  <link name="table_dispatch"                          src="0.0.2" dest="0"   />
+  <link name="table_dispatch"                          src="0.1.2" dest="0"   />
+  <link name="table_dispatch"                          src="0.2.2" dest="1"   />
+  <link name="table_dispatch"                          src="0.3.2" dest="0"   />
+
+  <link name="table_dispatch"                          src="0.0.3" dest="0"   />
+  <link name="table_dispatch"                          src="0.1.3" dest="0"   />
+  <link name="table_dispatch"                          src="0.2.3" dest="0"   />
+  <link name="table_dispatch"                          src="0.3.3" dest="1"   />
+
+  <link name="link_read_bloc_and_load_store_unit"      src="0.0"   dest="1"   />
+  <link name="link_read_bloc_and_load_store_unit"      src="1.0"   dest="0"   />
+  <link name="link_read_bloc_and_load_store_unit"      src="2.0"   dest="0"   />
+  <link name="link_read_bloc_and_load_store_unit"      src="3.0"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="0.0"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="1.0"   dest="1"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="2.0"   dest="1"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="3.0"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="0.1"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="1.1"   dest="1"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="2.1"   dest="1"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="3.1"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="0.2"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="1.2"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="2.2"   dest="0"   />
+  <link name="link_read_bloc_and_functionnal_unit"     src="3.2"   dest="1"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="0.0"   dest="1"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="1.0"   dest="1"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="2.0"   dest="0"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="3.0"   dest="0"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="4.0"   dest="0"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="5.0"   dest="0"   />
+  <link name="link_write_bloc_and_load_store_unit"     src="6.0"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="0.0"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="1.0"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="2.0"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="3.0"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="4.0"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="5.0"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="6.0"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="0.1"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="1.1"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="2.1"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="3.1"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="4.1"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="5.1"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="6.1"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="0.2"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="1.2"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="2.2"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="3.2"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="4.2"   dest="0"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="5.2"   dest="1"   />
+  <link name="link_write_bloc_and_functionnal_unit"    src="6.2"   dest="1"   />
+
+  <link name="link_thread_and_functionnal_unit"        src="0.0"   dest="1"   />
+  <link name="link_thread_and_functionnal_unit"        src="0.1"   dest="1"   />
+  <link name="link_thread_and_functionnal_unit"        src="0.2"   dest="1"   />
+
+</core>
Index: trunk/IPs/systemC/processor/Morpheo/Files/Morpheo.sim
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Files/Morpheo.sim	(revision 113)
+++ trunk/IPs/systemC/processor/Morpheo/Files/Morpheo.sim	(revision 114)
@@ -8,12 +8,12 @@
   <parameter  name="use_vhdl_testbench_assert"              value="0"       />
   <parameter  name="use_position"                           value="0"       />
-  <parameter  name="use_statistics"                         value="0"       />
+  <parameter  name="use_statistics"                         value="1"       />
   <parameter  name="use_information"                        value="0"       />
-  <parameter  name="use_header"                             value="0"       />
+  <parameter  name="use_header"                             value="1"       />
 
   <parameter  name="statistics_cycle_start"                 value="5"       />
   <parameter  name="statistics_period"                      value="0"       />
                                                             
-  <parameter  name="simulation_nb_cycle"                    value="100000"  />
+  <parameter  name="simulation_nb_cycle"                    value="10000000"/>
   <parameter  name="simulation_nb_instruction"              value="0"       />
                                                             
@@ -24,6 +24,6 @@
                                                             
   <parameter  name="debug_level"                            value="0"       />
-  <parameter  name="debug_cycle_start"                      value="300"     />
-  <parameter  name="debug_cycle_stop"                       value="450"     />
+  <parameter  name="debug_cycle_start"                      value="600"     />
+  <parameter  name="debug_cycle_stop"                       value="827"     />
   <parameter  name="debug_have_log_file"                    value="0"       />
   <parameter  name="debug_idle_cycle"                       value="100"     />
Index: trunk/IPs/systemC/processor/Morpheo/Script/instruction_flow.sh
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Script/instruction_flow.sh	(revision 114)
+++ trunk/IPs/systemC/processor/Morpheo/Script/instruction_flow.sh	(revision 114)
@@ -0,0 +1,108 @@
+#!/bin/bash
+
+#-----------------------------------------------------------
+# $Id$
+#-----------------------------------------------------------
+
+#-----[ usage ]---------------------------------------------
+function usage ()
+{
+    echo "Usage     : ${0} file1 file2";
+    echo "Arguments : ";
+    echo " * file1 : instruction flow file";
+    echo " * file2 : symbol file";
+    echo "format for file1 : xxx address xxx. address is in hexadecimal without 0x or additionnal 0";
+    exit;
+}
+
+#-----[ test_usage ]----------------------------------------
+function test_usage ()
+{
+    if test ${#} -ne 2; then
+        usage ${*};
+    fi;
+}
+
+#-----[ main ]----------------------------------------------
+function main ()
+{
+    test_usage ${*};
+
+    # Read symbol file and take function address and function name
+    local -ai array_address_begin;
+    local -ai array_address_end;
+    local -a array_name;
+
+    # first slot
+    array_address_begin[0]=0;
+    array_name[0]="???";
+
+    local -i cpt=1;
+    while read line; do
+        local type=$(echo ${line} | cut -d' ' -f2);
+
+        # Test if the symbol is in text section
+        if test "${type}" = "T"; then
+            local address_begin=$(echo ${line} | cut -d' ' -f1);
+            local name=$(   echo ${line} | cut -d' ' -f3);
+
+            # erase additionnal 0
+            declare str=$(expr match "${address_begin}" '.*\(^[0]*\)');
+            address_begin=$(printf %d 0x${address_begin#${str}});
+
+            local address_end=$((${address_begin}-1));
+
+            array_address_begin[${cpt}]=${address_begin};
+            array_address_end[$((${cpt}-1))]=${address_end};
+            array_name[${cpt}]="${name}";
+
+            #echo "${address_begin} ${name}";
+
+            cpt=$((${cpt}+1));
+        fi;
+    done < ${2};
+
+    # last slot
+    array_address_end[$((${cpt}-1))]=$(printf %d 0xffffffff);
+
+#    cpt=0;
+#    while test ${cpt} -ne ${#array_address_begin[*]}; do
+#        address_begin=${array_address_begin[${cpt}]};
+#        address_end=${array_address_end[${cpt}]};
+#        name=${array_name[${cpt}]};
+#
+#        echo "${address_begin} ${address_end} ${name}";
+#
+#        cpt=$((${cpt}+1));
+#    done;
+
+     # Read instruction flow file
+    while read line; do
+         # extract address
+        
+        local name="";
+        local -i address_current=$(printf %d 0x$(echo ${line} | cut -d' ' -f2));
+        
+         # search in address file if match
+        cpt=0;
+        while test ${cpt} -ne ${#array_address_begin[*]}; do
+            local -i address_begin=${array_address_begin[${cpt}]};
+            local -i address_end=${array_address_end[${cpt}]};
+            
+             # test if address_curent match with a address in symbol file
+            if test ${address_current} -ge ${address_begin} -a ${address_current} -lt ${address_end}; then
+                name=${array_name[${cpt}]};
+                break;
+            fi;
+            
+            cpt=$((${cpt}+1));
+        done;
+        
+        echo "${line} ${name}";
+        
+    done < ${1};
+
+}
+
+#-----[ Corps ]---------------------------------------------
+main ${*};
