class PackedWordBundle extends PackedBundle
An enhanced form of PackedBundle with Word-centric packing. Offers all the same implicit packing assignment functions, but applies packing to an assigned word. - inWord(WordIndex) - Indicates which word to pack into. Must be used after a pack assigment. If no pack range was given then the entire data length will be assumed. Ranges that exceed the word will wrap into subsequent words.
Like PackedBundle, providing no pack or word assignments will place data immediately after the last.
val wordPacked = PackedWordBundle(8 bits) { val aNumber = UInt(8 bits).word(0) // Bits 7 downto 0 val bNumber = UInt(8 bits).pack(0 to 7).word(1) // Bits 8 to 15 val large = Bits(18 bits).word(2) // Bits 33 downto 16 val flag = Bool() // Bit 34
- Alphabetic
- By Inheritance
- PackedWordBundle
- PackedBundle
- Bundle
- ValCallbackRec
- ValCallback
- MultiData
- Data
- InComponent
- OverridedEqualsHashCode
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
PackedWordBundle(wordWidth: BitCount)
- wordWidth
Width of a word, as BitCount
Type Members
-
implicit
class
DataPositionEnrich[T <: Data] extends AnyRef
- Definition Classes
- PackedBundle
-
class
TagBitPackExact extends SpinalTag
- Definition Classes
- PackedBundle
-
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
- implicit class WordEnrich[T <: Data] extends AnyRef
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
##(right: Data): Bits
- Definition Classes
- Data
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
#*(count: Int): Bits
- Definition Classes
- Data
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
IFparent: Data
- Definition Classes
- Data
-
val
_spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
addAttribute(attribute: Attribute): PackedWordBundle.this.type
- Definition Classes
- Data → SpinalTagReady
-
def
addAttribute(name: String, value: Int): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String, value: String): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
addTag[T <: SpinalTag](spinalTag: T): PackedWordBundle.this.type
- Definition Classes
- MultiData → SpinalTagReady
-
def
addTags(h: SpinalTag, tail: SpinalTag*): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
addTags[T <: SpinalTag](tags: Iterable[T]): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
allowDirectionLessIo(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
allowOverride(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
allowPartialyAssigned(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
allowPruning(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
allowSimplifyIt(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
allowUnsetRegToAvoidLatch(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
as[T <: Data](dataType: HardType[T]): T
- Definition Classes
- Data
-
def
asBits: Bits
- Definition Classes
- MultiData → Data
-
def
asData: Data
- Definition Classes
- Data
-
def
asInOut(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
asInput(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
asOutput(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
assignAllByName(that: Bundle): Unit
- Definition Classes
- Bundle
-
def
assignDontCare(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
assignDontCareToUnasigned(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
assignFormalRandom(kind: RandomExpKind): Unit
- Definition Classes
- MultiData → Data
-
final
def
assignFrom(that: AnyRef, target: AnyRef)(implicit loc: Location): Unit
- Definition Classes
- Data
-
def
assignFromBits(bits: Bits, hi: Int, lo: Int): Unit
- Definition Classes
- MultiData → Data
-
def
assignFromBits(bits: Bits): Unit
- Definition Classes
- MultiData → Data
-
def
assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
- Definition Classes
- Data
-
def
assignFromImpl(that: AnyRef, target: AnyRef, kind: AnyRef)(implicit loc: Location): Unit
- Attributes
- protected
- Definition Classes
- Bundle → Assignable
-
def
assignSomeByName(that: Bundle): Unit
- Definition Classes
- Bundle
-
def
assignUnassignedByName(that: MultiData): Unit
- Definition Classes
- MultiData
-
def
bundleAssign(that: Bundle)(f: (Data, Data) ⇒ Unit): Unit
- Definition Classes
- Bundle
-
def
checkDir(that: Bundle): Boolean
- Definition Classes
- Bundle
-
def
clearAll(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
clone(): Bundle
- Definition Classes
- Bundle → 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): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
dirString(): String
- Definition Classes
- Data
-
def
dontSimplifyIt(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
elements: ArrayBuffer[(String, Data)]
- Definition Classes
- Bundle → MultiData
-
var
elementsCache: ArrayBuffer[(String, Data)]
- Definition Classes
- Bundle
-
def
elementsString: String
- Definition Classes
- MultiData
-
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
find(name: String): Data
- Definition Classes
- MultiData
-
def
findTag(cond: (SpinalTag) ⇒ Boolean): Option[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
flatten: Seq[BaseType]
- Definition Classes
- MultiData → Data
-
def
flattenForeach(body: (BaseType) ⇒ Unit): Unit
- Definition Classes
- MultiData → Data
-
def
flattenLocalName: Seq[String]
- Definition Classes
- MultiData → Data
-
def
flip(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
- Definition Classes
- Nameable
-
def
foreachTag(body: (SpinalTag) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
-
def
freeze(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
getAheadValue(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
getBitsWidth: Int
- Definition Classes
- MultiData → Data
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
getComponent(): Component
- Definition Classes
- Data → InComponent → NameableByComponent
-
def
getComponents(): Seq[Component]
- Definition Classes
- InComponent
-
def
getDirection: IODirection
- Definition Classes
- Data
-
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]
- Definition Classes
- Data
-
def
getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getName(): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getPackedWidth: Int
- Definition Classes
- PackedBundle
-
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
- Definition Classes
- Data
-
def
getRtlPath(separator: String): String
- Definition Classes
- Data
-
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
-
def
getTypeString: String
- Definition Classes
- Bundle
-
def
getZero: PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
-
var
hardtype: HardType[_]
- Definition Classes
- Bundle
-
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): Unit
- Definition Classes
- Data
-
def
instanceAttributes(language: Language): Iterable[Attribute]
- Definition Classes
- SpinalTagReady
-
def
instanceAttributes: Iterable[Attribute]
- Definition Classes
- SpinalTagReady
-
def
isAnalog: Boolean
- Definition Classes
- Data
-
def
isComb: Boolean
- Definition Classes
- Data
-
def
isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
-
def
isDirectionLess: Boolean
- Definition Classes
- Data
-
def
isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
-
def
isInOut: Boolean
- Definition Classes
- Data
-
def
isInput: Boolean
- Definition Classes
- Data
-
def
isInputOrInOut: Boolean
- Definition Classes
- Data
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
isNamed: Boolean
- Definition Classes
- Nameable
-
def
isOutput: Boolean
- Definition Classes
- Data
-
def
isOutputOrInOut: Boolean
- Definition Classes
- Data
-
def
isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
-
def
isReg: Boolean
- Definition Classes
- Data
-
def
isRegOnAssign: Boolean
- Definition Classes
- Data
-
def
isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
-
def
mappings: ArrayBuffer[(Range, Data)]
Gets the mappings of Range to Data for this PackedBundle
Gets the mappings of Range to Data for this PackedBundle
- returns
Seq of (Range,Data) for all elements
- Definition Classes
- PackedBundle
-
val
name: String
- Definition Classes
- Nameable
-
val
nameableRef: Nameable
- Attributes
- protected
- Definition Classes
- Nameable
- Annotations
- @DontName()
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
noBackendCombMerge(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
noCombLoopCheck(): PackedWordBundle.this.type
- Definition Classes
- 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): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
packed: Bits
- Definition Classes
- PackedBundle
-
val
parent: Data
- Definition Classes
- Data
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
-
def
pull(propagateName: Boolean): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
pull(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
purify(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
randBoot(u: Unit): PackedWordBundle.this.type
- Definition Classes
- Data
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
-
def
reflectNames(): Unit
- Definition Classes
- Nameable
-
def
removeAssignments(data: Boolean, init: Boolean, initial: Boolean): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
removeDataAssignments(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
removeInitAssignments(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
removeTag(spinalTag: SpinalTag): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
removeTags(tags: Iterable[SpinalTag]): PackedWordBundle.this.type
- Definition Classes
- SpinalTagReady
-
def
resized: PackedWordBundle.this.type
- Definition Classes
- Data
-
def
rootIF(): Interface
- Definition Classes
- Data
-
def
rootIFList(): List[Interface]
- Definition Classes
- Data
-
def
rootIFrec(now: Data, lastRoot: List[Interface]): List[Interface]
- Definition Classes
- Data
-
val
scalaTrace: Throwable
- Definition Classes
- ScalaLocated
-
def
setAll(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
setAsAnalog(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
setAsComb(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
setAsDirectionLess(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
setAsReg(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setNameAsWeak(): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setOutputAsReg(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): PackedWordBundle.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
skipOver(count: BitCount): Unit
Skips over the specified number of bits.
Skips over the specified number of bits. The next unspecified field will be placed starting
count
number of bits after the last placed field.- count
Number of bits to skip over
- Attributes
- protected
- Definition Classes
- PackedBundle
-
def
spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toIo(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
toMuxInput[T <: Data](muxOutput: T): T
- Definition Classes
- Data
-
def
toString(): String
- Definition Classes
- Bundle → Nameable → AnyRef → Any
-
def
unfreeze(): PackedWordBundle.this.type
- Definition Classes
- MultiData → Data
-
def
unpack(bits: Bits, hi: Int, lo: Int): Unit
- Definition Classes
- PackedBundle
-
def
unpack(bits: Bits): Unit
- Definition Classes
- PackedBundle
-
def
unsetName(): PackedWordBundle.this.type
- Definition Classes
- Nameable
-
def
valCallback[T](ref: T, name: String): T
- Definition Classes
- ValCallbackRec → ValCallback
-
def
valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
- Definition Classes
- ValCallbackRec
-
def
valCallbackRec(ref: Any, name: String): Unit
- Definition Classes
- PackedBundle → Bundle → ValCallbackRec
-
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(): PackedWordBundle.this.type
- Definition Classes
- Data
-
def
zipByName(that: MultiData, rec: ArrayBuffer[(BaseType, BaseType)]): ArrayBuffer[(BaseType, BaseType)]
- Definition Classes
- MultiData
Deprecated Value Members
-
def
asDirectionLess(): PackedWordBundle.this.type
- Definition Classes
- Data
- 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): PackedWordBundle.this.type
- Definition Classes
- Data
- Annotations
- @deprecated
- Deprecated
does not work with <>, use 'someBool generate Type()' or 'if(condition) Type() else null' instead