Skip to content

Commit 361e6d5

Browse files
* fix for chipsalliance/rocket-chip#2967 * decode: fix width of BitPat(?) in decode logic Co-authored-by: Yinan Xu <xuyinan@ict.ac.cn>
1 parent bccc552 commit 361e6d5

File tree

8 files changed

+82
-979
lines changed

8 files changed

+82
-979
lines changed

rocket-chip

Submodule rocket-chip updated 112 files

src/main/scala/device/RocketDebugWrapper.scala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,11 @@ import freechips.rocketchip.config.{Field, Parameters}
2525
import freechips.rocketchip.subsystem._
2626
import freechips.rocketchip.amba.apb._
2727
import freechips.rocketchip.diplomacy._
28-
import freechips.rocketchip.diplomaticobjectmodel.logicaltree.LogicalModuleTree
2928
import freechips.rocketchip.jtag._
3029
import freechips.rocketchip.util._
3130
import freechips.rocketchip.prci.{ClockSinkNode, ClockSinkParameters}
3231
import freechips.rocketchip.tilelink._
3332
import freechips.rocketchip.devices.debug.{DebugCustomXbar, DebugIO, DebugTransportModuleJTAG, JtagDTMConfig, PSDIO, ResetCtrlIO, SystemJTAGIO, TLDebugModule}
34-
import freechips.rocketchip.diplomaticobjectmodel.logicaltree.GenericLogicalTreeNode
3533
import freechips.rocketchip.devices.debug._
3634

3735
// this file uses code from rocketchip Periphery.scala
@@ -50,8 +48,6 @@ class DebugModule(numCores: Int)(implicit p: Parameters) extends LazyModule {
5048
// debug.dmInner.dmInner.sb2tlOpt.foreach { sb2tl =>
5149
// l2xbar := TLBuffer() := TLWidthWidget(1) := sb2tl.node
5250
// }
53-
val fakeTreeNode = new GenericLogicalTreeNode
54-
LogicalModuleTree.add(fakeTreeNode, debug.logicalTreeNode)
5551

5652
lazy val module = new LazyRawModuleImp(this) {
5753
val io = IO(new Bundle{

src/main/scala/xiangshan/XSTile.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import chisel3._
44
import chipsalliance.rocketchip.config.{Config, Parameters}
55
import chisel3.util.{Valid, ValidIO}
66
import freechips.rocketchip.diplomacy.{BundleBridgeSink, LazyModule, LazyModuleImp, LazyModuleImpLike}
7-
import freechips.rocketchip.diplomaticobjectmodel.logicaltree.GenericLogicalTreeNode
87
import freechips.rocketchip.interrupts.{IntSinkNode, IntSinkPortParameters, IntSinkPortSimple}
98
import freechips.rocketchip.tile.{BusErrorUnit, BusErrorUnitParams, BusErrors}
109
import freechips.rocketchip.tilelink.{BankBinder, TLBuffer, TLIdentityNode, TLNode, TLTempNode, TLXbar}
@@ -43,7 +42,7 @@ class XSTileMisc()(implicit p: Parameters) extends LazyModule
4342
val mmio_port = TLIdentityNode() // to L3
4443
val memory_port = TLIdentityNode()
4544
val beu = LazyModule(new BusErrorUnit(
46-
new XSL1BusErrors(), BusErrorUnitParams(0x38010000), new GenericLogicalTreeNode
45+
new XSL1BusErrors(), BusErrorUnitParams(0x38010000)
4746
))
4847
val busPMU = BusPerfMonitor(enable = !debugOpts.FPGAPlatform)
4948
val l1d_logger = TLLogger(s"L2_L1D_${coreParams.HartId}", !debugOpts.FPGAPlatform)

src/main/scala/xiangshan/backend/decode/DecodeUnit.scala

Lines changed: 75 additions & 73 deletions
Large diffs are not rendered by default.

src/main/scala/xiangshan/backend/decode/FPDecoder.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import chipsalliance.rocketchip.config.Parameters
2020
import chisel3._
2121
import chisel3.util._
2222
import freechips.rocketchip.rocket.DecodeLogic
23-
import xiangshan.backend.decode.Instructions._
23+
import freechips.rocketchip.rocket.Instructions._
2424
import xiangshan.backend.fu.fpu.FPU
2525
import xiangshan.{FPUCtrlSignals, XSModule}
2626

src/main/scala/xiangshan/backend/decode/FusionDecoder.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ package xiangshan.backend.decode
1818

1919
import chipsalliance.rocketchip.config.Parameters
2020
import chisel3._
21-
import chisel3.util.BitPat.bitPatToUInt
2221
import chisel3.util._
23-
import xiangshan._
22+
import freechips.rocketchip.rocket.Instructions
2423
import utils._
24+
import xiangshan._
2525

2626
abstract class BaseFusionCase(pair: Seq[Valid[UInt]])(implicit p: Parameters)
2727
extends DecodeUnitConstants {
@@ -67,7 +67,7 @@ class FusedAdduw(pair: Seq[Valid[UInt]])(implicit p: Parameters) extends BaseFus
6767

6868
def isValid: Bool = inst1Cond && inst2Cond && withSameDest && destToRs1
6969
def target: CtrlSignals = {
70-
val cs = getBaseCS(Instructions.ADDU_W)
70+
val cs = getBaseCS(Instructions.ADD_UW)
7171
cs.lsrc(0) := instr1Rs1
7272
cs.lsrc(1) := 0.U
7373
cs

src/main/scala/xiangshan/backend/decode/Instructions.scala

Lines changed: 0 additions & 895 deletions
This file was deleted.

src/main/scala/xiangshan/package.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ package object xiangshan {
118118

119119
object FuOpType {
120120
def apply() = UInt(7.W)
121+
def X = BitPat("b???????")
121122
}
122123

123124
object CommitType {

0 commit comments

Comments
 (0)