package sim

Simulation package

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. sim
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. implicit class SimArrayBufferPimper[T] extends AnyRef
  2. implicit class SimBaseTypePimper extends AnyRef

    Add implicit function to BaseType for simulation

  3. implicit class SimBitVectorPimper extends AnyRef

    Add implicit function to BitVector

  4. implicit class SimBitsPimper extends AnyRef

    Add implicit function to Bits

  5. implicit class SimBoolPimper extends AnyRef

    Add implicit function to Bool

  6. implicit class SimClockDomainHandlePimper extends SimClockDomainPimper
  7. implicit class SimClockDomainPimper extends AnyRef

    Add implicit function to ClockDomain

  8. abstract class SimCompiled[T <: Component] extends AnyRef

    Run simulation

  9. case class SimConfigLegacy[T <: Component](_rtlGen: Option[() => T] = None, _spinalConfig: SpinalConfig = SpinalConfig(), _spinalReport: Option[SpinalReport[T]] = None) extends Product with Serializable

    Legacy simulation configuration

  10. implicit class SimDataPimper[T <: Data] extends AnyRef

    Add implicit function to Data

  11. implicit class SimEnumPimper[T <: SpinalEnum] extends AnyRef

    Add implicit function to Enum

  12. implicit class SimMemPimper[T <: Data] extends AnyRef
  13. case class SimMutex() extends Product with Serializable
  14. implicit class SimSIntPimper extends AnyRef

    Add implicit function to SInt

  15. implicit class SimSeqPimper[T] extends AnyRef
  16. implicit class SimUIntPimper extends AnyRef

    Add implicit function to UInt

  17. implicit class SimpComponentPimper[T <: Component] extends AnyRef
  18. case class SpinalGhdlBackendConfig[T <: Component](rtl: SpinalReport[T], waveFormat: WaveFormat = WaveFormat.NONE, workspacePath: String = "./", workspaceName: String = null, wavePath: String = null, wavePrefix: String = null, waveDepth: Int = 0, optimisationLevel: Int = 2, simulatorFlags: ArrayBuffer[String] = ArrayBuffer[String](), usePluginsCache: Boolean = true, pluginsCachePath: String = "./simWorkspace/.pluginsCachePath", enableLogging: Boolean = false) extends SpinalVpiBackendConfig[T] with Product with Serializable
  19. case class SpinalIVerilogBackendConfig[T <: Component](rtl: SpinalReport[T], waveFormat: WaveFormat = WaveFormat.NONE, workspacePath: String = "./", workspaceName: String = null, wavePath: String = null, wavePrefix: String = null, waveDepth: Int = 0, optimisationLevel: Int = 2, simulatorFlags: ArrayBuffer[String] = ArrayBuffer[String](), usePluginsCache: Boolean = true, pluginsCachePath: String = "./simWorkspace/.pluginsCachePath", enableLogging: Boolean = false) extends SpinalVpiBackendConfig[T] with Product with Serializable
  20. class SpinalSimBackendSel extends AnyRef
  21. case class SpinalSimConfig(_workspacePath: String = System.getenv().getOrDefault("SPINALSIM_WORKSPACE","./simWorkspace"), _workspaceName: String = null, _waveDepth: Int = 0, _spinalConfig: SpinalConfig = SpinalConfig(), _optimisationLevel: Int = 0, _simulatorFlags: ArrayBuffer[String] = ArrayBuffer[String](), _additionalRtlPath: ArrayBuffer[String] = ArrayBuffer[String](), _additionalIncludeDir: ArrayBuffer[String] = ArrayBuffer[String](), _waveFormat: WaveFormat = WaveFormat.NONE, _backend: SpinalSimBackendSel = SpinalSimBackendSel.VERILATOR, _withCoverage: Boolean = false, _maxCacheEntries: Int = 100, _cachePath: String = null, _disableCache: Boolean = false, _withLogging: Boolean = false) extends Product with Serializable

    SpinalSim configuration

  22. case class SpinalVerilatorBackendConfig[T <: Component](rtl: SpinalReport[T], waveFormat: WaveFormat = WaveFormat.NONE, maxCacheEntries: Int = 100, cachePath: String = null, workspacePath: String = "./", workspaceName: String = null, vcdPath: String = null, vcdPrefix: String = null, waveDepth: Int = 0, optimisationLevel: Int = 2, simulatorFlags: ArrayBuffer[String] = ArrayBuffer[String](), withCoverage: Boolean) extends Product with Serializable
  23. class SpinalVpiBackendConfig[T <: Component] extends AnyRef
  24. class SwapTagPhase extends PhaseNetlist

    Swap all oldTag with newTag

Value Members

  1. def SimConfig: SpinalSimConfig
  2. def delayed(delay: Long)(body: => Unit): Unit
  3. def disableSimWave(): Unit
  4. def enableSimWave(): Unit
  5. def fork(body: => Unit): SimThread

    Fork

  6. def forkJoin(bodys: () => Unit*): Unit
  7. def forkSensitive(trigger: => Any)(block: => Unit): Unit
  8. def forkSensitive(triggers: Data)(block: => Unit): Unit
  9. def forkSensitive(block: => Unit): Unit
  10. def forkSensitive2(triggers: Data*)(block: => Unit): Unit
  11. def forkSensitiveWhile(block: => Boolean): Unit
  12. def forkSimSporadicWave(captures: Seq[(Double, Double)], enableTime: Double = 1e-7, disableTime: Double = 1e-4, timeUnit: Double = 1e12): Unit
  13. def getBigInt[T <: Data](mem: Mem[T], address: Long): BigInt
  14. def onSimEnd(body: => Unit): Unit
  15. def periodicaly(delay: Long)(body: => Unit): Unit
  16. def setBigInt(bt: BaseType, value: BigInt): Unit

    Set a BigInt value to a BaseType

  17. def setBigInt[T <: Data](mem: Mem[T], address: Long, data: BigInt): Unit
  18. def setLong(bt: BaseType, value: Long): Unit

    Set a long value to a BaseType

  19. def simDeltaCycle(): Long
  20. def simFailure(message: String = ""): Nothing
  21. def simSuccess(): Nothing

    Success/Failure simulation

  22. def simThread: SimThread
  23. def simTime(): Long

    Return the current simulation time

  24. def sleep(cycles: Double): Unit
  25. def sleep(cycles: Long): Unit

    Sleep / WaitUntil

  26. def waitUntil(cond: => Boolean): Unit
  27. object DoClock

    Generate a clock

  28. object DoReset

    Execute a reset sequence

  29. object ForkClock

    Fork the DoClock

  30. object SimPublic extends SpinalTag

    Tag SimPublic

  31. object SimSpeedPrinter

    Print the simulation speed

  32. object SimStatics
  33. object SimTimeout

    Create a Timeout for the simulation

  34. object SimWorkspace

    Simulation Workspace

  35. object SpinalGhdlBackend
  36. object SpinalIVerilogBackend
  37. object SpinalSimBackendSel
  38. object SpinalVerilatorBackend
  39. object SpinalVerilatorSim
  40. object SpinalVpiBackend
  41. object TracingOff extends SpinalTag

Deprecated Value Members

  1. def SimConfig[T <: Component](rtl: SpinalReport[T]): SimConfigLegacy[T]
    Annotations
    @deprecated
    Deprecated

    (Since version ???) Use SimConfig.???.compile(new Dut) instead

  2. def SimConfig[T <: Component](rtl: => T): SimConfigLegacy[T]
    Annotations
    @deprecated
    Deprecated

    (Since version ???) Use SimConfig.???.compile(new Dut) instead

Inherited from AnyRef

Inherited from Any

Ungrouped