Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h	(revision 131)
@@ -338,4 +338,5 @@
 					       
 #ifdef SYSTEMC				       
+  public  : void        constant                  (void);
   public  : void        transition                (void);
   public  : void        genMoore                  (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit.cpp	(revision 131)
@@ -76,14 +76,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-        // Constant
-	for (uint32_t i=0; i<_param->_nb_front_end; i++)
-	  for (uint32_t j=0; j<_param->_nb_context [i]; j++)
-	    {
-              internal_EVENT_ACK [i][j] = 1;
-              PORT_WRITE(out_EVENT_ACK [i][j], internal_EVENT_ACK [i][j]);
-
-              internal_RETIRE_EVENT_VAL [i][j] = 1;
-              PORT_WRITE(out_RETIRE_EVENT_VAL [i][j], internal_RETIRE_EVENT_VAL [i][j]);
-            }
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Commit_unit,FUNCTION,_("<%s> Method - constant"),_name.c_str());
+
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Commit_unit,FUNCTION,_("<%s> Method - transition"),_name.c_str());
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_constant.cpp	(revision 131)
@@ -0,0 +1,46 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h"
+#include "Behavioural/include/Simulation.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace commit_unit {
+  
+#undef  FUNCTION
+#define FUNCTION "Commit_unit::constant"
+  void Commit_unit::constant (void)
+  {
+    log_begin(Commit_unit,FUNCTION);
+    log_function(Commit_unit,FUNCTION,_name.c_str());
+
+    for (uint32_t i=0; i<_param->_nb_front_end; i++)
+      for (uint32_t j=0; j<_param->_nb_context [i]; j++)
+        {
+          internal_EVENT_ACK [i][j] = 1;
+          PORT_WRITE(out_EVENT_ACK [i][j], internal_EVENT_ACK [i][j]);
+          
+          internal_RETIRE_EVENT_VAL [i][j] = 1;
+          PORT_WRITE(out_RETIRE_EVENT_VAL [i][j], internal_RETIRE_EVENT_VAL [i][j]);
+        }
+
+    log_end(Commit_unit,FUNCTION);
+  };
+
+}; // end namespace commit_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/include/Reexecute_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/include/Reexecute_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/include/Reexecute_unit.h	(revision 131)
@@ -199,4 +199,5 @@
   private : bool        must_reexecute            (Tspr_address_t address, info_t & info);
 
