Parameters.scala (03c81005a217ab3564524c127f2b3aefbf3caeaa) Parameters.scala (f2aabf0d0808d9d5d4888ef5415c9a099665c6dc)
1/***************************************************************************************
2* Copyright (c) 2020-2021 Institute of Computing Technology, Chinese Academy of Sciences
3* Copyright (c) 2020-2021 Peng Cheng Laboratory
4*
5* XiangShan is licensed under Mulan PSL v2.
6* You can use this software according to the terms and conditions of the Mulan PSL v2.
7* You may obtain a copy of Mulan PSL v2 at:
8* http://license.coscl.org.cn/MulanPSL2

--- 47 unchanged lines hidden (view full) ---

56 EnableBPD: Boolean = true,
57 EnableRAS: Boolean = true,
58 EnableLB: Boolean = false,
59 EnableLoop: Boolean = true,
60 EnableSC: Boolean = true,
61 EnbaleTlbDebug: Boolean = false,
62 EnableJal: Boolean = false,
63 EnableUBTB: Boolean = true,
1/***************************************************************************************
2* Copyright (c) 2020-2021 Institute of Computing Technology, Chinese Academy of Sciences
3* Copyright (c) 2020-2021 Peng Cheng Laboratory
4*
5* XiangShan is licensed under Mulan PSL v2.
6* You can use this software according to the terms and conditions of the Mulan PSL v2.
7* You may obtain a copy of Mulan PSL v2 at:
8* http://license.coscl.org.cn/MulanPSL2

--- 47 unchanged lines hidden (view full) ---

56 EnableBPD: Boolean = true,
57 EnableRAS: Boolean = true,
58 EnableLB: Boolean = false,
59 EnableLoop: Boolean = true,
60 EnableSC: Boolean = true,
61 EnbaleTlbDebug: Boolean = false,
62 EnableJal: Boolean = false,
63 EnableUBTB: Boolean = true,
64 HistoryLength: Int = 256,
64 UbtbGHRLength: Int = 4,
65 HistoryLength: Int = 512,
65 EnableGHistDiff: Boolean = false,
66 UbtbSize: Int = 256,
67 FtbSize: Int = 2048,
68 RasSize: Int = 32,
69 CacheLineSize: Int = 512,
70 FtbWays: Int = 4,
71 TageTableInfos: Seq[Tuple3[Int,Int,Int]] =
72 // Sets Hist Tag
66 EnableGHistDiff: Boolean = false,
67 UbtbSize: Int = 256,
68 FtbSize: Int = 2048,
69 RasSize: Int = 32,
70 CacheLineSize: Int = 512,
71 FtbWays: Int = 4,
72 TageTableInfos: Seq[Tuple3[Int,Int,Int]] =
73 // Sets Hist Tag
73 Seq(( 4096, 8, 8),
74 ( 4096, 13, 8),
75 ( 4096, 31, 8),
76 ( 4096, 119, 8)),
74 Seq(( 2048, 2, 8),
75 ( 2048, 8, 8),
76 ( 2048, 12, 8),
77 ( 2048, 13, 8),
78 ( 2048, 27, 8),
79 ( 2048, 54, 8),
80 ( 2048, 119, 8),
81 ( 2048, 256, 8)),
82 // Seq(( 4096, 8, 8),
83 // ( 4096, 13, 8),
84 // ( 4096, 31, 8),
85 // ( 4096, 119, 8)),
77 ITTageTableInfos: Seq[Tuple3[Int,Int,Int]] =
78 // Sets Hist Tag
79 Seq(( 256, 4, 9),
80 ( 256, 8, 9),
81 ( 512, 13, 9),
82 ( 512, 16, 9),
86 ITTageTableInfos: Seq[Tuple3[Int,Int,Int]] =
87 // Sets Hist Tag
88 Seq(( 256, 4, 9),
89 ( 256, 8, 9),
90 ( 512, 13, 9),
91 ( 512, 16, 9),
83 ( 512, 31, 9)),
92 ( 512, 32, 9)),
84 SCNRows: Int = 512,
85 SCNTables: Int = 4,
86 SCCtrBits: Int = 6,
87 SCHistLens: Seq[Int] = Seq(0, 4, 10, 16),
88 numBr: Int = 2,
89 branchPredictor: Function2[BranchPredictionResp, Parameters, Tuple2[Seq[BasePredictor], BranchPredictionResp]] =
90 ((resp_in: BranchPredictionResp, p: Parameters) => {
91 // val loop = Module(new LoopPredictor)

--- 199 unchanged lines hidden (view full) ---

291 val EnableBPD = coreParams.EnableBPD // enable backing predictor(like Tage) in BPUStage3
292 val EnableRAS = coreParams.EnableRAS
293 val EnableLB = coreParams.EnableLB
294 val EnableLoop = coreParams.EnableLoop
295 val EnableSC = coreParams.EnableSC
296 val EnbaleTlbDebug = coreParams.EnbaleTlbDebug
297 val HistoryLength = coreParams.HistoryLength
298 val EnableGHistDiff = coreParams.EnableGHistDiff
93 SCNRows: Int = 512,
94 SCNTables: Int = 4,
95 SCCtrBits: Int = 6,
96 SCHistLens: Seq[Int] = Seq(0, 4, 10, 16),
97 numBr: Int = 2,
98 branchPredictor: Function2[BranchPredictionResp, Parameters, Tuple2[Seq[BasePredictor], BranchPredictionResp]] =
99 ((resp_in: BranchPredictionResp, p: Parameters) => {
100 // val loop = Module(new LoopPredictor)

--- 199 unchanged lines hidden (view full) ---

300 val EnableBPD = coreParams.EnableBPD // enable backing predictor(like Tage) in BPUStage3
301 val EnableRAS = coreParams.EnableRAS
302 val EnableLB = coreParams.EnableLB
303 val EnableLoop = coreParams.EnableLoop
304 val EnableSC = coreParams.EnableSC
305 val EnbaleTlbDebug = coreParams.EnbaleTlbDebug
306 val HistoryLength = coreParams.HistoryLength
307 val EnableGHistDiff = coreParams.EnableGHistDiff
299 val UbtbGHRLength = 4
308 val UbtbGHRLength = coreParams.UbtbGHRLength
300 val UbtbSize = coreParams.UbtbSize
301 val FtbSize = coreParams.FtbSize
302 val FtbWays = coreParams.FtbWays
303 val RasSize = coreParams.RasSize
304
305 def getBPDComponents(resp_in: BranchPredictionResp, p: Parameters) = {
306 coreParams.branchPredictor(resp_in, p)
307 }

--- 130 unchanged lines hidden ---
309 val UbtbSize = coreParams.UbtbSize
310 val FtbSize = coreParams.FtbSize
311 val FtbWays = coreParams.FtbWays
312 val RasSize = coreParams.RasSize
313
314 def getBPDComponents(resp_in: BranchPredictionResp, p: Parameters) = {
315 coreParams.branchPredictor(resp_in, p)
316 }

--- 130 unchanged lines hidden ---