From 3b330cf8d7be7085b5ede2d19aa5b1dac4b69d08 Mon Sep 17 00:00:00 2001 From: Liphen Date: Sat, 20 Jan 2024 14:32:18 +0800 Subject: [PATCH] =?UTF-8?q?fix(cache):=20=E4=BF=AE=E5=A4=8Dfault=E4=BF=A1?= =?UTF-8?q?=E5=8F=B7=E7=9A=84wait=E9=98=B6=E6=AE=B5=E5=A4=8D=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chisel/playground/src/cache/DCache.scala | 2 ++ chisel/playground/src/cache/ICache.scala | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/chisel/playground/src/cache/DCache.scala b/chisel/playground/src/cache/DCache.scala index daef245..bc97f53 100644 --- a/chisel/playground/src/cache/DCache.scala +++ b/chisel/playground/src/cache/DCache.scala @@ -533,6 +533,8 @@ class DCache(cacheConfig: CacheConfig)(implicit cpuConfig: CpuConfig) extends Mo ptw_scratch.dcache_wait := true.B when(io.cpu.complete_single_request) { ptw_scratch.dcache_wait := false.B + access_fault := false.B // 清除access_fault + page_fault := false.B // 清除page_fault state := s_idle } } diff --git a/chisel/playground/src/cache/ICache.scala b/chisel/playground/src/cache/ICache.scala index 1f7b694..6aac935 100644 --- a/chisel/playground/src/cache/ICache.scala +++ b/chisel/playground/src/cache/ICache.scala @@ -307,7 +307,9 @@ class ICache(cacheConfig: CacheConfig)(implicit cpuConfig: CpuConfig) extends Mo is(s_wait) { // 等待流水线的allow_to_go信号,防止多次发出读请求 when(io.cpu.complete_single_request) { - state := s_idle + access_fault := false.B // 清除access_fault + page_fault := false.B // 清除page_fault + state := s_idle (0 until instFetchNum).foreach(i => rdata_in_wait(i).valid := false.B) } }