+  public  : void        constant                  (void);
   public  : void        transition                (void);
   public  : void        genMoore                  (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit.cpp	(revision 131)
@@ -75,19 +75,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-	// Constant
-	for (uint32_t i=0; i<_param->_nb_inst_reexecute; ++i)
-	  {
-	    if (_param->_have_port_load_queue_ptr)
-	    PORT_WRITE(out_REEXECUTE_LOAD_QUEUE_PTR_WRITE [i],0);
-	    PORT_WRITE(out_REEXECUTE_READ_RA              [i],0);
-	    PORT_WRITE(out_REEXECUTE_NUM_REG_RA           [i],0);
-	    PORT_WRITE(out_REEXECUTE_READ_RB              [i],0);
-	    PORT_WRITE(out_REEXECUTE_NUM_REG_RB           [i],0);
-	    PORT_WRITE(out_REEXECUTE_READ_RC              [i],0);
-	    PORT_WRITE(out_REEXECUTE_NUM_REG_RC           [i],0);
-	    PORT_WRITE(out_REEXECUTE_WRITE_RE             [i],0);
-	    PORT_WRITE(out_REEXECUTE_NUM_REG_RE           [i],0);
-	  }
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Reexecute_unit,FUNCTION,_("<%s> : Method - constant"),_name.c_str());
 
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Reexecute_unit,FUNCTION,_("<%s> : Method - transition"),_name.c_str());
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_constant.cpp	(revision 131)
@@ -0,0 +1,50 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/include/Reexecute_unit.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace reexecute_unit {
+
+
+#undef  FUNCTION
+#define FUNCTION "Reexecute_unit::constant"
+  void Reexecute_unit::constant (void)
+  {
+    log_begin(Reexecute_unit,FUNCTION);
+    log_function(Reexecute_unit,FUNCTION,_name.c_str());
+
+    for (uint32_t i=0; i<_param->_nb_inst_reexecute; ++i)
+      {
+        if (_param->_have_port_load_queue_ptr)
+        PORT_WRITE(out_REEXECUTE_LOAD_QUEUE_PTR_WRITE [i],0);
+        PORT_WRITE(out_REEXECUTE_READ_RA              [i],0);
+        PORT_WRITE(out_REEXECUTE_NUM_REG_RA           [i],0);
+        PORT_WRITE(out_REEXECUTE_READ_RB              [i],0);
+        PORT_WRITE(out_REEXECUTE_NUM_REG_RB           [i],0);
+        PORT_WRITE(out_REEXECUTE_READ_RC              [i],0);
+        PORT_WRITE(out_REEXECUTE_NUM_REG_RC           [i],0);
+        PORT_WRITE(out_REEXECUTE_WRITE_RE             [i],0);
+        PORT_WRITE(out_REEXECUTE_NUM_REG_RE           [i],0);
+      }
+
+    log_end(Reexecute_unit,FUNCTION);
+  };
+
+}; // end namespace reexecute_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_genMealy_commit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_genMealy_commit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_genMealy_commit.cpp	(revision 131)
@@ -131,4 +131,7 @@
     else
       {
+        for (uint32_t i=0; i<_param->_nb_bank; i++)
+          internal_QUEUE_PUSH [i] = 0;
+
 #ifdef STATISTICS
         for (uint32_t i=0; i<_param->_nb_inst_commit; ++i)
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_transition.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_transition.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Reexecute_unit/src/Reexecute_unit_transition.cpp	(revision 131)
@@ -49,5 +49,7 @@
 	      uint32_t y = internal_QUEUE_NUM_INST_EXECUTE [i];
 	      uint32_t z = internal_QUEUE_NUM_INST_COMMIT  [i];
-	      
+
+              log_printf(TRACE,Reexecute_unit,FUNCTION,"  * EXECUTE_LOOP[%d][%d] - COMMIT[%d]",x,y,z);
+
 	      entry->state        = STATE_SPR_ACCESS;
 	      entry->context_id   = (_param->_have_port_context_id  )?PORT_READ(in_EXECUTE_LOOP_CONTEXT_ID   [x][y]):0;
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h	(revision 131)
@@ -146,4 +146,5 @@
 					       
 #ifdef SYSTEMC				       
+  public  : void        constant                 (void);
   public  : void        transition                (void);
   public  : void        genMealy_insert           (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit.cpp	(revision 131)
@@ -74,13 +74,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-
-	// Constant : accepted already transaction
-        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
-          for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
-            {
-              internal_RETIRE_EVENT_ACK [i][j] = 1;
-              
-              PORT_WRITE(out_RETIRE_EVENT_ACK[i][j],internal_RETIRE_EVENT_ACK [i][j]);
-            }
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Load_Store_pointer_unit,FUNCTION,"Method - constant");
+
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Load_Store_pointer_unit,FUNCTION,"Method - transition");
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit_constant.cpp	(revision 131)
@@ -0,0 +1,46 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace rename_unit {
+namespace load_store_pointer_unit {
+
+
+#undef  FUNCTION
+#define FUNCTION "Load_Store_pointer_unit::constant"
+  void Load_Store_pointer_unit::constant (void)
+  {
+    log_begin(Load_Store_pointer_unit,FUNCTION);
+    log_function(Load_Store_pointer_unit,FUNCTION,_name.c_str());
+
+    for (uint32_t i=0; i<_param->_nb_front_end; ++i)
+      for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
+        {
+          internal_RETIRE_EVENT_ACK [i][j] = 1;
+          
+          PORT_WRITE(out_RETIRE_EVENT_ACK[i][j],internal_RETIRE_EVENT_ACK [i][j]);
+        }
+    
+    log_end(Load_Store_pointer_unit,FUNCTION);
+  };
+
+}; // end namespace load_store_pointer_unit
+}; // end namespace rename_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/include/Register_Address_Translation_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/include/Register_Address_Translation_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/include/Register_Address_Translation_unit.h	(revision 131)
@@ -169,4 +169,5 @@
 					       
 #ifdef SYSTEMC				       
