Index: /trunk/modules/vci_cc_vcache_wrapper_v4/caba/source/src/vci_cc_vcache_wrapper_v4.cpp
===================================================================
--- /trunk/modules/vci_cc_vcache_wrapper_v4/caba/source/src/vci_cc_vcache_wrapper_v4.cpp	(revision 198)
+++ /trunk/modules/vci_cc_vcache_wrapper_v4/caba/source/src/vci_cc_vcache_wrapper_v4.cpp	(revision 199)
@@ -3267,9 +3267,20 @@
     }
     ////////////////////////
-    case DCACHE_TLB_SC_WAIT:		// wait response to SC transaction from RSP FSM
+    case DCACHE_TLB_SC_WAIT:		    // wait response to SC transaction from RSP FSM
                                         // we consume the response, and exit the sub-fsm.
                                         // we don't analyse the response, because
                                         // we don't care if the L/R bit update is not done
-    {
+                                        // we must take the coherence requests because
+                                        // there is a risk of dead-lock
+
+    {
+        // external coherence request
+        if ( r_tgt_dcache_req )
+        {
+            r_dcache_fsm = DCACHE_CC_CHECK;
+            r_dcache_fsm_save = r_dcache_fsm;
+            break;
+        }
+
         if ( not r_dcache_vci_sc_req.read() ) 	// response available
         {
