From 0b9b706e81b491c966224b08656f81f1a02eaf2b Mon Sep 17 00:00:00 2001 From: Luke Wren Date: Tue, 23 Nov 2021 22:01:14 +0000 Subject: [PATCH] Safer logic for load/store blocked by preceding WFI --- hdl/hazard3_core.v | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hdl/hazard3_core.v b/hdl/hazard3_core.v index 3b1cb4c..c0d0387 100644 --- a/hdl/hazard3_core.v +++ b/hdl/hazard3_core.v @@ -373,7 +373,12 @@ always @ (*) begin MEMOP_SH: bus_hsize_d = HSIZE_HWORD; default: bus_hsize_d = HSIZE_BYTE; endcase - bus_aph_req_d = x_memop_vld && !(x_stall_raw || x_unaligned_addr || m_trap_enter_soon); + bus_aph_req_d = x_memop_vld && !( + x_stall_raw || + x_unaligned_addr || + m_trap_enter_soon || + (xm_wfi && !m_wfi_stall_clear) // FIXME will cause a timing issue, better to stall til *after* clear + ); end // Multiply/divide