+  public  : void        constant                  (void);
   public  : void        transition                (void);
   public  : void        genMealy_rename           (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit.cpp	(revision 131)
@@ -75,28 +75,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-	// Constant : accepted already transaction
-	for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
-	  {
-	    internal_RENAME_ACK [i] = 1;
-	    internal_INSERT_ACK [i] = 1;
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Register_Address_Translation_unit,FUNCTION,"Method - constant");
 
-	    PORT_WRITE(out_RENAME_ACK[i],internal_RENAME_ACK [i]);
-	    PORT_WRITE(out_INSERT_ACK[i],internal_INSERT_ACK [i]);
-	  }
-
-	for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
-	  {
-	    internal_RETIRE_ACK [i] = 1;
-
-	    PORT_WRITE(out_RETIRE_ACK[i],internal_RETIRE_ACK [i]);
-	  }
-
-        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
-          for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
-            {
-              internal_RETIRE_EVENT_ACK [i][j] = 1;
-              
-              PORT_WRITE(out_RETIRE_EVENT_ACK[i][j],internal_RETIRE_EVENT_ACK [i][j]);
-            }
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Register_Address_Translation_unit,FUNCTION,"Method - transition");
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit_constant.cpp	(revision 131)
@@ -0,0 +1,65 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/include/Register_Address_Translation_unit.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace rename_unit {
+namespace register_translation_unit {
+namespace register_address_translation_unit {
+
+
+#undef  FUNCTION
+#define FUNCTION "Register_Address_Translation_unit::constant"
+  void Register_Address_Translation_unit::constant (void)
+  {
+    log_begin(Register_Address_Translation_unit,FUNCTION);
+    log_function(Register_Address_Translation_unit,FUNCTION,_name.c_str());
+
+	// Constant : accepted already transaction
+	for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
+	  {
+	    internal_RENAME_ACK [i] = 1;
+	    internal_INSERT_ACK [i] = 1;
+
+	    PORT_WRITE(out_RENAME_ACK[i],internal_RENAME_ACK [i]);
+	    PORT_WRITE(out_INSERT_ACK[i],internal_INSERT_ACK [i]);
+	  }
+
+	for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
+	  {
+	    internal_RETIRE_ACK [i] = 1;
+
+	    PORT_WRITE(out_RETIRE_ACK[i],internal_RETIRE_ACK [i]);
+	  }
+
+        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
+          for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
+            {
+              internal_RETIRE_EVENT_ACK [i][j] = 1;
+              
+              PORT_WRITE(out_RETIRE_EVENT_ACK[i][j],internal_RETIRE_EVENT_ACK [i][j]);
+            }
+
+    log_end(Register_Address_Translation_unit,FUNCTION);
+  };
+
+}; // end namespace register_address_translation_unit
+}; // end namespace register_translation_unit
+}; // end namespace rename_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Stat_List_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Stat_List_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Stat_List_unit.h	(revision 131)
@@ -164,4 +164,5 @@
 					       
 #ifdef SYSTEMC				       
