1
0

move GroundTest configs to a separate file

This commit is contained in:
Howard Mao 2015-12-06 03:01:05 -08:00
parent 4f5dabcda2
commit 0c91e00676
4 changed files with 73 additions and 56 deletions

@ -1 +1 @@
Subproject commit b7e140877d98e85c590d604ece28860df420d2e9
Subproject commit 1069aa03c6fcf6234d44599ffca7680c5fcb56af

View File

@ -297,56 +297,6 @@ class WithZscale extends Config(
class ZscaleConfig extends Config(new WithZscale ++ new DefaultConfig)
class WithGroundTest extends Config(
(pname, site, here) => pname match {
case TLKey("L1toL2") =>
TileLinkParameters(
coherencePolicy = new MESICoherence(site(L2DirectoryRepresentation)),
nManagers = site(NBanksPerMemoryChannel)*site(NMemoryChannels),
nCachingClients = site(NTiles),
nCachelessClients = site(NTiles) + 1,
maxClientXacts = 1,
maxClientsPerPort = site(GroundTestMaxXacts),
maxManagerXacts = site(NAcquireTransactors) + 2,
dataBits = site(CacheBlockBytes)*8)
case BuildTiles => {
(0 until site(NTiles)).map { i =>
(r: Bool, p: Parameters) =>
Module(new GroundTestTile(i, r)
(p.alterPartial({case TLId => "L1toL2"})))
}
}
case GroundTestMaxXacts => 1
})
class WithMemtest extends Config(
(pname, site, here) => pname match {
case NGenerators => site(NTiles)
case GenerateUncached => true
case GenerateCached => true
case MaxGenerateRequests => 128
case GeneratorStartAddress => 0
case BuildGroundTest =>
(id: Int, p: Parameters) => Module(new GeneratorTest(id)(p))
})
class WithCacheFillTest extends Config(
(pname, site, here) => pname match {
case BuildGroundTest =>
(id: Int, p: Parameters) => Module(new CacheFillTest()(p))
},
knobValues = {
case "L2_WAYS" => 4
case "L2_CAPACITY_IN_KB" => 4
})
class GroundTestConfig extends Config(new WithGroundTest ++ new DefaultConfig)
class MemtestConfig extends Config(new WithMemtest ++ new GroundTestConfig)
class MemtestL2Config extends Config(
new WithMemtest ++ new WithL2Cache ++ new GroundTestConfig)
class CacheFillTestConfig extends Config(
new WithCacheFillTest ++ new WithL2Cache ++ new GroundTestConfig)
class FPGAConfig extends Config (
(pname,site,here) => pname match {
case NAcquireTransactors => 4
@ -389,10 +339,6 @@ class DualChannelDualBankL2Config extends Config(
new With2MemoryChannels ++ new With2BanksPerMemChannel ++
new WithL2Cache ++ new DefaultConfig)
class FancyMemtestConfig extends Config(
new With2Cores ++ new With2MemoryChannels ++ new With2BanksPerMemChannel ++
new WithMemtest ++ new WithL2Cache ++ new GroundTestConfig)
class WithRoccExample extends Config(
(pname, site, here) => pname match {
case BuildRoCC => Seq(

View File

@ -0,0 +1,71 @@
package rocketchip
import Chisel._
import groundtest._
import rocket._
import uncore._
import cde.{Parameters, Config, Dump, Knob}
import scala.math.max
class WithGroundTest extends Config(
(pname, site, here) => pname match {
case TLKey("L1toL2") =>
TileLinkParameters(
coherencePolicy = new MESICoherence(site(L2DirectoryRepresentation)),
nManagers = site(NBanksPerMemoryChannel)*site(NMemoryChannels),
nCachingClients = site(NTiles),
nCachelessClients = site(NTiles) + 1,
maxClientXacts = max(site(NMSHRs) + site(NIOMSHRs),
site(GroundTestMaxXacts)),
maxClientsPerPort = 1,
maxManagerXacts = site(NAcquireTransactors) + 2,
dataBits = site(CacheBlockBytes)*8)
case BuildTiles => {
(0 until site(NTiles)).map { i =>
(r: Bool, p: Parameters) =>
Module(new GroundTestTile(i, r)
(p.alterPartial({case TLId => "L1toL2"})))
}
}
case GroundTestMaxXacts => 1
})
class WithMemtest extends Config(
(pname, site, here) => pname match {
case NGenerators => site(NTiles)
case GenerateUncached => true
case GenerateCached => true
case MaxGenerateRequests => 128
case GeneratorStartAddress => 0
case BuildGroundTest =>
(id: Int, p: Parameters) => Module(new GeneratorTest(id)(p))
})
class WithCacheFillTest extends Config(
(pname, site, here) => pname match {
case BuildGroundTest =>
(id: Int, p: Parameters) => Module(new CacheFillTest()(p))
},
knobValues = {
case "L2_WAYS" => 4
case "L2_CAPACITY_IN_KB" => 4
})
class WithRegressionTest extends Config(
(pname, site, here) => pname match {
case BuildGroundTest =>
(id: Int, p: Parameters) => Module(new RegressionTest()(p))
})
class GroundTestConfig extends Config(new WithGroundTest ++ new DefaultConfig)
class MemtestConfig extends Config(new WithMemtest ++ new GroundTestConfig)
class MemtestL2Config extends Config(
new WithMemtest ++ new WithL2Cache ++ new GroundTestConfig)
class CacheFillTestConfig extends Config(
new WithCacheFillTest ++ new WithL2Cache ++ new GroundTestConfig)
class RegressionTestConfig extends Config(
new WithRegressionTest ++ new GroundTestConfig)
class FancyMemtestConfig extends Config(
new With2Cores ++ new With2MemoryChannels ++ new With2BanksPerMemChannel ++
new WithMemtest ++ new WithL2Cache ++ new GroundTestConfig)

2
uncore

@ -1 +1 @@
Subproject commit 677249148f87cc2735ce88c0892ca02ebd767a94
Subproject commit 9c11a10b2e3b89ca9a14f06a6930eb454bc7f4ec