trait Data extends ContextUser with NameableByComponent with Assignable with SpinalTagReady with GlobalDataUser with ScalaLocated with OwnableRef with OverridedEqualsHashCode with InComponent
- Alphabetic
- By Inheritance
- Data
- InComponent
- OverridedEqualsHashCode
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract type RefOwnerType
- Definition Classes
- OwnableRef
Abstract Value Members
- abstract def asBits: Bits
Cast signal to Bits
- abstract def assignFromBits(bits: Bits, hi: Int, low: Int): Unit
- abstract def assignFromBits(bits: Bits): Unit
- abstract def assignFromImpl(that: AnyRef, target: AnyRef, kind: AnyRef)(implicit loc: Location): Unit
- Attributes
- protected
- Definition Classes
- Assignable
- abstract def flatten: Seq[BaseType]
- abstract def flattenLocalName: Seq[String]
- abstract def freeze(): Data.this.type
- abstract def getBitsWidth: Int
Return the width of the data
- abstract def getZero: Data.this.type
Create a signal set to 0
- abstract def setAsComb(): Data.this.type
Set baseType to Combinatorial
- abstract def setAsReg(): Data.this.type
Set baseType to reg
- abstract def unfreeze(): Data.this.type
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def ##(right: Data): Bits
Concatenation between two signals
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def #*(count: Int): Bits
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def IFparent: Data
- val _spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- def addAttribute(attribute: Attribute): Data.this.type
- Definition Classes
- Data → SpinalTagReady
- def addAttribute(name: String, value: Int): Data.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String, value: String): Data.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String): Data.this.type
- Definition Classes
- SpinalTagReady
- def addTag[T <: SpinalTag](spinalTag: T): Data.this.type
- Definition Classes
- SpinalTagReady
- def addTags(h: SpinalTag, tail: SpinalTag*): Data.this.type
- Definition Classes
- SpinalTagReady
- def addTags[T <: SpinalTag](tags: Iterable[T]): Data.this.type
- Definition Classes
- SpinalTagReady
- def allowDirectionLessIo(): Data.this.type
Allow a signal of an io
Bundle
to be directionless.Allow a signal of an io
Bundle
to be directionless.- See also
- def allowOverride(): Data.this.type
Allow a signal to be overridden.
Allow a signal to be overridden.
- def allowPartialyAssigned(): Data.this.type
Allow a register to be partially assigned
- def allowPruning(): Data.this.type
- def allowSimplifyIt(): Data.this.type
- def allowUnsetRegToAvoidLatch(): Data.this.type
Allow a register to have only an init (no assignments)
Allow a register to have only an init (no assignments)
- def as[T <: Data](dataType: HardType[T]): T
- def asData: Data
- def asInOut(): Data.this.type
Set a signal as
inout
- def asInput(): Data.this.type
Set a data as input
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def asOutput(): Data.this.type
Set a data as output
- def assignDontCare(): Data.this.type
- def assignDontCareToUnasigned(): Data.this.type
- def assignFormalRandom(kind: RandomExpKind): Unit
- final def assignFrom(that: AnyRef, target: AnyRef = this)(implicit loc: Location): Unit
- def assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
- def clearAll(): Data.this.type
- def clone(): Data
- Definition Classes
- Data → AnyRef
- def component: Component
- Definition Classes
- ContextUser
- final def compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef)(implicit loc: Location): Unit
- Definition Classes
- Assignable
- val compositeAssign: Assignable
- Definition Classes
- Assignable
- def copyDirectionOfImpl(that: Data): Data.this.type
- def dirString(): String
- def dontSimplifyIt(): Data.this.type
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- def existsTag(cond: (SpinalTag) => Boolean): Boolean
- Definition Classes
- SpinalTagReady
- def filterTag(cond: (SpinalTag) => Boolean): Iterable[SpinalTag]
- Definition Classes
- SpinalTagReady
- def findTag(cond: (SpinalTag) => Boolean): Option[SpinalTag]
- Definition Classes
- SpinalTagReady
- def flattenForeach(body: (BaseType) => Unit): Unit
- def flip(): Data.this.type
Flip the direction of the signal.
Flip the direction of the signal.
in
andout
are swapped,inout
stay the same. - def foreachReflectableNameables(doThat: (Any) => Unit): Unit
- Definition Classes
- Nameable
- def foreachTag(body: (SpinalTag) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def getAheadValue(): Data.this.type
For a register, get the value it will have at the next clock, as a combinational signal.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def getComponent(): Component
- Definition Classes
- Data → InComponent → NameableByComponent
- def getComponents(): Seq[Component]
Get current component with all parents
Get current component with all parents
- Definition Classes
- InComponent
- def getDirection: IODirection
- def getDisplayName(): String
- Definition Classes
- Nameable
- def getInstanceCounter: Int
- Definition Classes
- ContextUser
- def getMode: Byte
- Attributes
- protected
- Definition Classes
- Nameable
- def getMuxType[T <: Data](list: TraversableOnce[T]): HardType[T]
- def getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
- def getName(): String
- Definition Classes
- NameableByComponent → Nameable
- def getPartialName(): String
- Definition Classes
- Nameable
- def getPath(from: Component, to: Component): Seq[Component]
- Definition Classes
- NameableByComponent
- def getRealSource: Any
- Definition Classes
- Assignable
- def getRealSourceNoRec: Any
- Definition Classes
- Data → Assignable
- def getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
- def getRootParent: Data
- def getRtlPath(separator: String = "/"): String
- def getScalaLocationLong: String
- Definition Classes
- ScalaLocated
- def getScalaLocationShort: String
- Definition Classes
- ScalaLocated
- def getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
- def getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
- def getTags(): LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- val globalData: GlobalData
- Definition Classes
- GlobalDataUser
- def hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
- Definition Classes
- SpinalTagReady
- def hasTag(spinalTag: SpinalTag): Boolean
- Definition Classes
- SpinalTagReady
- def hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- final def initFrom(that: AnyRef, target: AnyRef = this): Unit
- def instanceAttributes(language: Language): Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def instanceAttributes: Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def isAnalog: Boolean
- def isComb: Boolean
- def isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
- def isDirectionLess: Boolean
- def isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
- def isInOut: Boolean
- def isInput: Boolean
- def isInputOrInOut: Boolean
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isNamed: Boolean
- Definition Classes
- Nameable
- def isOutput: Boolean
- def isOutputOrInOut: Boolean
- def isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
- def isReg: Boolean
- def isRegOnAssign: Boolean
- def isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
- val name: String
- Definition Classes
- Nameable
- val nameableRef: Nameable
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noBackendCombMerge(): Data.this.type
Put the combinatorial logic driving this signal in a separate process
- def noCombLoopCheck(): Data.this.type
Disable combinatorial loop checking for this Data
Disable combinatorial loop checking for this Data
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def onEachAttributes(doIt: (Attribute) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def overrideLocalName(name: String): Data.this.type
- Definition Classes
- Nameable
- val parent: Data
- val parentScope: ScopeStatement
- Definition Classes
- ContextUser
- def pull(propagateName: Boolean): Data.this.type
- def pull(): Data.this.type
Pull a signal to the top level (use for debugging)
- def purify(): Data.this.type
- def randBoot(u: Unit): Data.this.type
Useful for register that doesn't need a reset value in RTL, but need a random value for simulation (avoid x-propagation)
- val refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
- def reflectNames(): Unit
- Definition Classes
- Nameable
- def removeAssignments(data: Boolean = true, init: Boolean = true, initial: Boolean = true): Data.this.type
- def removeDataAssignments(): Data.this.type
- def removeInitAssignments(): Data.this.type
- def removeTag(spinalTag: SpinalTag): Data.this.type
- Definition Classes
- SpinalTagReady
- def removeTags(tags: Iterable[SpinalTag]): Data.this.type
- Definition Classes
- SpinalTagReady
- def resized: Data.this.type
Return a version of the signal which is allowed to be automatically resized where needed.
Return a version of the signal which is allowed to be automatically resized where needed.
The resize operation is deferred until the point of assignment later. The resize may widen or truncate, retaining the LSB.
- See also
- def rootIF(): Interface
root interface
- def rootIFList(): List[Interface]
- def rootIFrec(now: Data, lastRoot: List[Interface]): List[Interface]
- val scalaTrace: Throwable
- Definition Classes
- ScalaLocated
- def setAll(): Data.this.type
- def setAsAnalog(): Data.this.type
- def setAsDirectionLess(): Data.this.type
Remove the direction (
in
,out
,inout
) to a signal - def setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Data.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Data.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String): Data.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, namePriority: Byte): Data.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, weak: Boolean): Data.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable): Data.this.type
- Definition Classes
- Nameable
- def setLambdaName(isNameBody: => Boolean)(nameGen: => String): Data.this.type
- Definition Classes
- Nameable
- def setName(name: String, namePriority: Byte): Data.this.type
- Definition Classes
- Nameable
- def setName(name: String, weak: Boolean): Data.this.type
- Definition Classes
- Nameable
- def setName(name: String): Data.this.type
- Definition Classes
- Nameable
- def setNameAsWeak(): Data.this.type
- Definition Classes
- Nameable
- def setOutputAsReg(): Data.this.type
Recursively set baseType to reg only for output
- def setPartialName(name: String, namePriority: Byte, owner: Any): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, namePriority: Byte): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, weak: Boolean): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, namePriority: Byte): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, weak: Boolean): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String): Data.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable): Data.this.type
- Definition Classes
- Nameable
- def setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
- def setScalaLocated(source: ScalaLocated): Data.this.type
- Definition Classes
- ScalaLocated
- def setWeakName(name: String): Data.this.type
- Definition Classes
- Nameable
- def spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toIo(): Data.this.type
- def toMuxInput[T <: Data](muxOutput: T): T
- def toString(): String
- Definition Classes
- Nameable → AnyRef → Any
- def unsetName(): Data.this.type
- Definition Classes
- Nameable
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def wrapNext(): Data.this.type
Deprecated Value Members
- def asDirectionLess(): Data.this.type
- Annotations
- @deprecated
- Deprecated
(Since version ???) use setAsDirectionLess instead
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- def genIf(cond: Boolean): Data.this.type
Generate this if condition is true
Generate this if condition is true
- Annotations
- @deprecated
- Deprecated
does not work with <>, use 'someBool generate Type()' or 'if(condition) Type() else null' instead