Index: trunk/IPs/systemC/Environment/Cache/src/Cache_MultiLevel_update_access.cpp
===================================================================
--- trunk/IPs/systemC/Environment/Cache/src/Cache_MultiLevel_update_access.cpp	(revision 113)
+++ trunk/IPs/systemC/Environment/Cache/src/Cache_MultiLevel_update_access.cpp	(revision 114)
@@ -20,5 +20,5 @@
 // 	if (latence != 0)
 // 	  {
-// 	    std::cout << "<Cache_MultiLevel::update_access> after all update, latence must be null." << std::endl;
+// 	    _cout(CACHE,"after all update, latence must be null.\n");
 // 	    exit(1);
 // 	  }
Index: trunk/IPs/systemC/Environment/Cache/src/Cache_OneLevel_access.cpp
===================================================================
--- trunk/IPs/systemC/Environment/Cache/src/Cache_OneLevel_access.cpp	(revision 113)
+++ trunk/IPs/systemC/Environment/Cache/src/Cache_OneLevel_access.cpp	(revision 114)
@@ -30,5 +30,5 @@
       case SYNCHRONIZATION : return access_synchronization (num_port,address,trdid    ); break;
       case CACHED          : return access_cached          (num_port,address,trdid,dir); break;
-      default              : std::cout << "<Cache_Onelevel.access> unknow type : " << std::endl; exit(1); break;
+      default              : _cerr("<Cache_Onelevel.access> unknow type\n"); exit(1); break;
       }
   }
Index: trunk/IPs/systemC/Environment/Common/include/Debug.h
===================================================================
--- trunk/IPs/systemC/Environment/Common/include/Debug.h	(revision 113)
+++ trunk/IPs/systemC/Environment/Common/include/Debug.h	(revision 114)
@@ -11,5 +11,4 @@
 #define DEBUG_TTY         true
 
-// #ifdef DEBUG
 # define _cout(component, str...)					\
   do									\
@@ -21,11 +20,11 @@
     } 								        \
   while(0)
-// #else
-// # define _cout(component, str...)					
-//   do									
-//     {								
-//     }
-//    while(0)
-// #endif
+
+# define _cerr(str...)                                                   \
+  do									\
+    {									\
+      fprintf(stderr,str);						\
+    } 								        \
+  while(0)
 
 #endif
Index: trunk/IPs/systemC/Environment/Makefile
===================================================================
--- trunk/IPs/systemC/Environment/Makefile	(revision 113)
+++ trunk/IPs/systemC/Environment/Makefile	(revision 114)
@@ -45,5 +45,4 @@
 all				:
 				@\
-				$(MAKE) all_environment; \
 				$(MAKE) --directory=$(DIR_CACHE)      all; \
 				$(MAKE) --directory=$(DIR_DATA)       all; \
@@ -56,9 +55,7 @@
 
 
-$(LIBRARY_FILE)			: $(Environment_OBJECTS_DEPS)
+$(LIBRARY_FILE)			: $(DIR_LIB) $(Environment_OBJECTS_DEPS)
 				@\
 				$(ECHO) "Archive            : $@";\
-				$(ECHO) "Archive            : $@";\
-				$(MKDIR) $(DIR_LIB);\
 				$(AR)  -r $@ $(Environment_OBJECTS_DEPS);\
 				$(RANLIB) $@;
Index: trunk/IPs/systemC/Environment/Makefile.Environment
===================================================================
--- trunk/IPs/systemC/Environment/Makefile.Environment	(revision 113)
+++ trunk/IPs/systemC/Environment/Makefile.Environment	(revision 114)
@@ -29,14 +29,8 @@
 				$(CXX) $(MORPHEO_L_FLAGS)      -o $@ $^ $(LIBNAME);
 
-$(DIR_OBJ)			:
+$(DIR_OBJ) $(DIR_BIN)		:
 				@\
 				$(ECHO) "Create directory   : $@";\
 				$(MKDIR) $@
-
-$(DIR_BIN)			:
-				@\
-				$(ECHO) "Create directory   : $@";\
-				$(MKDIR) $@
-
 
 exe				: all $(DIR_BIN)
