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
- All
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[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- 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
-
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