Fix the latch issue in Slice

Change-Id: Id66ab87a8894cd0833e5e60134af9cae386158cb
diff --git a/hdl/chisel/src/common/Slice.scala b/hdl/chisel/src/common/Slice.scala
index be09884..a53b4bc 100644
--- a/hdl/chisel/src/common/Slice.scala
+++ b/hdl/chisel/src/common/Slice.scala
@@ -68,11 +68,11 @@
 
     when (ovalid && full) {
       mem(0) := mem(1)
-    }
-
-    when (ivalid && !ovalid && empty ||
+    } .elsewhen (ivalid && !ovalid && empty ||
           ivalid && ovalid && !full) {
       mem(0) := io.in.bits
+    } .otherwise {
+      mem(0) := mem(0)
     }
 
     when (ivalid && !ovalid && !empty ||
@@ -93,6 +93,8 @@
 
     when (ivalid) {
       mem(0) := io.in.bits
+    } .otherwise {
+      mem(0) := mem(0)
     }
 
     io.value(0).valid := !empty