make taking max of multiple integers in config a bit easier
This commit is contained in:
parent
4fc2a14a63
commit
e90a9dfb2b
@ -13,6 +13,13 @@ import scala.math.max
|
|||||||
import DefaultTestSuites._
|
import DefaultTestSuites._
|
||||||
import cde.{Parameters, Config, Dump, Knob}
|
import cde.{Parameters, Config, Dump, Knob}
|
||||||
|
|
||||||
|
object ConfigUtils {
|
||||||
|
def max_int(values: Int*): Int = {
|
||||||
|
values.reduce((a, b) => max(a, b))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
import ConfigUtils._
|
||||||
|
|
||||||
class DefaultConfig extends Config (
|
class DefaultConfig extends Config (
|
||||||
topDefinitions = { (pname,site,here) =>
|
topDefinitions = { (pname,site,here) =>
|
||||||
type PF = PartialFunction[Any,Any]
|
type PF = PartialFunction[Any,Any]
|
||||||
@ -77,11 +84,10 @@ class DefaultConfig extends Config (
|
|||||||
// Bits added by NASTI interconnect
|
// Bits added by NASTI interconnect
|
||||||
max(log2Up(site(MaxBanksPerMemoryChannel)),
|
max(log2Up(site(MaxBanksPerMemoryChannel)),
|
||||||
(if (site(UseDma)) 3 else 2)))
|
(if (site(UseDma)) 3 else 2)))
|
||||||
case MIFMasterTagBits => log2Up(max(
|
case MIFMasterTagBits => log2Up(max_int(
|
||||||
site(NTiles),
|
site(NTiles),
|
||||||
max(
|
site(NAcquireTransactors)+2,
|
||||||
site(NAcquireTransactors)+2,
|
site(NDmaTransactors)))
|
||||||
site(NDmaTransactors))))
|
|
||||||
case MIFDataBits => Dump("MIF_DATA_BITS", 64)
|
case MIFDataBits => Dump("MIF_DATA_BITS", 64)
|
||||||
case MIFAddrBits => Dump("MIF_ADDR_BITS",
|
case MIFAddrBits => Dump("MIF_ADDR_BITS",
|
||||||
site(PAddrBits) - site(CacheBlockOffsetBits))
|
site(PAddrBits) - site(CacheBlockOffsetBits))
|
||||||
@ -195,9 +201,9 @@ class DefaultConfig extends Config (
|
|||||||
site(NTiles) *
|
site(NTiles) *
|
||||||
(1 + (if(site(BuildRoCC).isEmpty) 0
|
(1 + (if(site(BuildRoCC).isEmpty) 0
|
||||||
else site(RoccNMemChannels))),
|
else site(RoccNMemChannels))),
|
||||||
maxClientXacts = max(site(NMSHRs) + 1,
|
maxClientXacts = max_int(site(NMSHRs) + 1,
|
||||||
max(if (site(BuildRoCC).isEmpty) 1 else site(RoccMaxTaggedMemXacts),
|
if (site(BuildRoCC).isEmpty) 1 else site(RoccMaxTaggedMemXacts),
|
||||||
if (site(UseDma)) 4 else 1)),
|
if (site(UseDma)) 4 else 1),
|
||||||
maxClientsPerPort = max(if (site(BuildRoCC).isEmpty) 1 else 2,
|
maxClientsPerPort = max(if (site(BuildRoCC).isEmpty) 1 else 2,
|
||||||
if (site(UseDma)) site(NDmaTransactors) + 1 else 1),
|
if (site(UseDma)) site(NDmaTransactors) + 1 else 1),
|
||||||
maxManagerXacts = site(NAcquireTransactors) + 2,
|
maxManagerXacts = site(NAcquireTransactors) + 2,
|
||||||
|
@ -8,6 +8,7 @@ import junctions._
|
|||||||
import scala.collection.mutable.LinkedHashSet
|
import scala.collection.mutable.LinkedHashSet
|
||||||
import cde.{Parameters, Config, Dump, Knob}
|
import cde.{Parameters, Config, Dump, Knob}
|
||||||
import scala.math.max
|
import scala.math.max
|
||||||
|
import ConfigUtils._
|
||||||
|
|
||||||
class WithGroundTest extends Config(
|
class WithGroundTest extends Config(
|
||||||
(pname, site, here) => pname match {
|
(pname, site, here) => pname match {
|
||||||
@ -17,9 +18,9 @@ class WithGroundTest extends Config(
|
|||||||
nManagers = site(NBanksPerMemoryChannel)*site(NMemoryChannels) + 1,
|
nManagers = site(NBanksPerMemoryChannel)*site(NMemoryChannels) + 1,
|
||||||
nCachingClients = site(NTiles),
|
nCachingClients = site(NTiles),
|
||||||
nCachelessClients = site(NTiles) + (if (site(UseDma)) 2 else 1),
|
nCachelessClients = site(NTiles) + (if (site(UseDma)) 2 else 1),
|
||||||
maxClientXacts = max(site(NMSHRs) + 1,
|
maxClientXacts = max_int(site(NMSHRs) + 1,
|
||||||
max(site(GroundTestMaxXacts),
|
if (site(BuildRoCC).isEmpty) 1 else site(RoccMaxTaggedMemXacts),
|
||||||
if (site(UseDma)) 4 else 1)),
|
if (site(UseDma)) 4 else 1),
|
||||||
maxClientsPerPort = max(if (site(BuildRoCC).isEmpty) 1 else 2,
|
maxClientsPerPort = max(if (site(BuildRoCC).isEmpty) 1 else 2,
|
||||||
if (site(UseDma)) site(NDmaTransactors) + 1 else 1),
|
if (site(UseDma)) site(NDmaTransactors) + 1 else 1),
|
||||||
maxManagerXacts = site(NAcquireTransactors) + 2,
|
maxManagerXacts = site(NAcquireTransactors) + 2,
|
||||||
|
Loading…
Reference in New Issue
Block a user