c

midas.core

SimWrapper

class SimWrapper extends Module with UnpackedWrapperConfig

The SimWrapper is the shim between the transformed RTL and the rest of the Chisel-generated simulator collateral. 1) It instantiates the tranformed target (now a collection of unconnected, decoupled models) 2) Generates channels to interconnect those models and bridges by analyzing FAMEChannelConnectionAnnotations. 3) Exposes ReadyValid interfaces for all channels sourced or sunk by a bridge as I/O

Self Type
SimWrapper
Linear Supertypes
UnpackedWrapperConfig, Module, RawModule, BaseModule, IsInstantiable, HasId, InstanceId, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SimWrapper
  2. UnpackedWrapperConfig
  3. Module
  4. RawModule
  5. BaseModule
  6. IsInstantiable
  7. HasId
  8. InstanceId
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new SimWrapper(config: SimWrapperConfig)(implicit p: Parameters)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def IO[T <: Data](iodef: => T)(implicit sourceInfo: SourceInfo, compileOptions: CompileOptions): T
    Attributes
    protected
    Definition Classes
    BaseModule
  5. def _bindIoInPlace(iodef: Data)(implicit sourceInfo: SourceInfo, compileOptions: CompileOptions): Unit
    Attributes
    protected
    Definition Classes
    BaseModule
  6. var _closed: Boolean
    Attributes
    protected
    Definition Classes
    BaseModule
  7. def _compatAutoWrapPorts(): Unit
    Definition Classes
    BaseModule
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def bindRVChannelDeq[T <: Data](deq: SimReadyValidIO[T], port: TargetRVPortType): Unit
  10. def bindRVChannelEnq[T <: Data](enq: SimReadyValidIO[T], port: TargetRVPortType): Unit
  11. val bridgeAnnos: ArrayBuffer[BridgeIOAnnotation]
    Definition Classes
    UnpackedWrapperConfig
  12. val chAnnos: ArrayBuffer[FAMEChannelConnectionAnnotation]
    Definition Classes
    UnpackedWrapperConfig
  13. val channelGroups: Map[String, ArrayBuffer[FAMEChannelConnectionAnnotation]]
  14. val channelPorts: SimWrapperChannels
  15. val channelToFanoutName: Map[String, String]
  16. def circuitName: String
    Attributes
    protected
    Definition Classes
    HasId
  17. final val clock: Clock
    Definition Classes
    Module
  18. val clockChannels: ArrayBuffer[FAMEChannelConnectionAnnotation]
  19. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  20. val compileOptions: CompileOptions
    Definition Classes
    RawModule
  21. val config: SimWrapperConfig
    Definition Classes
    SimWrapperUnpackedWrapperConfig
  22. def desiredName: String
    Definition Classes
    BaseModule
  23. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. def equals(that: Any): Boolean
    Definition Classes
    HasId → AnyRef → Any
  25. val fanoutAnnos: ArrayBuffer[FAMEChannelFanoutAnnotation]
    Definition Classes
    UnpackedWrapperConfig
  26. def genClockChannel(chAnno: FAMEChannelConnectionAnnotation): Unit
  27. def genPipeChannel(chAnnos: Iterable[FAMEChannelConnectionAnnotation], primaryChannelName: String): Iterable[PipeChannel[Data]]

    Implements a pipe channel.

    Implements a pipe channel.

    chAnnos

    A group of FAMEChannelFanoutAnnotations that have a common source. Groups with size > 1 represent a fanout connection in the source RTL. Each source token will be duplicated and enqueued into each channel.

    primaryChannelName

    For fanouts that are sourced by a bridge, this provides the unique chname used to look up the bridge-side interface in channelPorts.

  28. def genReadyValidChannel(chAnno: FAMEChannelConnectionAnnotation): ReadyValidChannel[Data]
  29. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  30. def getCommands: Seq[Command]
    Attributes
    protected
    Definition Classes
    RawModule
  31. def getModulePorts: Seq[Data]
    Attributes
    protected[chisel3]
    Definition Classes
    BaseModule
  32. def getPipeChannelType(chAnno: FAMEChannelConnectionAnnotation): Data
  33. def getReadyValidChannelType(chAnno: FAMEChannelConnectionAnnotation): Data
  34. def hasSeed: Boolean
    Definition Classes
    HasId
  35. def hashCode(): Int
    Definition Classes
    HasId → AnyRef → Any
  36. def instanceName: String
    Definition Classes
    BaseModule → HasId → InstanceId
  37. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  38. val isSecondaryFanout: Set[String]
  39. val leafTypeMap: Map[ReferenceTarget, Port]
    Definition Classes
    UnpackedWrapperConfig
  40. final lazy val name: String
    Definition Classes
    BaseModule
  41. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  42. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  43. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  44. val outerConfig: SimWrapperConfig
  45. implicit val p: Parameters
  46. def parentModName: String
    Definition Classes
    HasId → InstanceId
  47. def parentPathName: String
    Definition Classes
    HasId → InstanceId
  48. def pathName: String
    Definition Classes
    HasId → InstanceId
  49. val pipeChannelFCCAs: ArrayBuffer[FAMEChannelConnectionAnnotation]
  50. def portsContains(elem: Data): Boolean
    Attributes
    protected
    Definition Classes
    BaseModule
  51. def portsSize: Int
    Attributes
    protected
    Definition Classes
    BaseModule
  52. final val reset: Reset
    Definition Classes
    Module
  53. val rvChannels: ArrayBuffer[ReadyValidChannel[Data]]
  54. def suggestName(seed: => String): SimWrapper.this.type
    Definition Classes
    HasId
  55. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  56. val target: TargetBox
  57. final def toAbsoluteTarget: IsModule
    Definition Classes
    BaseModule → InstanceId
  58. final def toNamed: ModuleName
    Definition Classes
    BaseModule → InstanceId
  59. def toString(): String
    Definition Classes
    AnyRef → Any
  60. final def toTarget: ModuleTarget
    Definition Classes
    BaseModule → InstanceId
  61. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  62. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  63. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated
  2. def override_clock: Option[Clock]
    Attributes
    protected
    Definition Classes
    Module
    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 3.5) Use withClock at Module instantiation

  3. def override_clock_=(rhs: Option[Clock]): Unit
    Attributes
    protected
    Definition Classes
    Module
    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 3.5) Use withClock at Module instantiation

  4. def override_reset: Option[Bool]
    Attributes
    protected
    Definition Classes
    Module
    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 3.5) Use withClock at Module instantiation

  5. def override_reset_=(rhs: Option[Bool]): Unit
    Attributes
    protected
    Definition Classes
    Module
    Annotations
    @deprecated
    Deprecated

    (Since version Chisel 3.5) Use withClock at Module instantiation

Inherited from UnpackedWrapperConfig

Inherited from Module

Inherited from RawModule

Inherited from BaseModule

Inherited from IsInstantiable

Inherited from HasId

Inherited from InstanceId

Inherited from AnyRef

Inherited from Any

Ungrouped