abstract
class
BitVector extends BaseType with Widthable
Instance Constructors
-
new
BitVector()
Type Members
-
abstract
type
RefOwnerType
-
abstract
type
T <: BitVector
Abstract Value Members
-
abstract
def
apply(offset: UInt, bitCount: BitCount): BitVector.this.type
-
abstract
def
apply(offset: Int, bitCount: BitCount): BitVector.this.type
-
abstract
def
apply(bitId: UInt): Bool
-
abstract
def
apply(bitId: Int): Bool
-
abstract
def
asBits: Bits
-
abstract
def
assignFromBits(bits: Bits, hi: Int, low: Int): Unit
-
abstract
def
assignFromBits(bits: Bits): Unit
-
abstract
def
getAllTrue: BitVector.this.type
-
abstract
def
getTypeObject: Any
-
abstract
def
getZero: BitVector.this.type
-
abstract
def
getZeroUnconstrained: BitVector.this.type
-
abstract
def
opName: String
-
-
abstract
def
resize(width: Int): BitVector
-
abstract
def
rotateLeft(that: Int): T
-
abstract
def
rotateRight(that: Int): T
-
abstract
def
setAll(): BitVector.this.type
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
-
def
##(right: Data): Bits
-
final
def
##(): Int
-
def
#*(count: Int): Bits
-
-
final
def
==(arg0: Any): Boolean
-
-
var
_spinalTags: LinkedHashSet[SpinalTag]
-
def
addAttribute(attribute: Attribute): BitVector.this.type
-
def
addAttribute(name: String, value: Int): BitVector.this.type
-
def
addAttribute(name: String, value: String): BitVector.this.type
-
def
addAttribute(name: String): BitVector.this.type
-
def
addTag[T <: SpinalTag](spinalTag: T): BitVector.this.type
-
def
addTags[T <: SpinalTag](tags: Iterable[T]): BitVector.this.type
-
var
algoIncrementale: Int
-
var
algoInt: Int
-
def
allowDirectionLessIo: BitVector.this.type
-
def
allowOverride: BitVector.this.type
-
def
allowPartialyAssigned: BitVector.this.type
-
def
allowPruning(): BitVector.this.type
-
def
allowSimplifyIt(): BitVector.this.type
-
def
allowUnsetRegToAvoidLatch: BitVector.this.type
-
def
andMask(that: Bool): BitVector.this.type
-
def
andR: Bool
-
def
apply(range: Range): BitVector.this.type
-
def
as[T <: Data](dataType: HardType[T]): T
-
def
asBool: Bool
-
def
asBools: Vec[Bool]
-
def
asData: Data
-
def
asInOut(): BitVector.this.type
-
def
asInput(): BitVector.this.type
-
final
def
asInstanceOf[T0]: T0
-
def
asOutput(): BitVector.this.type
-
def
assignDontCare(): BitVector.this.type
-
def
assignFormalRandom(kind: RandomExpKind): Unit
-
final
def
assignFrom(that: AnyRef, target: AnyRef = this): Unit
-
def
assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
-
def
bitsRange: Range
-
def
cldCount: Int
-
def
clearAll(): BitVector.this.type
-
-
def
clone(): BitVector.this.type
-
-
final
def
compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef): Unit
-
var
compositeAssign: Assignable
-
def
copyDirectionOfImpl(that: Data): BitVector.this.type
-
def
dirString(): String
-
-
def
dlcForeach[T >: AssignmentStatement](func: (T) ⇒ Unit): Unit
-
def
dlcHasOnlyOne: Boolean
-
-
def
dlcIsEmpty: Boolean
-
-
-
def
dontSimplifyIt(): BitVector.this.type
-
def
drop(n: Int): Bits
-
def
dropHigh(n: Int): Bits
-
def
dropLow(n: Int): Bits
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(obj: Any): Boolean
-
def
existsTag(cond: (SpinalTag) ⇒ Boolean): Boolean
-
def
filterTag(cond: (SpinalTag) ⇒ Boolean): Iterable[SpinalTag]
-
def
findTag(cond: (SpinalTag) ⇒ Boolean): Option[SpinalTag]
-
def
flatten: Seq[BaseType]
-
def
flattenForeach(body: (BaseType) ⇒ Unit): Unit
-
def
flattenLocalName: Seq[String]
-
def
flip(): BitVector.this.type
-
def
foreachClockDomain(func: (ClockDomain) ⇒ Unit): Unit
-
def
foreachDrivingExpression(func: (Expression) ⇒ Unit): Unit
-
def
foreachExpression(func: (Expression) ⇒ Unit): Unit
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
-
def
foreachStatements(func: (AssignmentStatement) ⇒ Unit): Unit
-
def
foreachTag(body: (SpinalTag) ⇒ Unit): Unit
-
def
freeze(): BitVector.this.type
-
def
genIf(cond: Boolean): BitVector.this.type
-
def
getAheadValue(): BitVector.this.type
-
def
getBitsWidth: Int
-
final
def
getClass(): Class[_]
-
def
getComponent(): Component
-
def
getComponents(): Seq[Component]
-
-
def
getDisplayName(): String
-
def
getDrivingReg(reportError: Boolean = true): BitVector.this.type
-
def
getInstanceCounter: Int
-
def
getMode: Byte
-
def
getMuxType[T <: Data](list: TraversableOnce[T]): HardType[T]
-
def
getName(default: String): String
-
def
getName(): String
-
def
getPartialName(): String
-
def
getRealSource: Any
-
def
getRealSourceNoRec: Any
-
def
getRefOwnersChain(): List[Any]
-
def
getRootParent: Data
-
def
getRtlPath(separator: String = "/"): String
-
def
getScalaLocationLong: String
-
def
getScalaLocationShort: String
-
def
getScalaTrace(): Throwable
-
def
getSingleDriver: Option[BitVector.this.type]
-
def
getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
-
def
getTags(): LinkedHashSet[SpinalTag]
-
def
getWidth: Int
-
def
getWidthNoInferation: Int
-
def
getWidthStringNoInferation: String
-
-
def
hasAssignement: Boolean
-
def
hasDataAssignment: Boolean
-
def
hasInit: Boolean
-
def
hasOnlyOneStatement: Boolean
-
def
hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
-
def
hasTag(spinalTag: SpinalTag): Boolean
-
def
hashCode(): Int
-
-
def
high: Int
-
final
def
initFrom(that: AnyRef, target: AnyRef = this): Unit
-
def
initialFrom(that: AnyRef, target: AnyRef = this): Unit
-
def
insertNext(s: Statement): Unit
-
def
instanceAttributes(language: Language): Iterable[Attribute]
-
def
instanceAttributes: Iterable[Attribute]
-
def
isAnalog: Boolean
-
def
isComb: Boolean
-
def
isCompletelyUnnamed: Boolean
-
def
isDirectionLess: Boolean
-
def
isEmptyOfTag: Boolean
-
def
isFrozen(): Boolean
-
def
isInOut: Boolean
-
def
isInput: Boolean
-
def
isInputOrInOut: Boolean
-
final
def
isInstanceOf[T0]: Boolean
-
def
isNamed: Boolean
-
def
isOutput: Boolean
-
def
isOutputOrInOut: Boolean
-
def
isPriorityApplicable(namePriority: Byte): Boolean
-
def
isReg: Boolean
-
def
isTypeNode: Boolean
-
def
isUnnamed: Boolean
-
def
isUsingResetSignal: Boolean
-
def
isUsingSoftResetSignal: Boolean
-
def
isVital: Boolean
-
var
lastScopeStatement: Statement
-
def
lsb: Bool
-
def
msb: Bool
-
def
mux[T2 <: Data](mappings: (Any, T2)*): T2
-
def
muxList[T2 <: Data](defaultValue: T2, mappings: Seq[(Any, T2)]): T2
-
def
muxList[T2 <: Data](mappings: Seq[(Any, T2)]): T2
-
def
muxListDc[T2 <: Data](mappings: Seq[(Any, T2)]): T2
-
var
name: String
-
var
nameableRef: Nameable
-
final
def
ne(arg0: AnyRef): Boolean
-
-
-
-
-
var
nextScopeStatement: Statement
-
def
noBackendCombMerge: BitVector.this.type
-
def
noCombLoopCheck: BitVector.this.type
-
def
normalizeInputs: Unit
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
def
onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit
-
def
orMask(that: Bool): BitVector.this.type
-
def
orR: Bool
-
def
overrideLocalName(name: String): BitVector.this.type
-
var
parent: Data
-
-
def
pull(propagateName: Boolean): BitVector.this.type
-
def
pull(): BitVector.this.type
-
def
purify(): BitVector.this.type
-
def
randBoot(u: Unit): BitVector.this.type
-
-
def
reflectNames(): Unit
-
def
remapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
-
-
def
removeAssignments(): BitVector.this.type
-
def
removeStatement(): Unit
-
def
removeStatementFromScope(): Unit
-
def
removeTag(spinalTag: SpinalTag): BitVector.this.type
-
def
removeTags(tags: Iterable[SpinalTag]): BitVector.this.type
-
def
resized: BitVector.this.type
-
-
def
rotateLeft(that: UInt): T
-
def
rotateRight(that: UInt): T
-
var
scalaTrace: Throwable
-
def
setAllTo(value: Bool): BitVector.this.type
-
def
setAllTo(value: Boolean): BitVector.this.type
-
def
setAsAnalog(): BitVector.this.type
-
def
setAsComb(): BitVector.this.type
-
def
setAsDirectionLess(): BitVector.this.type
-
def
setAsReg(): BitVector.this.type
-
def
setAsTypeNode(): BitVector.this.type
-
def
setAsVital(): BitVector.this.type
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): BitVector.this.type
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): BitVector.this.type
-
def
setCompositeName(nameable: Nameable, postfix: String): BitVector.this.type
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): BitVector.this.type
-
def
setCompositeName(nameable: Nameable, weak: Boolean): BitVector.this.type
-
def
setCompositeName(nameable: Nameable): BitVector.this.type
-
def
setName(name: String, namePriority: Byte): BitVector.this.type
-
def
setName(name: String, weak: Boolean): BitVector.this.type
-
def
setName(name: String): BitVector.this.type
-
def
setNameAsWeak(): BitVector.this.type
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): BitVector.this.type
-
def
setPartialName(name: String, namePriority: Byte): BitVector.this.type
-
def
setPartialName(name: String, weak: Boolean): BitVector.this.type
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): BitVector.this.type
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): BitVector.this.type
-
def
setPartialName(name: String): BitVector.this.type
-
def
setPartialName(owner: Nameable, name: String): BitVector.this.type
-
def
setRefOwner(that: Any): Unit
-
-
def
setWeakName(name: String): BitVector.this.type
-
def
setWidth(width: Int): BitVector.this.type
-
-
def
sliceBy(divisor: List[Int]): List[Bits]
-
def
sliceBy(divisor: Int*): List[Bits]
-
def
spinalTags: LinkedHashSet[SpinalTag]
-
def
splitAt(n: Int): (Bits, Bits)
-
-
def
subdivideIn(sliceWidth: BitCount): Vec[T]
-
def
subdivideIn(sliceCount: SlicesCount): Vec[T]
-
def
subdivideIn(sliceWidth: BitCount, strict: Boolean): Vec[T]
-
def
subdivideIn(sliceCount: SlicesCount, strict: Boolean): Vec[T]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
take(n: Int): Bits
-
def
takeHigh(n: Int): Bits
-
def
takeLow(n: Int): Bits
-
def
toIo(): BitVector.this.type
-
def
toMuxInput[T <: Data](muxOutput: T): T
-
def
toString(): String
-
def
toStringMultiLine(): String
-
def
toStringRec(level: Int = 1): String
-
def
unfreeze(): BitVector.this.type
-
def
unsetName(): BitVector.this.type
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
-
final
def
wait(): Unit
-
def
walkDrivingExpressions(func: (Expression) ⇒ Unit): Unit
-
def
walkExpression(func: (Expression) ⇒ Unit): Unit
-
def
walkExpressionPostorder(func: (Expression) ⇒ Unit): Unit
-
def
walkParentTreeStatements(func: (TreeStatement) ⇒ Unit): Unit
-
def
walkParentTreeStatementsUntilRootScope(func: (TreeStatement) ⇒ Unit): Unit
-
def
walkRemapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
-
def
walkRemapExpressions(func: (Expression) ⇒ Expression): Unit
-
def
wrapCast[T <: BaseType](result: T, node: Cast): T
-
def
wrapNext(): BitVector.this.type
-
def
xorMask(that: Bool): BitVector.this.type
-
def
xorR: Bool
Deprecated Value Members
-
def
asDirectionLess(): BitVector.this.type
-
def
finalize(): Unit
-
def
range: Range
Inherited from AnyRef
Inherited from Any
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:
BitVector Documentation