+  public  : void        constant                  (void);
   public  : void        transition                (void);
   public  : void        genMoore                  (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit.cpp	(revision 131)
@@ -74,15 +74,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-	// Constant
-	for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
-	  {
-	    internal_INSERT_ACK[i] = 1;
-	    PORT_WRITE(out_INSERT_ACK[i], internal_INSERT_ACK[i]);
-	  }
-	for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
-	  {
-	    internal_RETIRE_ACK[i] = 1;
-	    PORT_WRITE(out_RETIRE_ACK[i], internal_RETIRE_ACK[i]);
-	  }
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Stat_List_unit,FUNCTION,"Method - constant");
+
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Stat_List_unit,FUNCTION,"Method - transition");
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/src/Stat_List_unit_constant.cpp	(revision 131)
@@ -0,0 +1,51 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Stat_List_unit.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace rename_unit {
+namespace register_translation_unit {
+namespace stat_list_unit {
+
+
+#undef  FUNCTION
+#define FUNCTION "Stat_List_unit::constant"
+  void Stat_List_unit::constant (void)
+  {
+    log_begin(Stat_List_unit,FUNCTION);
+    log_function(Stat_List_unit,FUNCTION,_name.c_str());
+
+    for (uint32_t i=0; i<_param->_nb_inst_insert; i++)
+      {
+        internal_INSERT_ACK[i] = 1;
+        PORT_WRITE(out_INSERT_ACK[i], internal_INSERT_ACK[i]);
+      }
+    for (uint32_t i=0; i<_param->_nb_inst_retire; i++)
+      {
+        internal_RETIRE_ACK[i] = 1;
+        PORT_WRITE(out_RETIRE_ACK[i], internal_RETIRE_ACK[i]);
+      }
+
+    log_end(Stat_List_unit,FUNCTION);
+  };
+
+}; // end namespace stat_list_unit
+}; // end namespace register_translation_unit
+}; // end namespace rename_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/SelfTest/src/test.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/SelfTest/src/test.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/SelfTest/src/test.cpp	(revision 131)
@@ -61,4 +61,5 @@
   sc_signal<Toperation_t      > ***  in_RENAME_OPERATION                 ;
   sc_signal<Tcontrol_t        > ***  in_RENAME_NO_EXECUTE                ;
+  sc_signal<Tcontrol_t        > ***  in_RENAME_LAST_EVENT                ;
   sc_signal<Tcontrol_t        > ***  in_RENAME_IS_DELAY_SLOT             ;
   sc_signal<Taddress_t        > ***  in_RENAME_ADDRESS                   ;
@@ -87,4 +88,6 @@
   sc_signal<Toperation_t      >  ** out_ISSUE_OPERATION                  ;
   sc_signal<Tlsq_ptr_t        >  ** out_ISSUE_STORE_QUEUE_PTR_WRITE      ;
+  sc_signal<Tlsq_ptr_t        >  ** out_ISSUE_STORE_QUEUE_PTR_READ       ;
+  sc_signal<Tcontrol_t        >  ** out_ISSUE_STORE_QUEUE_EMPTY          ;
   sc_signal<Tlsq_ptr_t        >  ** out_ISSUE_LOAD_QUEUE_PTR_WRITE       ;
   sc_signal<Tcontrol_t        >  ** out_ISSUE_HAS_IMMEDIAT               ;
