Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_bypass.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_bypass.cpp	(revision 118)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_bypass.cpp	(revision 123)
@@ -26,4 +26,6 @@
     log_function(Write_queue,FUNCTION,_name.c_str());
 
+    if (PORT_READ(in_NRESET))
+      {
     Tcontrol_t val = PORT_READ(in_WRITE_QUEUE_IN_VAL);
 
@@ -36,6 +38,10 @@
     PORT_WRITE(out_BYPASS_WRITE_SPR_NUM_REG   [0], PORT_READ(in_WRITE_QUEUE_IN_NUM_REG_RE   )); // RE
     PORT_WRITE(out_BYPASS_WRITE_SPR_DATA      [0], PORT_READ(in_WRITE_QUEUE_IN_DATA_RE      ));
-    
-    // -----[ Interface "bypass_write" ]----------------------------------
+      }
+    else
+      {
+    PORT_WRITE(out_BYPASS_WRITE_GPR_VAL       [0], 0);
+    PORT_WRITE(out_BYPASS_WRITE_SPR_VAL       [0], 0);
+      }
 
     log_end(Write_queue,FUNCTION);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_write.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_write.cpp	(revision 118)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMealy_write.cpp	(revision 123)
@@ -26,4 +26,6 @@
     log_function(Write_queue,FUNCTION,_name.c_str());
     
+    if (PORT_READ(in_NRESET))
+      {
     // -----[ Interface "bypass_write" ]----------------------------------
     // in genMoore
@@ -91,4 +93,11 @@
 	}
     }
+      }
+    else
+      {
+        internal_WRITE_QUEUE_OUT_VAL = 0;
+      }
+    
+    PORT_WRITE(out_WRITE_QUEUE_OUT_VAL, internal_WRITE_QUEUE_OUT_VAL);
 
     log_end(Write_queue,FUNCTION);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMoore.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMoore.cpp	(revision 118)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_genMoore.cpp	(revision 123)
@@ -26,4 +26,6 @@
     log_function(Write_queue,FUNCTION,_name.c_str());
     
+    if (PORT_READ(in_NRESET))
+      {
     // -----[ Interface "bypass_write" ]----------------------------------
     {
@@ -71,6 +73,4 @@
     {
       internal_WRITE_QUEUE_IN_ACK = _queue->size() < _param->_size_queue;
-      
-      PORT_WRITE(out_WRITE_QUEUE_IN_ACK, internal_WRITE_QUEUE_IN_ACK);
     }
 
@@ -85,7 +85,4 @@
       internal_SPR_WRITE_VAL = val and _queue->front()->_write_re;
       
-      PORT_WRITE(out_GPR_WRITE_VAL [0], internal_GPR_WRITE_VAL);
-      PORT_WRITE(out_SPR_WRITE_VAL [0], internal_SPR_WRITE_VAL);
-
       if (val)
 	{
@@ -110,6 +107,4 @@
                                       );
       
-      PORT_WRITE(out_WRITE_QUEUE_OUT_VAL, internal_WRITE_QUEUE_OUT_VAL);
-
       if (internal_WRITE_QUEUE_OUT_VAL)
 	{
@@ -133,4 +128,22 @@
 
       } // end WRITE_QUEUE_SCHEME_MOORE
+      }
+    else
+      {
+        // Reset
+        internal_WRITE_QUEUE_IN_ACK  = 0;
+        internal_WRITE_QUEUE_OUT_VAL = 0;
+        internal_GPR_WRITE_VAL = 0;
+        internal_SPR_WRITE_VAL = 0;
+
+      }
+
+    // Write output
+    PORT_WRITE(out_WRITE_QUEUE_IN_ACK , internal_WRITE_QUEUE_IN_ACK);
+    PORT_WRITE(out_WRITE_QUEUE_OUT_VAL, internal_WRITE_QUEUE_OUT_VAL);
+
+    PORT_WRITE(out_GPR_WRITE_VAL [0]  , internal_GPR_WRITE_VAL);
+    PORT_WRITE(out_SPR_WRITE_VAL [0]  , internal_SPR_WRITE_VAL);
+
     log_end(Write_queue,FUNCTION);
   };
