From 9ac5f99e1f2459a3ab40e43d606b7ba032f1ab38 Mon Sep 17 00:00:00 2001 From: Liphen Date: Sat, 20 Jan 2024 16:35:38 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E8=BF=87=E4=BA=86rv=E8=99=9A=E5=AD=98?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=EF=BC=8C=E5=BC=80=E5=A7=8B=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?os=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chisel/difftest | 2 +- chisel/playground/src/CpuConfig.scala | 2 +- .../playground/src/pipeline/writeback/WriteBackUnit.scala | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/chisel/difftest b/chisel/difftest index ef0f840..718bf7d 160000 --- a/chisel/difftest +++ b/chisel/difftest @@ -1 +1 @@ -Subproject commit ef0f84099590846759803b50a8fa0cf256470361 +Subproject commit 718bf7d977b13729ff0b15a96415f65ac848183e diff --git a/chisel/playground/src/CpuConfig.scala b/chisel/playground/src/CpuConfig.scala index d9803d8..36031aa 100644 --- a/chisel/playground/src/CpuConfig.scala +++ b/chisel/playground/src/CpuConfig.scala @@ -14,7 +14,7 @@ case class CpuConfig( val hasSMode: Boolean = true, // 是否有S模式 val hasUMode: Boolean = true, // 是否有U模式 // 模块配置 - val hasCommitBuffer: Boolean = true, // 是否有提交缓存 + val hasCommitBuffer: Boolean = false, // 是否有提交缓存 val decoderNum: Int = 2, // 译码级最大解码的指令数,也是同时访问寄存器的指令数 val commitNum: Int = 2, // 同时提交的指令数, 也是最大发射的指令数 val instFetchNum: Int = 2, // iCache取到的指令数量,最大取值为4 diff --git a/chisel/playground/src/pipeline/writeback/WriteBackUnit.scala b/chisel/playground/src/pipeline/writeback/WriteBackUnit.scala index cb9c73b..1ea56e2 100644 --- a/chisel/playground/src/pipeline/writeback/WriteBackUnit.scala +++ b/chisel/playground/src/pipeline/writeback/WriteBackUnit.scala @@ -53,15 +53,15 @@ class WriteBackUnit(implicit val cpuConfig: CpuConfig) extends Module { clock.asBool, io.writeBackStage.inst0.pc, Mux( - HasExcInt(io.writeBackStage.inst0.ex), + !(io.writeBackStage.inst1.info.valid && io.ctrl.allow_to_go), 0.U, io.writeBackStage.inst1.pc ) ) io.debug.wb_rf_wen := Mux( clock.asBool, - Fill(4, io.regfile(0).wen), - Fill(4, io.regfile(1).wen) + io.writeBackStage.inst0.info.valid && io.ctrl.allow_to_go, + io.writeBackStage.inst1.info.valid && io.ctrl.allow_to_go ) io.debug.wb_rf_wnum := Mux( clock.asBool,