Rename Endpoint -> Bridge
This commit is contained in:
@@ -87,4 +87,4 @@ will look as follows:
|
|||||||
You should then be able to refer to those classes or an alias of them in your ``DESIGN`` or ``TARGET_CONFIG``
|
You should then be able to refer to those classes or an alias of them in your ``DESIGN`` or ``TARGET_CONFIG``
|
||||||
variables. Note that if your target machine has I/O not provided in the default
|
variables. Note that if your target machine has I/O not provided in the default
|
||||||
FireChip targets (see ``generators/firechip/src/main/scala/Targets.scala``) you may need
|
FireChip targets (see ``generators/firechip/src/main/scala/Targets.scala``) you may need
|
||||||
to write a custom endpoint.
|
to write a custom bridge.
|
||||||
|
|||||||
@@ -14,12 +14,12 @@ import testchipip.{HasPeripherySerialModuleImp, HasPeripheryBlockDeviceModuleImp
|
|||||||
import icenet.HasPeripheryIceNICModuleImpValidOnly
|
import icenet.HasPeripheryIceNICModuleImpValidOnly
|
||||||
|
|
||||||
import junctions.{NastiKey, NastiParameters}
|
import junctions.{NastiKey, NastiParameters}
|
||||||
import midas.models.{FASEDEndpoint, AXI4EdgeSummary, CompleteConfig}
|
import midas.models.{FASEDBridge, AXI4EdgeSummary, CompleteConfig}
|
||||||
import firesim.endpoints._
|
import firesim.bridges._
|
||||||
import firesim.configs.MemModelKey
|
import firesim.configs.MemModelKey
|
||||||
import firesim.util.RegisterEndpointBinder
|
import firesim.util.RegisterBridgeBinder
|
||||||
|
|
||||||
class WithTiedOffDebug extends RegisterEndpointBinder({ case target: HasPeripheryDebugModuleImp =>
|
class WithTiedOffDebug extends RegisterBridgeBinder({ case target: HasPeripheryDebugModuleImp =>
|
||||||
target.debug.clockeddmi.foreach({ cdmi =>
|
target.debug.clockeddmi.foreach({ cdmi =>
|
||||||
cdmi.dmi.req.valid := false.B
|
cdmi.dmi.req.valid := false.B
|
||||||
cdmi.dmi.req.bits := DontCare
|
cdmi.dmi.req.bits := DontCare
|
||||||
@@ -30,23 +30,23 @@ class WithTiedOffDebug extends RegisterEndpointBinder({ case target: HasPeripher
|
|||||||
Seq()
|
Seq()
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithSerialEndpoint extends RegisterEndpointBinder({
|
class WithSerialBridge extends RegisterBridgeBinder({
|
||||||
case target: HasPeripherySerialModuleImp => Seq(SerialEndpoint(target.serial)(target.p))
|
case target: HasPeripherySerialModuleImp => Seq(SerialBridge(target.serial)(target.p))
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithNICEndpoint extends RegisterEndpointBinder({
|
class WithNICBridge extends RegisterBridgeBinder({
|
||||||
case target: HasPeripheryIceNICModuleImpValidOnly => Seq(NICEndpoint(target.net)(target.p))
|
case target: HasPeripheryIceNICModuleImpValidOnly => Seq(NICBridge(target.net)(target.p))
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithUARTEndpoint extends RegisterEndpointBinder({
|
class WithUARTBridge extends RegisterBridgeBinder({
|
||||||
case target: HasPeripheryUARTModuleImp => target.uart.map(u => UARTEndpoint(u)(target.p))
|
case target: HasPeripheryUARTModuleImp => target.uart.map(u => UARTBridge(u)(target.p))
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithBlockDeviceEndpoint extends RegisterEndpointBinder({
|
class WithBlockDeviceBridge extends RegisterBridgeBinder({
|
||||||
case target: HasPeripheryBlockDeviceModuleImp => Seq(BlockDevEndpoint(target.bdev, target.reset.toBool)(target.p))
|
case target: HasPeripheryBlockDeviceModuleImp => Seq(BlockDevBridge(target.bdev, target.reset.toBool)(target.p))
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithFASEDEndpoint extends RegisterEndpointBinder({
|
class WithFASEDBridge extends RegisterBridgeBinder({
|
||||||
case t: CanHaveMasterAXI4MemPortModuleImp =>
|
case t: CanHaveMasterAXI4MemPortModuleImp =>
|
||||||
implicit val p = t.p
|
implicit val p = t.p
|
||||||
(t.mem_axi4 zip t.outer.memAXI4Node).flatMap({ case (io, node) =>
|
(t.mem_axi4 zip t.outer.memAXI4Node).flatMap({ case (io, node) =>
|
||||||
@@ -54,23 +54,23 @@ class WithFASEDEndpoint extends RegisterEndpointBinder({
|
|||||||
val nastiKey = NastiParameters(axi4Bundle.r.bits.data.getWidth,
|
val nastiKey = NastiParameters(axi4Bundle.r.bits.data.getWidth,
|
||||||
axi4Bundle.ar.bits.addr.getWidth,
|
axi4Bundle.ar.bits.addr.getWidth,
|
||||||
axi4Bundle.ar.bits.id.getWidth)
|
axi4Bundle.ar.bits.id.getWidth)
|
||||||
FASEDEndpoint(axi4Bundle, t.reset.toBool,
|
FASEDBridge(axi4Bundle, t.reset.toBool,
|
||||||
CompleteConfig(p(firesim.configs.MemModelKey), nastiKey, Some(AXI4EdgeSummary(edge))))
|
CompleteConfig(p(firesim.configs.MemModelKey), nastiKey, Some(AXI4EdgeSummary(edge))))
|
||||||
})
|
})
|
||||||
}).toSeq
|
}).toSeq
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithTracerVEndpoint extends RegisterEndpointBinder({
|
class WithTracerVBridge extends RegisterBridgeBinder({
|
||||||
case target: HasTraceIOImp => TracerVEndpoint(target.traceIO)(target.p)
|
case target: HasTraceIOImp => TracerVBridge(target.traceIO)(target.p)
|
||||||
})
|
})
|
||||||
|
|
||||||
// Shorthand to register all of the provided endpoints above
|
// Shorthand to register all of the provided bridges above
|
||||||
class WithDefaultFireSimEndpoints extends Config(
|
class WithDefaultFireSimBridges extends Config(
|
||||||
new WithTiedOffDebug ++
|
new WithTiedOffDebug ++
|
||||||
new WithSerialEndpoint ++
|
new WithSerialBridge ++
|
||||||
new WithNICEndpoint ++
|
new WithNICBridge ++
|
||||||
new WithUARTEndpoint ++
|
new WithUARTBridge ++
|
||||||
new WithBlockDeviceEndpoint ++
|
new WithBlockDeviceBridge ++
|
||||||
new WithFASEDEndpoint ++
|
new WithFASEDBridge ++
|
||||||
new WithTracerVEndpoint
|
new WithTracerVBridge
|
||||||
)
|
)
|
||||||
@@ -18,7 +18,7 @@ import scala.math.{min, max}
|
|||||||
import tracegen.TraceGenKey
|
import tracegen.TraceGenKey
|
||||||
import icenet._
|
import icenet._
|
||||||
|
|
||||||
import firesim.endpoints._
|
import firesim.bridges._
|
||||||
import firesim.util.{WithNumNodes}
|
import firesim.util.{WithNumNodes}
|
||||||
import firesim.configs._
|
import firesim.configs._
|
||||||
|
|
||||||
@@ -113,7 +113,7 @@ class FireSimRocketChipConfig extends Config(
|
|||||||
new WithPerfCounters ++
|
new WithPerfCounters ++
|
||||||
new WithoutClockGating ++
|
new WithoutClockGating ++
|
||||||
new WithDefaultMemModel ++
|
new WithDefaultMemModel ++
|
||||||
new WithDefaultFireSimEndpoints ++
|
new WithDefaultFireSimBridges ++
|
||||||
new freechips.rocketchip.system.DefaultConfig)
|
new freechips.rocketchip.system.DefaultConfig)
|
||||||
|
|
||||||
class WithNDuplicatedRocketCores(n: Int) extends Config((site, here, up) => {
|
class WithNDuplicatedRocketCores(n: Int) extends Config((site, here, up) => {
|
||||||
@@ -163,7 +163,7 @@ class FireSimBoomConfig extends Config(
|
|||||||
new WithDefaultMemModel ++
|
new WithDefaultMemModel ++
|
||||||
new boom.common.WithLargeBooms ++
|
new boom.common.WithLargeBooms ++
|
||||||
new boom.common.WithNBoomCores(1) ++
|
new boom.common.WithNBoomCores(1) ++
|
||||||
new WithDefaultFireSimEndpoints ++
|
new WithDefaultFireSimBridges ++
|
||||||
new freechips.rocketchip.system.BaseConfig
|
new freechips.rocketchip.system.BaseConfig
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -11,12 +11,12 @@ import freechips.rocketchip.amba.axi4._
|
|||||||
import freechips.rocketchip.util._
|
import freechips.rocketchip.util._
|
||||||
import freechips.rocketchip.subsystem._
|
import freechips.rocketchip.subsystem._
|
||||||
import freechips.rocketchip.rocket.TracedInstruction
|
import freechips.rocketchip.rocket.TracedInstruction
|
||||||
import firesim.endpoints.{TraceOutputTop, DeclockedTracedInstruction}
|
import firesim.bridges.{TraceOutputTop, DeclockedTracedInstruction}
|
||||||
|
|
||||||
import midas.targetutils.{ExcludeInstanceAsserts, MemModelAnnotation}
|
import midas.targetutils.{ExcludeInstanceAsserts, MemModelAnnotation}
|
||||||
|
|
||||||
/* Wires out tile trace ports to the top; and wraps them in a Bundle that the
|
/* Wires out tile trace ports to the top; and wraps them in a Bundle that the
|
||||||
* TracerV endpoint can match on.
|
* TracerV bridge can match on.
|
||||||
*/
|
*/
|
||||||
object PrintTracePort extends Field[Boolean](false)
|
object PrintTracePort extends Field[Boolean](false)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user