Support disabling atomics extension

This commit is contained in:
Andrew Waterman committed 2016-05-24 15:05:41 -07:00
1 parent 765b90f6a4
commit 335e2c8a1e
3 files changed
+41 -25

No files matched your search

+3
View File
@@ -14,6 +14,7 @@ case object XLen extends Field[Int]
case object FetchWidth extends Field[Int]
case object RetireWidth extends Field[Int]
case object UseVM extends Field[Boolean]
case object UseAtomics extends Field[Boolean]
case object UsePerfCounters extends Field[Boolean]
case object FastLoadWord extends Field[Boolean]
case object FastLoadByte extends Field[Boolean]
@@ -32,6 +33,7 @@ trait HasCoreParameters extends HasAddrMapParameters {
val usingVM = p(UseVM)
val usingFPU = p(UseFPU)
val usingAtomics = p(UseAtomics)
val usingFDivSqrt = p(FDivSqrt)
val usingRoCC = !p(BuildRoCC).isEmpty
val usingFastMulDiv = p(FastMulDiv)
@@ -119,6 +121,7 @@ class Rocket(implicit p: Parameters) extends CoreModule()(p) {
}
var decode_table = new XDecode().table
if (usingAtomics) decode_table ++= new ADecode().table
if (usingFPU) decode_table ++= new FDecode().table
if (usingFPU && usingFDivSqrt) decode_table ++= new FDivSqrtDecode().table
if (usingRoCC) decode_table ++= new RoCCDecode().table