@@ -188,4 +191,5 @@
   ALLOC2_SC_SIGNAL( in_RENAME_OPERATION                 ," in_RENAME_OPERATION                 ",Toperation_t      ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   ALLOC2_SC_SIGNAL( in_RENAME_NO_EXECUTE                ," in_RENAME_NO_EXECUTE                ",Tcontrol_t        ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
+  ALLOC2_SC_SIGNAL( in_RENAME_LAST_EVENT                ," in_RENAME_LAST_EVENT                ",Tcontrol_t        ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   ALLOC2_SC_SIGNAL( in_RENAME_IS_DELAY_SLOT             ," in_RENAME_IS_DELAY_SLOT             ",Tcontrol_t        ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
 #ifdef DEBUG
@@ -216,4 +220,6 @@
   ALLOC1_SC_SIGNAL(out_ISSUE_OPERATION                  ,"out_ISSUE_OPERATION                  ",Toperation_t      ,_param->_nb_inst_issue);
   ALLOC1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_PTR_WRITE      ,"out_ISSUE_STORE_QUEUE_PTR_WRITE      ",Tlsq_ptr_t        ,_param->_nb_inst_issue);
+  ALLOC1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_PTR_READ       ,"out_ISSUE_STORE_QUEUE_PTR_READ       ",Tlsq_ptr_t        ,_param->_nb_inst_issue);
+  ALLOC1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_EMPTY          ,"out_ISSUE_STORE_QUEUE_EMPTY          ",Tcontrol_t        ,_param->_nb_inst_issue);
   ALLOC1_SC_SIGNAL(out_ISSUE_LOAD_QUEUE_PTR_WRITE       ,"out_ISSUE_LOAD_QUEUE_PTR_WRITE       ",Tlsq_ptr_t        ,_param->_nb_inst_issue);
   ALLOC1_SC_SIGNAL(out_ISSUE_HAS_IMMEDIAT               ,"out_ISSUE_HAS_IMMEDIAT               ",Tcontrol_t        ,_param->_nb_inst_issue);
@@ -329,4 +335,5 @@
   INSTANCE2_SC_SIGNAL(_OOO_Engine, in_RENAME_OPERATION                 ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   INSTANCE2_SC_SIGNAL(_OOO_Engine, in_RENAME_NO_EXECUTE                ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
+  INSTANCE2_SC_SIGNAL(_OOO_Engine, in_RENAME_LAST_EVENT                ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   INSTANCE2_SC_SIGNAL(_OOO_Engine, in_RENAME_IS_DELAY_SLOT             ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
 #ifdef DEBUG
@@ -360,4 +367,6 @@
   INSTANCE1_SC_SIGNAL(_OOO_Engine,out_ISSUE_OPERATION                  ,_param->_nb_inst_issue);
   INSTANCE1_SC_SIGNAL(_OOO_Engine,out_ISSUE_STORE_QUEUE_PTR_WRITE      ,_param->_nb_inst_issue);
+  INSTANCE1_SC_SIGNAL(_OOO_Engine,out_ISSUE_STORE_QUEUE_PTR_READ       ,_param->_nb_inst_issue);
+  INSTANCE1_SC_SIGNAL(_OOO_Engine,out_ISSUE_STORE_QUEUE_EMPTY          ,_param->_nb_inst_issue);
   if (_param->_have_port_load_queue_ptr)
   INSTANCE1_SC_SIGNAL(_OOO_Engine,out_ISSUE_LOAD_QUEUE_PTR_WRITE       ,_param->_nb_inst_issue);
@@ -517,4 +526,5 @@
   DELETE2_SC_SIGNAL( in_RENAME_OPERATION                 ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   DELETE2_SC_SIGNAL( in_RENAME_NO_EXECUTE                ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
+  DELETE2_SC_SIGNAL( in_RENAME_LAST_EVENT                ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
   DELETE2_SC_SIGNAL( in_RENAME_IS_DELAY_SLOT             ,_param->_nb_front_end,_param->_nb_inst_decod[it1]);
 #ifdef DEBUG
@@ -545,4 +555,6 @@
   DELETE1_SC_SIGNAL(out_ISSUE_OPERATION                  ,_param->_nb_inst_issue);
   DELETE1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_PTR_WRITE      ,_param->_nb_inst_issue);
+  DELETE1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_PTR_READ       ,_param->_nb_inst_issue);
+  DELETE1_SC_SIGNAL(out_ISSUE_STORE_QUEUE_EMPTY          ,_param->_nb_inst_issue);
   DELETE1_SC_SIGNAL(out_ISSUE_LOAD_QUEUE_PTR_WRITE       ,_param->_nb_inst_issue);
   DELETE1_SC_SIGNAL(out_ISSUE_HAS_IMMEDIAT               ,_param->_nb_inst_issue);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/include/Special_Register_unit.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/include/Special_Register_unit.h	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/include/Special_Register_unit.h	(revision 131)
@@ -139,4 +139,5 @@
 					       
 #ifdef SYSTEMC				       
+  public  : void        constant                  (void);
   public  : void        transition                (void);
   public  : void        genMoore                  (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit.cpp	(revision 129)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit.cpp	(revision 131)
@@ -75,19 +75,16 @@
     if (usage_is_set(_usage,USE_SYSTEMC))
       {
-	// Constant
-	for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
-	  {
-	    internal_SPR_ACCESS_ACK [i] = 1;
-	    PORT_WRITE(out_SPR_ACCESS_ACK [i], internal_SPR_ACCESS_ACK [i]);
-	  }
+#ifdef SYSTEMCASS_SPECIFIC
+        constant();
+#else
+	log_printf(INFO,Special_Register_unit,FUNCTION,_("<%s> : Method - constant"),_name.c_str());
 
-	for (uint32_t i=0; i<_param->_nb_front_end; i++)
-	  for (uint32_t j=0; j<_param->_nb_context[i]; j++)
-	    {
-	      internal_SPR_COMMIT_ACK [i][j] = 1;
-	      internal_SPR_EVENT_ACK  [i][j] = 1;
-	      PORT_WRITE(out_SPR_COMMIT_ACK [i][j], internal_SPR_COMMIT_ACK [i][j]);
-	      PORT_WRITE(out_SPR_EVENT_ACK  [i][j], internal_SPR_EVENT_ACK  [i][j]);
-	    }
+	SC_METHOD (constant);
+// 	dont_initialize ();
+	
+# ifdef SYSTEMCASS_SPECIFIC
+	// List dependency information
+# endif    
+#endif
 
 	log_printf(INFO,Special_Register_unit,FUNCTION,_("<%s> : Method - transition"),_name.c_str());
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit_constant.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit_constant.cpp	(revision 131)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit_constant.cpp	(revision 131)
@@ -0,0 +1,51 @@
+#ifdef SYSTEMC
+/*
+ * $Id$
+ *
+ * [ Description ]
+ * 
+ */
+
+#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/include/Special_Register_unit.h"
+
+namespace morpheo                    {
+namespace behavioural {
+namespace core {
+namespace multi_ooo_engine {
+namespace ooo_engine {
+namespace special_register_unit {
+
+
+#undef  FUNCTION
+#define FUNCTION "Special_Register_unit::constant"
+  void Special_Register_unit::constant (void)
+  {
+    log_begin(Special_Register_unit,FUNCTION);
+    log_function(Special_Register_unit,FUNCTION,_name.c_str());
+
+    for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
+      {
+        internal_SPR_ACCESS_ACK [i] = 1;
+        PORT_WRITE(out_SPR_ACCESS_ACK [i], internal_SPR_ACCESS_ACK [i]);
+      }
+    
+    for (uint32_t i=0; i<_param->_nb_front_end; i++)
+      for (uint32_t j=0; j<_param->_nb_context[i]; j++)
+        {
+          internal_SPR_COMMIT_ACK [i][j] = 1;
+          internal_SPR_EVENT_ACK  [i][j] = 1;
+          PORT_WRITE(out_SPR_COMMIT_ACK [i][j], internal_SPR_COMMIT_ACK [i][j]);
+          PORT_WRITE(out_SPR_EVENT_ACK  [i][j], internal_SPR_EVENT_ACK  [i][j]);
+        }
+    
+    log_end(Special_Register_unit,FUNCTION);
+  };
+
+}; // end namespace special_register_unit
+}; // end namespace ooo_engine
+}; // end namespace multi_ooo_engine
+}; // end namespace core
+
+}; // end namespace behavioural
+}; // end namespace morpheo              
+#endif
