From 686f37aab33fb3fee1ef625d88a2cbd58c589715 Mon Sep 17 00:00:00 2001
From: Piotr Miedzik <P.Miedzik@gsi.de>
Date: Wed, 18 Nov 2015 11:07:09 +0100
Subject: [PATCH] wb_slave_adapter: fixed FSM

---
 modules/wishbone/wb_slave_adapter/wb_slave_adapter.vhd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/wishbone/wb_slave_adapter/wb_slave_adapter.vhd b/modules/wishbone/wb_slave_adapter/wb_slave_adapter.vhd
index 921ffe1c..5fc7b102 100644
--- a/modules/wishbone/wb_slave_adapter/wb_slave_adapter.vhd
+++ b/modules/wishbone/wb_slave_adapter/wb_slave_adapter.vhd
@@ -170,11 +170,11 @@ begin  -- rtl
         else
           case fsm_state is
             when IDLE => 
-              if slave_in.stb ='1' and master_in.stall='0' and master_in.ack='0' then
+              if slave_in.stb ='1' and slave_in.cyc = '1' and master_in.stall='0' and master_in.ack='0' then
                 fsm_state <= WAIT4ACK;
               end if;
             when WAIT4ACK => 
-              if master_in.ack='1' then 
+              if (slave_in.stb = '0' and slave_in.cyc = '0') or master_in.ack='1' then 
                 fsm_state <= IDLE;
               end if;
           end case;
-- 
GitLab