class Bool extends BaseType with DataPrimitives[Bool] with BitwiseOp[Bool]
The Bool type corresponds to a boolean value (True or False)
val myBool = Bool() myBool := False myBool := Bool(false)
- See also
- Alphabetic
- By Inheritance
- Bool
- BitwiseOp
- DataPrimitives
- BaseType
- Expression
- StatementDoubleLinkedContainer
- DoubleLinkedContainer
- DeclarationStatement
- LeafStatement
- Statement
- BaseNode
- ExpressionContainer
- Data
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Bool()
Type Members
-
case class
MuxBuilder[T <: Data](whenTrue: T) extends Product with Serializable
Class used to write conditional operation on Data value
Class used to write conditional operation on Data value
val res = myBool ? myBits1 | myBits2
Example: -
case class
MuxBuilderEnum[T <: SpinalEnum](whenTrue: SpinalEnumCraft[T]) extends Product with Serializable
Class used to write conditional operation on Enumeration value
Class used to write conditional operation on Enumeration value
val res = myBool ? myEnum1 | myEnum2
- Note
implicit conversion is used to send SpinalEnumElement
Example: -
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
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
&(b: Bool): Bool
Logical AND operator
-
def
&&(b: Bool): Bool
Logical AND
Logical AND
- returns
a Bool assign with the AND result
val result = myBool1 && myBool2
Example: -
def
:=(that: Bool): Unit
Assign a data to this
Assign a data to this
- Definition Classes
- DataPrimitives
-
def
<>(that: Bool): Unit
Auto connection between two data
Auto connection between two data
- Definition Classes
- DataPrimitives
-
def
=/=(that: MaskedBoolean): Bool
BitVector is not equal to MaskedLiteral
-
def
=/=(that: Bool): Bool
- Definition Classes
- DataPrimitives
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def ===(that: MaskedBoolean): Bool
-
def
===(that: Bool): Bool
Comparison between two data
Comparison between two data
- Definition Classes
- DataPrimitives
-
def
?[T <: SpinalEnum](whenTrue: SpinalEnumCraft[T]): MuxBuilderEnum[T]
Conditional operation for Enumeration value
-
def
?[T <: Data](whenTrue: T): MuxBuilder[T]
Conditional operation for Data value
-
def
\(that: Bool): Bool
Use as \= to have the same behavioral thant VHDL variable
Use as \= to have the same behavioral thant VHDL variable
- Definition Classes
- DataPrimitives
-
def
^(b: Bool): Bool
Logical XOR operator
-
val
_spinalTags: Set[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
addAttribute(attribute: Attribute): Bool.this.type
- Definition Classes
- BaseType → Data → SpinalTagReady
-
def
addAttribute(name: String, value: String): Bool.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String): Bool.this.type
- Definition Classes
- SpinalTagReady
-
def
addTag[T <: SpinalTag](spinalTag: T): Bool.this.type
- Definition Classes
- SpinalTagReady
-
def
addTags[T <: SpinalTag](tags: Iterable[T]): Bool.this.type
- Definition Classes
- SpinalTagReady
-
val
algoIncrementale: Int
- Definition Classes
- BaseNode
-
val
algoInt: Int
- Definition Classes
- BaseNode
-
def
allowDirectionLessIo: Bool.this.type
- Definition Classes
- Data
-
def
allowOverride: Bool.this.type
Allow a data to be overrided
Allow a data to be overrided
- Definition Classes
- Data
-
def
allowPruning(): Bool.this.type
- Definition Classes
- Data
- def allowSimplifyIt(): Bool.this.type
-
def
allowUnsetRegToAvoidLatch: Bool.this.type
- Definition Classes
- Data
-
def
asBits: Bits
Cast data to Bits
-
def
asBits(bitCount: BitCount): Bits
Cast a Bool to an Bits of a given width
Cast a Bool to an Bits of a given width
- bitCount
the width of the Bits
- returns
a Bits data of a given length initialize to this
-
def
asData: Data
- Definition Classes
- Data
-
def
asDirectionLess(): Bool.this.type
remove the direction (in,out,inout) to a data
-
def
asInOut(): Bool.this.type
set a data as inout
-
def
asInput(): Bool.this.type
Set a data as input
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
asOutput(): Bool.this.type
Set a data as output
-
def
asSInt: SInt
Cast a Bool to an SInt
Cast a Bool to an SInt
- returns
a SInt data
mySInt := myBool.asSInt
Example: -
def
asUInt(bitCount: BitCount): UInt
Cast a Bool to an UInt of a given width
Cast a Bool to an UInt of a given width
- bitCount
the width of the UInt
- returns
an UInt data of a given length initialize to this
myUInt := myBool.asUInt(8 bits)
Example: -
def
asUInt: UInt
Cast a Bool to an UInt
Cast a Bool to an UInt
- returns
an UInt data
myUInt := myBool.asUInt
Example: - def assignDontCare(): Bool.this.type
-
final
def
assignFrom(that: AnyRef, target: AnyRef = this): Unit
- Definition Classes
- Data
- def assignFromBits(bits: Bits, hi: Int, low: Int): Unit
- def assignFromBits(bits: Bits): Unit
-
def
assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
- Definition Classes
- Data
-
def
clear(): Unit
this is assigned to False
-
def
clearWhen(cond: Bool): Bool
this is assigned to False when cond is True
-
var
clockDomain: ClockDomain
- Definition Classes
- BaseType
- def clone(): Bool.this.type
-
def
component: Component
- Definition Classes
- ContextUser
-
final
def
compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef): Unit
- Definition Classes
- Assignable
-
val
compositeAssign: Assignable
- Definition Classes
- Assignable
-
def
default(that: ⇒ Bool): Bool
Set a default value to a data
Set a default value to a data
- Definition Classes
- DataPrimitives
-
def
dirString(): String
- Definition Classes
- Data
-
def
dlcAppend(that: AssignmentStatement): Bool.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): Bool.this.type
- Definition Classes
- DoubleLinkedContainer
- def dontSimplifyIt(): Bool.this.type
-
def
edge(): Bool
Edge detection
-
def
edge(initAt: Bool): Bool
Edge detection of this with an initial value
Edge detection of this with an initial value
- initAt
the initial value
- returns
a Bool
val res = myBool.edge(False)
Example: -
def
edges(): BoolEdges
Edge detection without intial value
-
def
edges(initAt: Bool): BoolEdges
Detect all edges (falling, rising, toogling)
Detect all edges (falling, rising, toogling)
- initAt
the initial value
- returns
a BoolEdges
val res = myBool.edges() when(res.fall){...} when(res.rise){...} when(res.toggle){...}
Example: -
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
existsTag(cond: (SpinalTag) ⇒ Boolean): Boolean
- Definition Classes
- SpinalTagReady
-
def
fall(): Bool
Falling edge detection
-
def
fall(initAt: Bool): Bool
Falling edge detection of this with an initial value
Falling edge detection of this with an initial value
- initAt
the initial value
- returns
a Bool
val res = myBool.fall(False)
Example: -
def
filterTag(cond: (SpinalTag) ⇒ Boolean): Iterable[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
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(): Bool.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
genIf(cond: Boolean): Bool.this.type
Generate this if condition is true
Generate this if condition is true
- Definition Classes
- Data
-
def
getBitsWidth: Int
Return the width of the data
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getComponent(): Component
- Definition Classes
- Data → NameableByComponent
-
def
getComponents(): Seq[Component]
Get current component with all parents
Get current component with all parents
- Definition Classes
- Data
-
def
getDisplayName(): String
- Definition Classes
- Nameable
-
def
getDrivingReg: Bool.this.type
- Definition Classes
- BaseType
-
def
getInstanceCounter: Int
- Definition Classes
- ContextUser
-
def
getName(): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getName(default: String): String
- Definition Classes
- Nameable
-
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
getScalaLocationLong: String
- Definition Classes
- ScalaLocated
-
def
getScalaLocationShort: String
- Definition Classes
- ScalaLocated
-
def
getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
-
def
getSingleDriver: Option[Bool.this.type]
- Definition Classes
- BaseType
-
def
getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
-
def
getTags(): Set[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
getTypeObject: TypeBool.type
- Definition Classes
- Bool → Expression
-
def
getZero: Bool.this.type
Create a data set to 0
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
-
def
hasAssignement: 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
- AnyRef → Any
- Annotations
- @native()
-
def
head: AssignmentStatement
- Definition Classes
- StatementDoubleLinkedContainer
-
def
init(that: Bool): Bool
Set inital value to a data
Set inital value to a data
- Definition Classes
- DataPrimitives
-
final
def
initFrom(that: AnyRef, target: AnyRef = this): Unit
- Definition Classes
- Data
-
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
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
-
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
isTypeNode: Boolean
Is the baseType a node
Is the baseType a node
- Definition Classes
- BaseType
-
def
isUnnamed: Boolean
- Definition Classes
- 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
-
def
keep(): Bool.this.type
- Definition Classes
- Data
-
val
lastScopeStatement: Statement
- Definition Classes
- Statement
-
def
mux[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
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
val
nextScopeStatement: Statement
- Definition Classes
- Statement
-
def
noBackendCombMerge: Bool.this.type
- Definition Classes
- Data
-
def
noCombLoopCheck: Bool.this.type
- Definition Classes
- Data
-
def
normalizeInputs: Unit
- Definition Classes
- BaseType → ExpressionContainer
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
-
def
opName: String
- Definition Classes
- Bool → Expression
-
val
parent: Data
- Definition Classes
- Data
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
-
def
pull(): Bool.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
randBoot(): Bool.this.type
Usefull for register that doesn't need a reset value in RTL, but need a randome value for simulation (avoid x-propagation)
Usefull for register that doesn't need a reset value in RTL, but need a randome value for simulation (avoid x-propagation)
- Definition Classes
- Data
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @dontName()
-
def
remapDrivingExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- ExpressionContainer
-
def
remapExpressions(func: (Expression) ⇒ Expression): Unit
- Definition Classes
- DeclarationStatement → ExpressionContainer
-
def
removeAssignments(): Bool.this.type
Remove all assignements of the base type
- def removeStatement(): Unit
-
def
removeStatementFromScope(): Unit
- Definition Classes
- Statement
-
def
removeTag(spinalTag: SpinalTag): Bool.this.type
- Definition Classes
- SpinalTagReady
-
def
removeTags(tags: Iterable[SpinalTag]): Bool.this.type
- Definition Classes
- SpinalTagReady
-
def
resized: Bool.this.type
Resized data regarding target
Resized data regarding target
- Definition Classes
- Data
-
def
rise(): Bool
Rising edge detection
-
def
rise(initAt: Bool): Bool
Rising edge detection of this with an initial value
Rising edge detection of this with an initial value
- initAt
the initial value
- returns
a Bool
val res = myBool.rise(False)
Example: - def rootScopeStatement: ScopeStatement
-
def
set(): Unit
this is assigned to True
- def setAsAnalog(): Bool.this.type
-
def
setAsComb(): Bool.this.type
Set baseType to Combinatorial
Set baseType to Combinatorial
- Definition Classes
- BaseType
-
def
setAsReg(): Bool.this.type
Set baseType to reg
Set baseType to reg
- Definition Classes
- BaseType
-
def
setAsTypeNode(): Bool.this.type
Set baseType to Node
Set baseType to Node
- Definition Classes
- BaseType
-
def
setAsVital(): Bool.this.type
Set the baseType to vital
Set the baseType to vital
- Definition Classes
- BaseType
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Bool.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Bool.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): Bool.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): Bool.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): Bool.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): Bool.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): Bool.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): Bool.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): Bool.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): Bool.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): Bool.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): Bool.this.type
- Definition Classes
- Nameable
-
def
setWhen(cond: Bool): Bool
this is assigned to True when cond is True
this is assigned to True when cond is True
- cond
a Bool condition
- returns
this is assigned to True when cond is True
myBool.setWhen(cond)
Example: -
def
simplifyNode: Expression
- Definition Classes
- Expression
-
def
spinalTags: Set[SpinalTag]
- Definition Classes
- SpinalTagReady
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- BaseType → Expression → Nameable → AnyRef → Any
-
def
toStringMultiLine(): String
- Definition Classes
- BaseNode
-
def
unary_!: Bool
Logical NOT
Logical NOT
- returns
a Bool assign with the NOT result
val result = !myBool1
Example: -
def
unary_~: Bool
Inverse bitwise operator
-
def
unsetName(): Bool.this.type
- Definition Classes
- Nameable
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
walkDrivingExpressions(func: (Expression) ⇒ Unit): Unit
- Definition Classes
- ExpressionContainer
-
def
walkExpression(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
|(b: Bool): Bool
Logical OR operator
-
def
||(b: Bool): Bool
Logical OR
Logical OR
- returns
a Bool assign with the OR result
val result = myBool1 || myBool2
Example: