Packages

  • package root
    Definition Classes
    root
  • package vexiiriscv
    Definition Classes
    root
  • package test
    Definition Classes
    vexiiriscv
  • class WhiteboxerPlugin extends FiberPlugin

    This plugin is here to ease and "standardise" the way a simulation can look at a VexiiRiscv core and figure out what it is doing.

    This plugin is here to ease and "standardise" the way a simulation can look at a VexiiRiscv core and figure out what it is doing. It also generate a large set of easy to read signals that can be read in a waveform.

    All the "Proxy" are there to reduce the overhead of reading hardware signals in a SpinalHDL simulation.

    Definition Classes
    test
  • Logic
  • RefOwnerType

class Logic extends Area

Linear Supertypes
Area, OverridedEqualsHashCode, ValCallbackRec, ValCallback, NameableByComponent, Nameable, ContextUser, ScalaLocated, GlobalDataUser, OwnableRef, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Logic
  2. Area
  3. OverridedEqualsHashCode
  4. ValCallbackRec
  5. ValCallback
  6. NameableByComponent
  7. Nameable
  8. ContextUser
  9. ScalaLocated
  10. GlobalDataUser
  11. OwnableRef
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Logic()

Type Members

  1. class CompletionProxy extends AnyRef
  2. class CsrProxy extends AnyRef
  3. class DecodeProxy extends AnyRef
  4. class DispatchProxy extends AnyRef
  5. class ExecuteProxy extends AnyRef
  6. class FetchProxy extends AnyRef
  7. class FlushProxy extends AnyRef
  8. class LearnProxy extends AnyRef
  9. class LoadExecuteProxy extends AnyRef
  10. class PerfProxy extends AnyRef
  11. abstract class Proxies extends AnyRef
  12. abstract type RefOwnerType
    Definition Classes
    OwnableRef
  13. class RfWriteProxy extends AnyRef
  14. class SerializedProxy extends AnyRef
  15. class StoreBroadcastProxy extends AnyRef
  16. class StoreCommitProxy extends AnyRef
  17. class StoreConditionalProxy extends AnyRef
  18. class TrapProxy extends AnyRef

