Skip to content

Commit 6068db1

Browse files
committed
fix(msi_vld_req): fix msi timing error
1 parent bd3a7ea commit 6068db1

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/main/scala/IMSIC.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -858,14 +858,14 @@ class AXIRegIMSIC(
858858
}.otherwise {
859859
msi_vld_ack_soc := msi_vld_ack_cpu
860860
}
861-
fifo_sync.io.deq.ready := ~msi_vld_req
861+
fifo_sync.io.deq.ready := ~(msi_vld_req | msi_vld_ack_soc)
862862
// generate the msi_vld_req: high if ~empty,low when msi_vld_ack_soc
863863
msiio.vld_req := msi_vld_req
864864
val msi_vld_ack_soc_1f = RegNext(msi_vld_ack_soc)
865865
val msi_vld_ack_soc_ris = msi_vld_ack_soc & (~msi_vld_ack_soc_1f)
866866
// val fifo_empty = ~fifo_sync.io.deq.valid
867867
// msi_vld_req : high when fifo empty is false, low when ack is high. and io.deq.valid := ~empty
868-
when(msi_vld_ack_soc_ris) {
868+
when(msi_vld_ack_soc) {
869869
msi_vld_req := false.B
870870
}.elsewhen(fifo_sync.io.deq.valid === true.B) {
871871
msi_vld_req := true.B

0 commit comments

Comments
 (0)