Skip to content

Commit 27e018a

Browse files
committed
Merge branch 'tc-l3' into dev
2 parents 236afeb + 797c5a3 commit 27e018a

File tree

16 files changed

+238
-364
lines changed

16 files changed

+238
-364
lines changed

rtl/.scalafmt.conf

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,6 @@ align.tokens.add = [
2424
},
2525
{
2626
code = "="
27-
},
28-
{
29-
code = "&&"
30-
},
31-
{
32-
code = "||"
33-
},
34-
{
35-
code = "==="
3627
}
3728
]
3829

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package treecorel2
2+
3+
import chisel3._
4+
import chisel3.util._
5+
6+
trait AXI4Config extends IOConfig {
7+
val AxiProtLen = 3
8+
val AxiIdLen = 4
9+
val AxiUserLen = 1
10+
val AxiSizeLen = 3
11+
val AxiLen = 8
12+
val AxiStrb = 8
13+
val AxiBurstLen = 2
14+
val AxiCacheLen = 4
15+
val AxiQosLen = 4
16+
val AxiRegionLen = 4
17+
val AxiRespLen = 2
18+
}
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package treecorel2
2+
3+
import chisel3._
4+
import chisel3.util._
5+
6+
trait IOConfig {
7+
val XLen = 64
8+
val InstLen = 32
9+
val RegfileLen = 5
10+
val RegfileNum = 1 << RegfileLen
11+
val ISALen = 6
12+
// branch prediction
13+
val GHRLen = 5
14+
val PHTSize = 1 << GHRLen
15+
val BTBIdxLen = 5
16+
val BTBPcLen = XLen - BTBIdxLen
17+
val BTBTgtLen = XLen
18+
val BTBSize = 1 << BTBIdxLen
19+
}
20+
21+
trait InstConfig extends IOConfig {
22+
val SoCEna = true
23+
val CacheEna = false
24+
25+
// cache
26+
val NWay = 4
27+
val NBank = 4
28+
val NSet = 32
29+
val CacheLineSize = XLen * NBank
30+
val ICacheSize = NWay * NSet * CacheLineSize
31+
val DCacheSize = NWay * NSet * CacheLineSize
32+
33+
// clint
34+
val ClintBaseAddr = 0x02000000.U(XLen.W)
35+
val ClintBoundAddr = 0x0200bfff.U(XLen.W)
36+
val MSipOffset = 0x0.U(XLen.W)
37+
val MTimeOffset = 0xbff8.U(XLen.W)
38+
val MTimeCmpOffset = 0x4000.U(XLen.W)
39+
}

rtl/tc_l3/src/main/scala/core/Axi.scala

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

rtl/tc_l3/src/main/scala/core/CSR.scala

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -227,13 +227,13 @@ class CSR(implicit val p: Parameters) extends Module {
227227
io.out := Lookup(csr_addr, 0.U, csrFile).asUInt
228228

229229
val privValid = csr_addr(9, 8) <= PRV
230-
val privInst = io.cmd === CSR.P
231-
val isEcall = privInst && !csr_addr(0) && !csr_addr(8)
232-
val isEbreak = privInst && csr_addr(0) && !csr_addr(8)
233-
val isEret = privInst && !csr_addr(0) && csr_addr(8)
230+
val privInst = io.cmd === CSR.P
231+
val isEcall = privInst && !csr_addr(0) && !csr_addr(8)
232+
val isEbreak = privInst && csr_addr(0) && !csr_addr(8)
233+
val isEret = privInst && !csr_addr(0) && csr_addr(8)
234234
val csrValid = csrFile.map(_._1 === csr_addr).reduce(_ || _)
235-
val csrRO = csr_addr(11, 10).andR || csr_addr === CSR.mtvec || csr_addr === CSR.mtdeleg
236-
val wen = io.cmd === CSR.W || io.cmd(1) && rs1_addr.orR
235+
val csrRO = csr_addr(11, 10).andR || csr_addr === CSR.mtvec || csr_addr === CSR.mtdeleg
236+
val wen = io.cmd === CSR.W || io.cmd(1) && rs1_addr.orR
237237
val wdata = MuxLookup(
238238
io.cmd,
239239
0.U,
@@ -264,10 +264,10 @@ class CSR(implicit val p: Parameters) extends Module {
264264
)
265265

266266
io.expt := io.illegal || iaddrInvalid || laddrInvalid || saddrInvalid ||
267-
io.cmd(1, 0).orR && (!csrValid || !privValid) || wen && csrRO ||
268-
(privInst && !privValid) || isEcall || isEbreak
269-
io.evec := mtvec + (PRV << 6)
270-
io.epc := mepc
267+
io.cmd(1, 0).orR && (!csrValid || !privValid) || wen && csrRO ||
268+
(privInst && !privValid) || isEcall || isEbreak
269+
io.evec := mtvec + (PRV << 6)
270+
io.epc := mepc
271271

272272
// Counters
273273
time := time + 1.U

0 commit comments

Comments
 (0)