Index: trunk/IPs/systemC/Environment/src/Environment_transition.cpp
===================================================================
--- trunk/IPs/systemC/Environment/src/Environment_transition.cpp	(revision 113)
+++ trunk/IPs/systemC/Environment/src/Environment_transition.cpp	(revision 114)
@@ -130,12 +130,10 @@
 		    if (bus_error == true)
 		      {
-			std::cout << "Icache : have a bus error" << std::endl
-				  << "  * entity     : " << i << std::endl
-				  << "  * port       : " << j << std::endl
-				  << std::hex
-				  << "  * req_addr   : " << address << std::endl
-				  << std::dec
-				  << "  * req_trdid  : " << context << std::endl
-				  << "  * req_pktid  : " << packet  << std::endl;
+                        _cout(ENVIRONMENT,"  * Icache : have a bus error\n");
+                        _cout(ENVIRONMENT,"    * entity     : %d\n",i);
+                        _cout(ENVIRONMENT,"    * port       : %d\n",j);
+                        _cout(ENVIRONMENT,"    * req_addr   : %x\n",address);
+                        _cout(ENVIRONMENT,"    * req_trdid  : %d\n",context);
+                        _cout(ENVIRONMENT,"    * req_pktid  : %d\n",packet );
 
 			// Write in instruction [0] the bad address (only 32bit ....)
@@ -211,5 +209,5 @@
 		data::Entity      entity    = component_data->entity(static_cast<uint32_t>(address),nb_bytes);
 
-		std::cout << entity << std::endl;
+// 		std::cout << entity << std::endl;
 		
 		// Test the type of the address
@@ -377,5 +375,5 @@
 				if (must_write == false)
 				  {
-				    std::cerr << "<Environment::transition> SIM2OS[0] is not accessible in Read" << std::endl;
+				    _cerr("<Environment::transition> SIM2OS[0] is not accessible in Read\n");
 				    bus_error = true;
 				  }
@@ -391,5 +389,5 @@
 				if (must_read == false)
 				  {
-				    std::cerr << "<Environment::transition> SIM2OS[1] is not accessible in Write" << std::endl;
+				    _cerr("<Environment::transition> SIM2OS[1] is not accessible in Write\n");
 				    bus_error = true;
 				  }
@@ -408,5 +406,5 @@
 				if (must_read == false)
 				  {
-				    std::cerr << "<Environment::transition> SIM2OS[2] is not accessible in Write" << std::endl;
+				    _cerr("<Environment::transition> SIM2OS[2] is not accessible in Write\n");
 				    bus_error = true;
 				  }
@@ -426,5 +424,5 @@
 				  if (must_write == false)
 				    {
-				      std::cerr << "<Environment::transition> SIM2OS[" << num_reg << "] is not accessible in Read" << std::endl;
+				      _cerr("<Environment::transition> SIM2OS[%d] is not accessible in Read\n",num_reg);
 				      bus_error = true;
 				    }
@@ -443,5 +441,5 @@
 		      default :
 			{
-			  std::cerr << "<Environment::transition> Dcache_req : Unknow type" << std::endl;
+			  _cerr("<Environment::transition> Dcache_req : Unknow type\n");
 			  exit(1);
 			  break;
@@ -482,12 +480,10 @@
 		    if (bus_error == true)
 		      {
-			std::cout << "Dcache : have a bus error" << std::endl
-				  << "  * entity     : " << i << std::endl
-				  << "  * port       : " << j << std::endl
-				  << std::hex
-				  << "  * req_addr   : 0x" << address << std::endl
-				  << std::dec
-				  << "  * req_trdid  : " << context << std::endl
-				  << "  * req_pktid  : " << packet  << std::endl;
+			_cout(ENVIRONMENT,"  * Dcache : have a bus error\n");
+			_cout(ENVIRONMENT,"    * entity     : %d\n",i);
+			_cout(ENVIRONMENT,"    * port       : %d\n",j);
+			_cout(ENVIRONMENT,"    * req_addr   : 0x%x\n",address);
+			_cout(ENVIRONMENT,"    * req_trdid  : %d\n",context);
+			_cout(ENVIRONMENT,"    * req_pktid  : %d\n",packet );
 
 			// Write in data [0] the bad address (32bit or 64bits    )
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 ${*};