Value Members

  1. val _context: Capture
    Definition Classes
    Area
  2. val buildBefore: RetainerGroup
  3. def childNamePriority: Byte
    Definition Classes
    Area
  4. val commits: Area { ... /* 7 definitions in type refinement */ }
  5. val completions: Area { val ports: Seq[spinal.lib.Flow[vexiiriscv.execute.CompletionPayload]] }
  6. def component: Component
    Definition Classes
    ContextUser
  7. val csr: Option[Area { ... /* 3 definitions in type refinement */ }]
  8. val decodes: IndexedSeq[Area { ... /* 7 definitions in type refinement */ }]
  9. val dispatches: Seq[Area { ... /* 4 definitions in type refinement */ }]
  10. val dpp: DecodePipelinePlugin
  11. def equals(obj: Any): Boolean
    Definition Classes
    OverridedEqualsHashCode → AnyRef → Any
  12. val executes: Seq[Area { ... /* 4 definitions in type refinement */ }]
  13. val fetch: Area { ... /* 4 definitions in type refinement */ }
  14. def foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
    Definition Classes
    Nameable
  15. val fpp: FetchPipelinePlugin
  16. def getDisplayName(): String
    Definition Classes
    Nameable
  17. def getInstanceCounter: Int
    Definition Classes
    ContextUser
  18. def getName(default: String): String
    Definition Classes
    NameableByComponent → Nameable
  19. def getName(): String
    Definition Classes
    NameableByComponent → Nameable
  20. def getPartialName(): String
    Definition Classes
    Nameable
  21. def getPath(from: Component, to: Component): Seq[Component]
    Definition Classes
    NameableByComponent
  22. def getRefOwnersChain(): List[Any]
    Definition Classes
    OwnableRef
  23. def getScalaLocationLong: String
    Definition Classes
    ScalaLocated
  24. def getScalaLocationShort: String
    Definition Classes
    ScalaLocated
  25. def getScalaTrace(): Throwable
    Definition Classes
    ScalaLocated
  26. val globalData: GlobalData
    Definition Classes
    GlobalDataUser
  27. def hashCode(): Int
    Definition Classes
    OverridedEqualsHashCode → AnyRef → Any
  28. def isCompletelyUnnamed: Boolean
    Definition Classes
    Nameable
  29. final def isNamed: Boolean
    Definition Classes
    Nameable
  30. def isPriorityApplicable(namePriority: Byte): Boolean
    Definition Classes
    Nameable
  31. def isUnnamed: Boolean
    Definition Classes
    NameableByComponent → Nameable
  32. val loadExecute: Area { ... /* 8 definitions in type refinement */ }
  33. val name: String
    Definition Classes
    Nameable
  34. def overrideLocalName(name: String): Logic.this.type
    Definition Classes
    Nameable
  35. val parentScope: ScopeStatement
    Definition Classes
    ContextUser
  36. val pbp: PipelineBuilderPlugin
  37. val perf: Area { ... /* 9 definitions in type refinement */ }
  38. val prediction: Area { ... /* 2 definitions in type refinement */ }
  39. val refOwner: RefOwnerType
    Definition Classes
    OwnableRef
    Annotations
    @DontName()
  40. def reflectNames(): Unit
    Definition Classes
    Nameable
  41. val reschedules: Area { ... /* 2 definitions in type refinement */ }
  42. def rework[T](body: ⇒ T): T
    Definition Classes
    Area
  43. val rfWrites: Area { val ports: Seq[spinal.lib.Flow[vexiiriscv.regfile.RegFileWriter]] }
  44. val scalaTrace: Throwable
    Definition Classes
    ScalaLocated
  45. def self: Logic
  46. val serializeds: IndexedSeq[Area { ... /* 7 definitions in type refinement */ }]
  47. def setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Logic.this.type
    Definition Classes
    Nameable
  48. def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Logic.this.type
    Definition Classes
    Nameable
  49. def setCompositeName(nameable: Nameable, postfix: String): Logic.this.type
    Definition Classes
    Nameable
  50. def setCompositeName(nameable: Nameable, namePriority: Byte): Logic.this.type
    Definition Classes
    Nameable
  51. def setCompositeName(nameable: Nameable, weak: Boolean): Logic.this.type
    Definition Classes
    Nameable
  52. def setCompositeName(nameable: Nameable): Logic.this.type
    Definition Classes
    Nameable
  53. def setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): Logic.this.type
    Definition Classes
    Nameable
  54. def setName(name: String, namePriority: Byte): Logic.this.type
    Definition Classes
    Nameable
  55. def setName(name: String, weak: Boolean): Logic.this.type
    Definition Classes
    Nameable
  56. def setName(name: String): Logic.this.type
    Definition Classes
    Nameable
  57. def setNameAsWeak(): Logic.this.type
    Definition Classes
    Nameable
  58. def setPartialName(name: String, namePriority: Byte, owner: Any): Logic.this.type
    Definition Classes
    Nameable
  59. def setPartialName(name: String, namePriority: Byte): Logic.this.type
    Definition Classes
    Nameable
  60. def setPartialName(name: String, weak: Boolean): Logic.this.type
    Definition Classes
    Nameable
  61. def setPartialName(owner: Nameable, name: String, namePriority: Byte): Logic.this.type
    Definition Classes
    Nameable
  62. def setPartialName(owner: Nameable, name: String, weak: Boolean): Logic.this.type
    Definition Classes
    Nameable
  63. def setPartialName(name: String): Logic.this.type
    Definition Classes
    Nameable
  64. def setPartialName(owner: Nameable, name: String): Logic.this.type
    Definition Classes
    Nameable
  65. def setPartialName(owner: Nameable): Logic.this.type
    Definition Classes
    Nameable
  66. def setRefOwner(that: Any): Unit
    Definition Classes
    OwnableRef
  67. def setScalaLocated(source: ScalaLocated): Logic.this.type
    Definition Classes
    ScalaLocated
  68. def setWeakName(name: String): Logic.this.type
    Definition Classes
    Nameable
  69. val storeBroadcast: Area { ... /* 5 definitions in type refinement */ }
  70. val storeCommit: Area { ... /* 10 definitions in type refinement */ }
  71. val storeConditional: Area { ... /* 6 definitions in type refinement */ }
  72. def toString(): String
    Definition Classes
    Area → Nameable → AnyRef → Any
  73. val trap: Area { val ports: scala.collection.immutable.IndexedSeq[spinal.core.Area{val priv: spinal.core.Area{val pending: spinal.core.Area{val requests: scala.collection.mutable.ArrayBuffer[vexiiriscv.misc.AgedArbiterUp[vexiiriscv.misc.Trap]]; val arbiter: vexiiriscv.misc.AgedArbiter[vexiiriscv.misc.Trap]; val state: vexiiriscv.misc.Trap; val pc: spinal.core.UInt; val history: spinal.core.Bits; val slices: spinal.core.UInt; val xret: spinal.core.Area{val sourcePrivilege: spinal.core.UInt; val targetPrivilege: spinal.core.UInt}}; val exception: spinal.core.Area{val exceptionTargetPrivilegeUncapped: spinal.core.UInt; val code: spinal.core.Bits; val targetPrivilege: spinal.core.UInt}; val trigger: spinal.core.Area{val lanes: Seq[vexiiriscv.execute.ExecuteLanePlugin]; val oh: spinal.core.Bits; val valid: spinal.core.Bool; val reader: spinal.lib.TraversableOnceAnyPimped[spinal.lib.misc.pipeline.CtrlLaneApi#NodeMirror]#ReaderOh}; val whitebox: spinal.core.Area{val trap: spinal.core.Bool; val interrupt: spinal.core.Bool; val code: spinal.core.Bits}; val historyPort: spinal.lib.Flow[vexiiriscv.prediction.HistoryJump]; val pcPort: spinal.lib.Flow[vexiiriscv.fetch.JumpCmd]; val fsm: spinal.lib.fsm.StateMachine{val RESET: spinal.lib.fsm.State; val RUNNING: spinal.lib.fsm.State; val PROCESS: spinal.lib.fsm.State; val TRAP_EPC: spinal.lib.fsm.State; val TRAP_TVAL: spinal.lib.fsm.State; val TRAP_TVEC: spinal.lib.fsm.State; val TRAP_APPLY: spinal.lib.fsm.State; val XRET_EPC: spinal.lib.fsm.State; val XRET_APPLY: spinal.lib.fsm.State; val ATS_RSP: spinal.lib.fsm.State; val JUMP: spinal.lib.fsm.State; val LSU_FLUSH: spinal.lib.fsm.State; val FETCH_FLUSH: spinal.lib.fsm.State; val ENTER_DEBUG: spinal.lib.fsm.State; val DPC_READ: spinal.lib.fsm.State; val RESUME: spinal.lib.fsm.State; val inflightTrap: spinal.core.Bool; val holdPort: spinal.core.Bool; val wfi: spinal.core.Bool; val buffer: spinal.core.Area{val sampleIt: spinal.core.Bool; def sample[T <: spinal.core.Data](that: T): T; val i: spinal.core.Area{val valid: spinal.core.Bool; val code: spinal.core.Bits; val targetPrivilege: spinal.core.UInt}; val trap: spinal.core.Area{val interrupt: spinal.core.Bool; val targetPrivilege: spinal.core.UInt; val tval: spinal.core.Bits; val code: spinal.core.Bits}}; val resetToRunConditions: scala.collection.mutable.ArrayBuffer[spinal.core.Bool]; val atsPorts: spinal.core.Area{val refill: vexiiriscv.memory.AddressTranslationRefill; val invalidate: vexiiriscv.memory.AddressTranslationInvalidation; val invalidated: spinal.core.Bool}; val jumpTarget: spinal.core.UInt; val jumpOffset: spinal.core.UInt; val trapEnterDebug: spinal.core.Bool; val triggerEbreak: spinal.core.Bool; val triggerEbreakReg: spinal.core.Bool; val readed: spinal.core.Bits; val xretPrivilege: spinal.core.UInt}}; val valid: spinal.core.Bool; val interrupt: spinal.core.Bool; val cause: spinal.core.Bits}] }
  74. def unsetName(): Logic.this.type
    Definition Classes
    Nameable
  75. def valCallback[T](ref: T, name: String): T
    Definition Classes
    ValCallbackRec → ValCallback
  76. def valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
    Definition Classes
    ValCallbackRec
  77. def valCallbackRec(obj: Any, name: String): Unit
    Definition Classes
    Area → ValCallbackRec
  78. val wfi: Bits
  79. val withCsr: Boolean
  80. def wrap[T <: Data](that: T): T