abstract class BitVector extends BaseType with Widthable
BitVector is a family of types for storing multiple bits of information in a single value. This type has three subtypes that can be used to model different behaviours:
- Bits
- UInt (unsigned integer)
- SInt (signed integer)
- See also
- Alphabetic
- By Inheritance
- BitVector
- Widthable
- WidthProvider
- BaseType
- Expression
- StatementDoubleLinkedContainer
- DoubleLinkedContainer
- DeclarationStatement
- LeafStatement
- Statement
- BaseNode
- ExpressionContainer
- Data
- InComponent
- OverridedEqualsHashCode
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new BitVector()
Type Members
-
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
-
abstract
type
T <: BitVector
Used to know the data type of the children class of BitVector
Abstract Value Members
-
abstract
def
apply(offset: UInt, bitCount: BitCount): BitVector.this.type
Return a range of bits at offset and of width bitCount
Return a range of bits at offset and of width bitCount
val myBool = myBits(myUInt, 2 bits)
Example: -
abstract
def
apply(offset: Int, bitCount: BitCount): BitVector.this.type
Return a range of bits at offset and of width bitCount
Return a range of bits at offset and of width bitCount
val myBool = myBits(3, 2 bits)
Example: -
abstract
def
apply(bitId: UInt): Bool
Return the bit at index bitId
Return the bit at index bitId
val myBool = myBits(myUInt)
Example: -
abstract
def
apply(bitId: Int): Bool
Return the bit at index bitId
Return the bit at index bitId
val myBool = myBits(3)
Example: -
abstract
def
asBits: Bits
Cast data to Bits
Cast data to Bits
- Definition Classes
- Data
-
abstract
def
assignFromBits(bits: Bits, hi: Int, low: Int): Unit
- Definition Classes
- Data
-
abstract
def
assignFromBits(bits: Bits): Unit
- Definition Classes
- Data
- abstract def getAllTrue: BitVector.this.type
-
abstract
def
getTypeObject: Any
- Definition Classes
- Expression
-
abstract
def
getZero: BitVector.this.type
Create a data set to 0
Create a data set to 0
- Definition Classes
- Data
- abstract def getZeroUnconstrained: BitVector.this.type
-
abstract
def
opName: String
- Definition Classes
- Expression
- abstract def resize(width: BitCount): BitVector
-
abstract
def
resize(width: Int): BitVector
Resize the bitVector to width
Resize the bitVector to width
- returns
a resized bitVector
val res = myBits.resize(10)
Example: - abstract def reversed: BitVector.this.type
-
abstract
def
rotateLeft(that: Int): T
Left rotation of that bits
-
abstract
def
rotateRight(that: Int): T
Right rotation of that bits
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
##(right: Data): Bits
Concatenation between two data
Concatenation between two data
- Definition Classes
- Data
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
#*(count: Int): Bits
- Definition Classes
- Data
-
def
=/=(that: MaskedLiteral): Bool
BitVector is not equal to MaskedLiteral
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
===(that: MaskedLiteral): Bool
Compare a BitVector with a MaskedLiteral (M"110--0")
Compare a BitVector with a MaskedLiteral (M"110--0")
- that
the maskedLiteral
- returns
a Bool data containing the result of the comparison
val myBool = myBits === M"0-1"
Example: -
def
IFparent: Data
- Definition Classes
- Data
-
val
_spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
addAttribute(attribute: Attribute): BitVector.this.type
- Definition Classes
- BaseType → Data → SpinalTagReady
-
def
addAttribute(name: String, value: Int): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String, value: String): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
addTag[T <: SpinalTag](spinalTag: T): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
addTags(h: SpinalTag, tail: SpinalTag*): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
addTags[T <: SpinalTag](tags: Iterable[T]): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
val
algoIncrementale: Int
- Definition Classes
- BaseNode
-
val
algoInt: Int
- Definition Classes
- BaseNode
-
def
allowDirectionLessIo(): BitVector.this.type
Allow a Data of an io Bundle to be directionless
Allow a Data of an io Bundle to be directionless
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/iobundle.html
- Definition Classes
- Data
-
def
allowOverride(): BitVector.this.type
Allow a Data to be overriden
Allow a Data to be overriden
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/assignment_overlap.html
- Definition Classes
- Data
-
def
allowPartialyAssigned(): BitVector.this.type
Allow a register to be partially assigned
Allow a register to be partially assigned
- Definition Classes
- Data
-
def
allowPruning(): BitVector.this.type
- Definition Classes
- Data
- def allowSimplifyIt(): BitVector.this.type
-
def
allowUnsetRegToAvoidLatch(): BitVector.this.type
Allow a register to have only an init (no assignments)
Allow a register to have only an init (no assignments)
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/unassigned_register.html#register-with-only-init
- Definition Classes
- Data
- def andMask(that: Bool): BitVector.this.type
-
def
andR: Bool
Logical AND of all bits
-
def
apply(range: Range): BitVector.this.type
Return a range of bits
Return a range of bits
val myBool = myBits(3 downto 1)
Example: -
def
as[T <: Data](dataType: HardType[T]): T
- Definition Classes
- Data
- def asBool: Bool
-
def
asBools: Vec[Bool]
Cast the BitVector into a Vector of Bool
Cast the BitVector into a Vector of Bool
- returns
a vector of Bool
-
def
asData: Data
- Definition Classes
- Data
-
def
asInOut(): BitVector.this.type
set a data as inout
-
def
asInput(): BitVector.this.type
Set a data as input
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
asOutput(): BitVector.this.type
Set a data as output
-
def
assignDontCare(): BitVector.this.type
- Definition Classes
- Data
-
def
assignDontCareToUnasigned(): BitVector.this.type
- Definition Classes
- Data
-
def
assignFormalRandom(kind: RandomExpKind): Unit
- Definition Classes
- Data
-
final
def
assignFrom(that: AnyRef, target: AnyRef = this)(implicit loc: Location): Unit
- Definition Classes
- 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
- BaseType → Assignable
- def bitsRange: Range
-
def
cldCount: Int
- Definition Classes
- DoubleLinkedContainer
-
def
clearAll(): BitVector.this.type
Clear all bits
-
var
clockDomain: ClockDomain
- Definition Classes
- BaseType
- def clone(): BitVector.this.type
-
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): BitVector.this.type
-
def
dirString(): String
- Definition Classes
- Data
-
def
dlcAppend(that: AssignmentStatement): BitVector.this.type
- Definition Classes
- DoubleLinkedContainer
-
def
dlcForeach[T >: AssignmentStatement](func: (T) ⇒ Unit): Unit
- Definition Classes
- DoubleLinkedContainer
-
def
dlcHasOnlyOne: Boolean
- Definition Classes
- DoubleLinkedContainer
-
val
dlcHead: AssignmentStatement
- Definition Classes
- DoubleLinkedContainer
-
def
dlcIsEmpty: Boolean
- Definition Classes
- DoubleLinkedContainer
-
val
dlcLast: AssignmentStatement
- Definition Classes
- DoubleLinkedContainer
-
def
dlcPrepend(that: AssignmentStatement): BitVector.this.type
- Definition Classes
- DoubleLinkedContainer
- def dontSimplifyIt(): BitVector.this.type
-
def
drop(n: Int): Bits
Drop lowerst n bits
Drop lowerst n bits
- returns
data10bits(9 downto 4)
val res = data10bits.drop(4)
Example: -
def
dropHigh(n: Int): Bits
Drop highest n bits
Drop highest n bits
- returns
data10bits(5 downto 0)
val res = data10bits.dropHigh(4)
Example: - def dropLow(n: Int): Bits
-
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 flatten: Seq[BaseType]
- def flattenForeach(body: (BaseType) ⇒ Unit): Unit
- def flattenLocalName: Seq[String]
-
def
flip(): BitVector.this.type
flip the direction of the data
flip the direction of the data
- Definition Classes
- Data
- def foreachClockDomain(func: (ClockDomain) ⇒ Unit): Unit
-
def
foreachDrivingExpression(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- ExpressionContainer
-
def
foreachExpression(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- DeclarationStatement → ExpressionContainer
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
- Definition Classes
- Nameable
-
def
foreachStatements(func: (AssignmentStatement) ⇒ Unit): Unit
- Definition Classes
- StatementDoubleLinkedContainer
-
def
foreachTag(body: (SpinalTag) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
- def freeze(): BitVector.this.type
-
def
getAheadValue(): BitVector.this.type
For a register, get the value it will have at the next clock, as a combinational signal.
-
def
getBitsWidth: Int
Return the width of the data
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
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
- Definition Classes
- Data
-
def
getDisplayName(): String
- Definition Classes
- Nameable
-
def
getDrivingReg(reportError: Boolean = true): BitVector.this.type
- Definition Classes
- BaseType
-
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
- 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
getSingleDriver: Option[BitVector.this.type]
- Definition Classes
- BaseType
-
def
getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
-
def
getTags(): LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
getWidth: Int
- Definition Classes
- Widthable → WidthProvider
-
def
getWidthNoInferation: Int
Return the width
- def getWidthStringNoInferation: String
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
-
def
hasAssignement: Boolean
- Definition Classes
- BaseType
-
def
hasDataAssignment: Boolean
- Definition Classes
- BaseType
-
def
hasInit: Boolean
Does the base type have initial value
Does the base type have initial value
- Definition Classes
- BaseType
-
def
hasOnlyOneStatement: Boolean
- Definition Classes
- StatementDoubleLinkedContainer
-
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
-
def
head: AssignmentStatement
- Definition Classes
- StatementDoubleLinkedContainer
-
def
high: Int
Return the upper bound
-
final
def
initFrom(that: AnyRef, target: AnyRef = this): Unit
- Definition Classes
- Data
-
def
initialFrom(that: AnyRef, target: AnyRef = this): Unit
- Definition Classes
- BaseType
-
def
insertNext(s: Statement): Unit
- Definition Classes
- Statement
-
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
- Definition Classes
- Data
-
def
isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
-
def
isFrozen(): Boolean
- Definition Classes
- BaseType
-
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
- def isRegOnAssign: Boolean
-
def
isTypeNode: Boolean
Is the baseType a node
Is the baseType a node
- Definition Classes
- BaseType
- def isUnknown: Bool
-
def
isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
-
def
isUsingResetSignal: Boolean
Is the basetype using reset signal
Is the basetype using reset signal
- Definition Classes
- BaseType
-
def
isUsingSoftResetSignal: Boolean
Is the basetype using soft reset signal
Is the basetype using soft reset signal
- Definition Classes
- BaseType
-
def
isVital: Boolean
Check if the baseType is vital
Check if the baseType is vital
- Definition Classes
- BaseType
-
val
lastScopeStatement: Statement
- Definition Classes
- Statement
-
def
lsb: Bool
Return the least significant bit
-
def
msb: Bool
Return the most significant bit
-
def
mux[T2 <: Data](mappings: (Any, T2)*): T2
- Definition Classes
- BaseType
-
def
muxDc[T2 <: Data](mappings: (Any, T2)*): T2
- Definition Classes
- BaseType
-
def
muxList[T2 <: Data](defaultValue: T2, mappings: Seq[(Any, T2)]): T2
- Definition Classes
- BaseType
-
def
muxList[T2 <: Data](mappings: Seq[(Any, T2)]): T2
- Definition Classes
- BaseType
-
def
muxListDc[T2 <: Data](mappings: Seq[(Any, T2)]): T2
- Definition Classes
- BaseType
-
val
name: String
- Definition Classes
- Nameable
- val nameableRef: Nameable
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
newExtract(offset: UInt, size: Int, extract: BitVectorRangedAccessFloating)(implicit loc: Location): BitVector.this.type
Extract a range of bits of the BitVector
-
def
newExtract(hi: Int, lo: Int, accessFactory: ⇒ BitVectorRangedAccessFixed): BitVector.this.type
Extract a range of bits of the BitVector
-
def
newExtract(bitId: UInt, extract: BitVectorBitAccessFloating): Bool
Extract a bit of the BitVector
-
def
newExtract(bitId: Int, extract: BitVectorBitAccessFixed): Bool
Extract a bit of the BitVector
-
val
nextScopeStatement: Statement
- Definition Classes
- Statement
-
def
noBackendCombMerge(): BitVector.this.type
Put the combinatorial logic driving this signal in a separate process
Put the combinatorial logic driving this signal in a separate process
- Definition Classes
- Data
-
def
noCombLoopCheck(): BitVector.this.type
Disable combinatorial loop checking for this Data
Disable combinatorial loop checking for this Data
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/combinatorial_loop.html
- Definition Classes
- Data
-
def
normalizeInputs: Unit
- Definition Classes
- BaseType → ExpressionContainer
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
def
onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
- def orMask(that: Bool): BitVector.this.type
-
def
orR: Bool
Logical OR of all bits
-
def
overrideLocalName(name: String): BitVector.this.type
- Definition Classes
- Nameable
-
val
parent: Data
- Definition Classes
- Data
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
-
def
pull(propagateName: Boolean): BitVector.this.type
- Definition Classes
- Data
-
def
pull(): BitVector.this.type
Pull a signal to the top level (use for debugging)
Pull a signal to the top level (use for debugging)
- Definition Classes
- Data
-
def
purify(): BitVector.this.type
- Definition Classes
- Data
-
def
randBoot(u: Unit): BitVector.this.type
Useful for register that doesn't need a reset value in RTL, but need a random value for simulation (avoid x-propagation)
Useful for register that doesn't need a reset value in RTL, but need a random value for simulation (avoid x-propagation)
- Definition Classes
- Data
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
-
def
reflectNames(): Unit
- Definition Classes
- Nameable
- def remapClockDomain(func: (ClockDomain) ⇒ ClockDomain): Unit
-
def
remapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- ExpressionContainer
-
def
remapExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- DeclarationStatement → ExpressionContainer
-
def
removeAssignments(data: Boolean = true, init: Boolean = true, initial: Boolean = true): BitVector.this.type
Remove all assignments of the base type
-
def
removeDataAssignments(): BitVector.this.type
- Definition Classes
- Data
-
def
removeInitAssignments(): BitVector.this.type
- Definition Classes
- Data
- def removeStatement(): Unit
-
def
removeStatementFromScope(): Unit
- Definition Classes
- Statement
-
def
removeTag(spinalTag: SpinalTag): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
removeTags(tags: Iterable[SpinalTag]): BitVector.this.type
- Definition Classes
- SpinalTagReady
-
def
resized: BitVector.this.type
Resized data regarding target
Resized data regarding target
- Definition Classes
- Data
-
def
rootIF(): Interface
root interface
root interface
- Definition Classes
- Data
-
def
rootIFList(): List[Interface]
- Definition Classes
- Data
-
def
rootIFrec(now: Data, lastRoot: List[Interface]): List[Interface]
- Definition Classes
- Data
- def rootScopeStatement: ScopeStatement
-
def
rotateLeft(that: UInt): T
Left rotation of that Bits
-
def
rotateRight(that: UInt): T
Right rotation of that Bits
-
val
scalaTrace: Throwable
- Definition Classes
- ScalaLocated
-
def
setAll(): BitVector.this.type
- Definition Classes
- Data
-
def
setAllTo(value: Bool): BitVector.this.type
Set all bits to value
-
def
setAllTo(value: Boolean): BitVector.this.type
Set all bits to value
- def setAsAnalog(): BitVector.this.type
-
def
setAsComb(): BitVector.this.type
Set baseType to Combinatorial
-
def
setAsDirectionLess(): BitVector.this.type
remove the direction (in,out,inout) to a data
-
def
setAsReg(): BitVector.this.type
Set baseType to reg
-
def
setAsTypeNode(): BitVector.this.type
Set baseType to Node
Set baseType to Node
- Definition Classes
- BaseType
-
def
setAsVital(): BitVector.this.type
Set the baseType to vital
Set the baseType to vital
- Definition Classes
- BaseType
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): BitVector.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): BitVector.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): BitVector.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): BitVector.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): BitVector.this.type
- Definition Classes
- Nameable
-
def
setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): BitVector.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): BitVector.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setNameAsWeak(): BitVector.this.type
- Definition Classes
- Nameable
-
def
setOutputAsReg(): BitVector.this.type
Recursively set baseType to reg only for output
Recursively set baseType to reg only for output
- Definition Classes
- Data
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable): BitVector.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): BitVector.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): BitVector.this.type
- Definition Classes
- Nameable
-
def
setWidth(width: Int): BitVector.this.type
Set the width of the BitVector
Set the width of the BitVector
- width
the width of the data
- returns
the BitVector of a given size
-
def
simplifyNode: Expression
- Definition Classes
- Expression
- def sliceBy(divisor: List[Int]): List[Bits]
-
def
sliceBy(divisor: Int*): List[Bits]
apart by a list of width
apart by a list of width
- returns
(List(A(1 downto 0), A(2 downto 4), A(9 downto 3))
val res = A.sliceBy(2, 3, 5) val res = A.sliceBy(List(2, 3, 5))
Example: -
def
spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
splitAt(n: Int): (Bits, Bits)
Split at n st bits
Split at n st bits
- returns
(data10bits(8 downto 4), data10bits(3 downto 0))
val res = data10bits.splitAt(4)
Example: -
def
stabilized(func: (Expression) ⇒ Expression, seed: Expression): Expression
- Definition Classes
- ExpressionContainer
- def subdivideIn(sliceWidth: BitCount): Vec[T]
- def subdivideIn(sliceCount: SlicesCount): Vec[T]
-
def
subdivideIn(sliceWidth: BitCount, strict: Boolean): Vec[T]
Split the BitVector into slice of x bits
Split the BitVector into slice of x bits
- sliceWidth
the width of the slice
- strict
allow
subdivideIn
to generate vectors with varying size- returns
a Vector of slices
val res = myBits.subdivideIn(3 bits)
Example: -
def
subdivideIn(sliceCount: SlicesCount, strict: Boolean): Vec[T]
Split the BitVector into x slice
Split the BitVector into x slice
- sliceCount
the width of the slice
- strict
allow
subdivideIn
to generate vectors with varying size- returns
a Vector of slices
val res = myBits.subdivideIn(3 slices)
Example: -
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
take(n: Int): Bits
Take lowerst n bits
Take lowerst n bits
- returns
data10bits(3 downto 0)
val res = data10bits.take(4)
Example: -
def
takeHigh(n: Int): Bits
Take highest n bits
Take highest n bits
- returns
data10bits(9 downto 6)
val res = data10bits.takeHigh(4)
Example: - def takeLow(n: Int): Bits
-
def
toIo(): BitVector.this.type
- Definition Classes
- Data
-
def
toMuxInput[T <: Data](muxOutput: T): T
- Definition Classes
- Data
-
def
toString(): String
- Definition Classes
- BitVector → BaseType → Expression → Nameable → AnyRef → Any
-
def
toStringMultiLine(): String
- Definition Classes
- BaseNode
-
def
toStringRec(level: Int = 1): String
- Definition Classes
- Expression
- def unfreeze(): BitVector.this.type
-
def
unsetName(): BitVector.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
walkDrivingExpressions(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- ExpressionContainer
-
def
walkExpression(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- ExpressionContainer
-
def
walkExpressionPostorder(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- ExpressionContainer
-
def
walkParentTreeStatements(func: (TreeStatement) ⇒ Unit): Unit
- Definition Classes
- Statement
-
def
walkParentTreeStatementsUntilRootScope(func: (TreeStatement) ⇒ Unit): Unit
- Definition Classes
- Statement
-
def
walkRemapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- ExpressionContainer
-
def
walkRemapExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- ExpressionContainer
-
def
wrapCast[T <: BaseType](result: T, node: Cast): T
- Definition Classes
- BaseType
-
def
wrapNext(): BitVector.this.type
- Definition Classes
- Data
- def xorMask(that: Bool): BitVector.this.type
-
def
xorR: Bool
Logical XOR of all bits
Deprecated Value Members
-
def
asDirectionLess(): BitVector.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): BitVector.this.type
Generate this if condition is true
Generate this if condition is true
- Definition Classes
- Data
- Annotations
- @deprecated
- Deprecated
does not work with <>, use 'someBool generate Type()' or 'if(condition) Type() else null' instead
-
def
range: Range
Return the range
Return the range
- Annotations
- @deprecated
- Deprecated
Use bitsRange instead