Skip to content

Commit 9997926

Browse files
committed
TMP HACK [rtl][difftest]: relax AXI max dataWidth to 4096
1 parent 86da292 commit 9997926

File tree

4 files changed

+11
-11
lines changed

4 files changed

+11
-11
lines changed

dependencies/chisel-interface/axi4/src/axi4/bundle/ChiselType.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class AW(val parameter: AXI4BundleParameter) extends AXI4ChiselBundle {
1111
val id: UInt = UInt(idWidth.W)
1212
val addr: UInt = UInt(addrWidth.W)
1313
val len: UInt = UInt(8.W)
14-
val size: UInt = UInt(3.W)
14+
val size: UInt = UInt(4.W)
1515
val burst: UInt = UInt(2.W)
1616
val lock: Bool = Bool()
1717
val cache: UInt = UInt(4.W)
@@ -39,7 +39,7 @@ class AR(val parameter: AXI4BundleParameter) extends AXI4ChiselBundle {
3939
val id: UInt = UInt(idWidth.W)
4040
val addr: UInt = UInt(addrWidth.W)
4141
val len: UInt = UInt(8.W)
42-
val size: UInt = UInt(3.W)
42+
val size: UInt = UInt(4.W)
4343
val burst: UInt = UInt(2.W)
4444
val lock: Bool = Bool()
4545
val cache: UInt = UInt(4.W)

dependencies/chisel-interface/axi4/src/axi4/bundle/VerilogType.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ trait AWChannel extends AXI4VerilogBundle {
4343
/** Size, the number of bytes in each data transfer in a write transaction.
4444
* See IHI0022H A3.4.1
4545
*/
46-
val AWSIZE: UInt = UInt(3.W)
46+
val AWSIZE: UInt = UInt(4.W)
4747

4848
/** Burst type, indicates how address changes between each transfer in a write
4949
* transaction.
@@ -147,7 +147,7 @@ trait ARChannel extends AXI4VerilogBundle {
147147
val ARLEN: UInt = UInt(8.W)
148148

149149
/** Size, the number of bytes in each data transfer in a read transaction. */
150-
val ARSIZE: UInt = UInt(3.W)
150+
val ARSIZE: UInt = UInt(4.W)
151151

152152
/** Burst type, indicates how address changes between each transfer in a read
153153
* transaction.

difftest/dpi_t1rocketemu/src/dpi.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ unsafe extern "C" fn axi_push_W(
132132
reset: u8,
133133
channel_id: u64,
134134
data_width: u64,
135-
wdata: InBV<'_, 1024>,
136-
wstrb: InBV<'_, 128>,
135+
wdata: InBV<'_, 4096>,
136+
wstrb: InBV<'_, 512>,
137137
wlast: u8,
138138

139139
mut ready: Out<'_, bool>,
@@ -236,7 +236,7 @@ struct RetAxiPopR {
236236
rlast: u8,
237237
rid: u16,
238238
ruser: u32,
239-
rdata: [u8; 1024 / 8],
239+
rdata: [u8; 4096 / 8],
240240
}
241241

242242
#[unsafe(no_mangle)]

t1rocketemu/src/AXI4SlaveAgent.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,8 @@ class AXI4SlaveAgent(parameter: AXI4SlaveAgentParameter)
151151
io.reset.asTypeOf(UInt(8.W)),
152152
io.channelId,
153153
parameter.axiParameter.dataWidth.U(64.W),
154-
widen(wqueue.io.deq.bits.data, 1024),
155-
widen(wqueue.io.deq.bits.strb, 128),
154+
widen(wqueue.io.deq.bits.data, 4096),
155+
widen(wqueue.io.deq.bits.strb, 512),
156156
wqueue.io.deq.bits.last.asTypeOf(UInt(8.W))
157157
)
158158
wqueue.io.deq.ready := wRet
@@ -204,9 +204,9 @@ class AXI4SlaveAgent(parameter: AXI4SlaveAgentParameter)
204204
)
205205
arqueue.io.deq.ready := arRet
206206

207-
require(parameter.axiParameter.dataWidth <= 1024)
207+
require(parameter.axiParameter.dataWidth <= 4096) // Quick fix for DLEN 4096
208208
class RBundle extends Bundle {
209-
val data = UInt(1024.W)
209+
val data = UInt(4096.W)
210210
val user = UInt(32.W)
211211
val id = UInt(16.W)
212212
val last = UInt(8.W)

0 commit comments

Comments
 (0)