Chisel

BitsInObject

class BitsInObject extends UInt

Source
Assert.scala
Linear Supertypes
UInt, Num[UInt], Bits, proc, Data, Node, Nameable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. BitsInObject
  2. UInt
  3. Num
  4. Bits
  5. proc
  6. Data
  7. Node
  8. Nameable
  9. AnyRef
  10. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BitsInObject(x: Node)

Type Members

  1. type T = UInt

    Definition Classes
    UInt

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. def ##[T <: Data](right: T): BitsInObject.this.type

    Cat bits together to into a single data object with the width of both combined

    Cat bits together to into a single data object with the width of both combined

    Definition Classes
    BitsData
  4. def ##(b: Node): Node

    The cat operator to combine two values

    The cat operator to combine two values

    0x5 ## 0x3 => 0x53
    b

    Node to cat after

    returns

    a new node as the combination of both this node and b

    Definition Classes
    Node
  5. final def ##(): Int

    Definition Classes
    AnyRef → Any
  6. def %(b: SInt): SInt

    Definition Classes
    UInt
  7. def %(b: UInt): UInt

    Definition Classes
    UIntNum
  8. def %(b: Bits): Bits

    Definition Classes
    Bits
  9. def &(b: Bits): BitsInObject.this.type

    Bitwise and

    Bitwise and

    Definition Classes
    Bits
  10. def *(b: SInt): SInt

    Definition Classes
    UInt
  11. def *(b: UInt): UInt

    Definition Classes
    UIntNum
  12. def *(b: Bits): Bits

    Definition Classes
    Bits
  13. def +(b: SInt): SInt

    Definition Classes
    UInt
  14. def +(b: UInt): UInt

    Definition Classes
    UIntNum
  15. def +(b: Bits): Bits

    Definition Classes
    Bits
  16. def +%(b: UInt): UInt

    chisel3 add-wrap operator

    chisel3 add-wrap operator

    Definition Classes
    UInt
  17. def +&(b: UInt): UInt

    chisel3 add (width +1) operator

    chisel3 add (width +1) operator

    Definition Classes
    UInt
  18. def -(b: SInt): SInt

    Definition Classes
    UInt
  19. def -(b: UInt): UInt

    Definition Classes
    UIntNum
  20. def -(b: Bits): Bits

    Definition Classes
    Bits
  21. def -%(b: UInt): UInt

    chisel3 sub-wrap operator

    chisel3 sub-wrap operator

    Definition Classes
    UInt
  22. def -&(b: UInt): UInt

    chisel3 sub (width +1) operator

    chisel3 sub (width +1) operator

    Definition Classes
    UInt
  23. def /(b: SInt): SInt

    Definition Classes
    UInt
  24. def /(b: UInt): UInt

    Definition Classes
    UIntNum
  25. def /(b: Bits): Bits

    Definition Classes
    Bits
  26. def :=(that: Data): Unit

    Definition Classes
    Data
  27. def <(b: UInt): Bool

    Definition Classes
    UIntNum
  28. def <<(i: Int): UInt

    Definition Classes
    UInt
  29. def <<(b: UInt): BitsInObject.this.type

    Shift left operation

    Shift left operation

    Definition Classes
    Bits
  30. def <=(b: UInt): Bool

    Definition Classes
    UIntNum
  31. def <>(src: Node): Unit

    Connect I/O of modules with the same name

    Connect I/O of modules with the same name

    src

    Node to attempt to connect to this instantiation

    Definition Classes
    BitsNode
  32. def =/=(that: BitPat): Bool

    Definition Classes
    Bits
  33. def =/=(b: Bits): Bool

    not equal to

    not equal to

    Definition Classes
    Bits
  34. def =/=[T <: Data](right: T): Bool

    Definition Classes
    Data
  35. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  36. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  37. def ===(b: UInt): Bool

    Definition Classes
    UInt
  38. def ===(that: BitPat): Bool

    Definition Classes
    Bits
  39. def ===[T <: Data](right: T): Bool

    Definition Classes
    BitsData
  40. def >(b: UInt): Bool

    Definition Classes
    UIntNum
  41. def >=(b: UInt): Bool

    Definition Classes
    UIntNum
  42. def >>(i: Int): UInt

    Definition Classes
    UInt
  43. def >>(b: UInt): UInt

    Definition Classes
    UInt
  44. def ?(b: UInt): UInt

    Definition Classes
    UInt
  45. def W0Wtransform(): Unit

    Eliminate any zero-width wires attached to this node

    Eliminate any zero-width wires attached to this node

    returns

    if the node was modified

    Definition Classes
    Node
  46. def ^(b: Bits): BitsInObject.this.type

    Bitwise xor

    Bitwise xor

    Definition Classes
    Bits
  47. def ^^(src: Node): Unit

    Definition Classes
    Node
  48. val _id: Int

    The unique id of this node

    The unique id of this node

    Definition Classes
    Node
  49. def _isComplementOf(x: Node): Boolean

    Definition Classes
    Node
  50. def andR(): Bool

    reduction and, and all bits together

    reduction and, and all bits together

    Definition Classes
    Bits
  51. final def apply(range: (Int, Int)): UInt

    Extract a range of bits, inclusive from hi to lo

    Extract a range of bits, inclusive from hi to lo

    Definition Classes
    Bits
  52. final def apply(hi: UInt, lo: UInt): UInt

    Extract a range of bits, inclusive from hi to lo

    Extract a range of bits, inclusive from hi to lo

    Definition Classes
    Bits
  53. final def apply(hi: Int, lo: Int): UInt

    Extract a range of bits, inclusive from hi to lo

    Extract a range of bits, inclusive from hi to lo

    myBits = 0x5, myBits(1,0) => 0x3
    Definition Classes
    Bits
  54. final def apply(bit: UInt): Bool

    Extract a single bit at position 'bit' as a Bool

    Extract a single bit at position 'bit' as a Bool

    Definition Classes
    Bits
  55. final def apply(bit: Int): Bool

    Extract a single Bool at index *bit*.

    Extract a single Bool at index *bit*.

    Definition Classes
    Bits
  56. def apply(name: String): Data

    Definition Classes
    BitsData
  57. def asDirectionless(): BitsInObject.this.type

    Set this Bits instantiation to be neither of INPUT or OUTPUT

    Set this Bits instantiation to be neither of INPUT or OUTPUT

    Definition Classes
    BitsData
  58. def asInput(): BitsInObject.this.type

    Set this Bits instatiation to be an INPUT

    Set this Bits instatiation to be an INPUT

    Definition Classes
    BitsData
  59. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  60. def asOutput(): BitsInObject.this.type

    Set this Bits instatiation to be an OUTPUT

    Set this Bits instatiation to be an OUTPUT

    returns

    this instance with its exact type.

    Definition Classes
    BitsData
  61. final def asTypeFor(node: Node): BitsInObject.this.type

    assigns this instance as the data type for *node*.

    assigns this instance as the data type for *node*.

    Attributes
    protected[Chisel]
    Definition Classes
    Bits
  62. def assign(src: Node): Unit

    Definition Classes
    BitsNode
  63. def bitSet(off: UInt, dat: UInt): BitsInObject.this.type

    Set bit 'off' in data dat

    Set bit 'off' in data dat

    off

    which bit to set

    dat

    A UInt in which to set the bit

    Definition Classes
    Bits
  64. def canCSE: Boolean

    Definition Classes
    Node
  65. lazy val chiselName: String

    Definition Classes
    Node
  66. var clock: Option[Clock]

    The clock for this node

    The clock for this node

    Definition Classes
    Node
  67. def clone(): BitsInObject.this.type

    Definition Classes
    Data → AnyRef
  68. def cloneType(): BitsInObject.this.type

    Copy this instantiation of the Chisel Data type with all parameters such as width and I/O direction the same

    Copy this instantiation of the Chisel Data type with all parameters such as width and I/O direction the same

    Definition Classes
    BitsData
  69. def colonEquals(that: Bits): Unit

    Assignment operator

    Assignment operator

    Attributes
    protected
    Definition Classes
    BitsData
  70. def colonEquals[T <: Data](that: Iterable[T]): Unit

    Attributes
    protected
    Definition Classes
    Data
  71. def colonEquals(that: Bundle): Unit

    Attributes
    protected
    Definition Classes
    Data
  72. var comp: Option[proc]

    Definition Classes
    Data
  73. def componentOf: Module

    Get the module that this node is a part of or the top module if not assigned yet

    Get the module that this node is a part of or the top module if not assigned yet

    returns

    The module that this node is a part of

    Definition Classes
    Node
  74. val consumers: LinkedHashSet[Node]

    nodes that consume one of my outputs

    nodes that consume one of my outputs

    Definition Classes
    Node
  75. def create(dir: IODirection, width: Int): Unit

    Definition Classes
    Bits
  76. def dblLitValue: Double

    Convert the node literal to a Double

    Convert the node literal to a Double

    Definition Classes
    Node
  77. def default: proc

    Attributes
    protected
    Definition Classes
    proc
  78. def defaultMissing: Boolean

    Attributes
    protected
    Definition Classes
    proc
  79. def defaultRequired: Boolean

    Definition Classes
    Bitsproc
  80. var dir: IODirection

    Definition Classes
    Bits
  81. def doProcAssign(src: Node, cond: Bool): Unit

    Attributes
    protected[Chisel]
    Definition Classes
    proc
  82. var driveRand: Boolean

    Definition Classes
    Node
  83. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  84. def equals(that: Any): Boolean

    Compare two nodes

    Compare two nodes

    that

    the node to compare with

    Definition Classes
    Node → AnyRef → Any
  85. def equalsForCSE(x: Node): Boolean

    Definition Classes
    Node
  86. def error(b: Bits): Bits

    Error shown when operation is not defined

    Error shown when operation is not defined

    Definition Classes
    Bits
    Exceptions thrown
    ChiselException

    if the operation is not defined

  87. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  88. def flatten: Array[(String, Bits)]

    Definition Classes
    BitsData
  89. def flip(): BitsInObject.this.type

    Change INPUT to OUTPUT and OUTPUT to INPUT

    Change INPUT to OUTPUT and OUTPUT to INPUT

    Definition Classes
    BitsData
  90. def floLitValue: Float

    Convert the node literal to a Float

    Convert the node literal to a Float

    Definition Classes
    Node
  91. def forceMatchingWidths: Unit

    Force the width of this nodes input to have the same width this if known if input node width is known force width of this node

    Force the width of this nodes input to have the same width this if known if input node width is known force width of this node

    Definition Classes
    BitsNode
  92. def fromBits(b: Bits): BitsInObject.this.type

    Definition Classes
    Data
  93. def fromInt(x: Int): BitsInObject.this.type

    Set the value of this UInt

    Set the value of this UInt

    Definition Classes
    UIntBits
  94. def fromNode(n: Node): BitsInObject.this.type

    Factory method to create and assign a *UInt* type to a Node *n*.

    Factory method to create and assign a *UInt* type to a Node *n*.

    Definition Classes
    UIntData
  95. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  96. def getNode: Node

    returns

    The root node input

    Definition Classes
    BitsNode
  97. def getWidth(): Int

    returns

    the width or number of bits used by this node

    Definition Classes
    Node
    Exceptions thrown
    ChiselException

    if the width of the node is unknown

  98. def hashCode(): Int

    returns

    the unique hashCode for this node

    Definition Classes
    Node → AnyRef → Any
  99. def hashCodeForCSE: Int

    Definition Classes
    Node
  100. def illegalAssignment(that: Any): Unit

    Attributes
    protected
    Definition Classes
    Data
  101. def infer: Boolean

    Called while we're walking the graph inferring the width of nodes.

    Called while we're walking the graph inferring the width of nodes. We return true if we should continue to walk the graph, either because there's a node whose width we don't know, or because we updated a node's width.

    Definition Classes
    Node
  102. def init(n: String, w: Int, ins: Node*): Node

    Init the node and calculate its width and add inputs to the node

    Init the node and calculate its width and add inputs to the node

    n

    name of node

    w

    the bit width of the node

    ins

    Nodes that are inputs to this node

    Definition Classes
    Node
  103. def init(n: String, widthFunc: (⇒ Node) ⇒ Width, ins: Node*): Node

    Init the node and calculate its width and add inputs to the node

    Init the node and calculate its width and add inputs to the node

    n

    name of node

    widthFunc

    the function to use to calculate the width of the node

    ins

    Nodes that are inputs to this node

    Definition Classes
    Node
  104. def initOf(n: String, widthfunc: (⇒ Node) ⇒ Width, ins: Iterable[Node]): Node

    Init the node and calculate its width and add inputs to the node

    Init the node and calculate its width and add inputs to the node

    n

    name of node

    widthfunc

    the function to use to calculate the width of the node

    ins

    Nodes that are inputs to this node

    Definition Classes
    Node
  105. val inputs: ArrayBuffer[Node]

    The inputs that this node depends on

    The inputs that this node depends on

    Definition Classes
    Node
  106. def isDirectionless: Boolean

    returns

    this instantiation is neither of INPUT or OUTPUT

    Definition Classes
    BitsData
  107. lazy val isInObject: Boolean

    Definition Classes
    BitsInObjectNode
  108. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  109. def isIo: Boolean

    returns

    this node is an I/O Node for a module

    Definition Classes
    Node
  110. def isIo_=(isIo: Boolean): Unit

    Definition Classes
    Node
  111. final def isLit: Boolean

    This function determines if a node is a literal, a fixed value

    This function determines if a node is a literal, a fixed value

    Definition Classes
    Node
  112. def isTopLevelIO: Boolean

    returns

    is this node I/O for the top level module

    Definition Classes
    Node
  113. var isTypeNode: Boolean

    Definition Classes
    Node
  114. def isTypeOnly: Boolean

    Chisel3 - type-only nodes (no data - no initialization or assignment) This is used to determine which nodes must be Wire() wrapped, and whether Wire() wrapping of the node is legal or not.

    Chisel3 - type-only nodes (no data - no initialization or assignment) This is used to determine which nodes must be Wire() wrapped, and whether Wire() wrapping of the node is legal or not.

    Definition Classes
    DataNode
  115. def isUsedByClockHi: Boolean

    returns

    this node is a Register

    Definition Classes
    Node
  116. def isWired: Boolean

    Definition Classes
    Data
  117. def isZeroWidth: Boolean

    returns

    this node has zero-width

    Definition Classes
    Node
  118. val line: StackTraceElement

    The trace information for chisel for this node

    The trace information for chisel for this node

    Definition Classes
    Node
  119. def litOf: Literal

    returns

    the literal value of a node

    Definition Classes
    Node
    Exceptions thrown
    ChiselException

    if there is no literal value available

  120. def litValue(default: BigInt = BigInt(-1)): BigInt

    returns

    the literal value of the node as a BigInt

    Bool(true).litValue() => BigInt(1)
    Definition Classes
    Node
  121. def matchWidth(w: Width): Node

    Definition Classes
    BitsNode
  122. def max(b: UInt): UInt

    Definition Classes
    Num
  123. def maybeFlatten: Seq[Node]

    Deprecated: Do not use

    Deprecated: Do not use

    Definition Classes
    Node
  124. def min(b: UInt): UInt

    Definition Classes
    Num
  125. var modified: Boolean

    Definition Classes
    Node
  126. def muxes: Seq[Mux]

    Attributes
    protected[Chisel]
    Definition Classes
    proc
  127. var name: String

    Name of the instance.

    Name of the instance.

    Definition Classes
    Nameable
  128. def nameIt(path: String, isNamingIo: Boolean): Unit

    name this node

    name this node

    Definition Classes
    DataNode
    Note

    use setName in Node rather than this directly

  129. var named: Boolean

    named is used to indicate that name was set explicitly and should not be overriden

    named is used to indicate that name was set explicitly and should not be overriden

    Definition Classes
    Nameable
  130. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  131. def needWidth(): Int

    returns

    the bitWidth of the node

    Definition Classes
    Node
    Exceptions thrown
    ChiselException

    if the width is not yet defined

  132. final def newBinaryOp(right: Bits, opName: String): BitsInObject.this.type

    Attributes
    protected
    Definition Classes
    Bits
  133. final def newLogicalOp(right: Bits, opName: String): Bool

    Attributes
    protected
    Definition Classes
    Bits
  134. final def newReductionOp(opName: String): Bool

    Attributes
    protected
    Definition Classes
    Bits
  135. final def newUnaryOp(opName: String): BitsInObject.this.type

    Attributes
    protected
    Definition Classes
    Bits
  136. def next: Node

    Attributes
    protected[Chisel]
    Definition Classes
    proc
  137. def nextOpt: Option[Node]

    Attributes
    protected[Chisel]
    Definition Classes
    proc
  138. final def notify(): Unit

    Definition Classes
    AnyRef
  139. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  140. def orR(): Bool

    reduction or, or all bits together

    reduction or, or all bits together

    Definition Classes
    Bits
  141. def params: Parameters

    Definition Classes
    Data
  142. def printTree(writer: PrintStream, depth: Int = 4, indent: String = ""): Unit

    Prints all members of a node and recursively its inputs up to a certain depth level This method is purely used for debugging

    Prints all members of a node and recursively its inputs up to a certain depth level This method is purely used for debugging

    Definition Classes
    Node
  143. def procAssign(src: Node): Unit

    Definition Classes
    Bitsproc
  144. var procAssigned: Boolean

    Attributes
    protected
    Definition Classes
    proc
  145. var prune: Boolean

    Definition Classes
    Node
  146. def replaceTree(newNode: Node): Unit

    Replace the subtree starting from this node with the indicated replacement

    Replace the subtree starting from this node with the indicated replacement

    newNode

    The node to start tree from

    Definition Classes
    Node
  147. def review(): Unit

    Review a node for optimization possibilities if its children have been updated

    Review a node for optimization possibilities if its children have been updated

    Definition Classes
    Node
  148. def setDefault(src: Node): Unit

    Attributes
    protected
    Definition Classes
    proc
  149. def setIsTypeNode: Unit

    make this node a type node

    make this node a type node

    Definition Classes
    Data
  150. def setIsWired(value: Boolean): Unit

    Definition Classes
    Data
  151. def setName(n: String): Unit

    Set the name of this module to the string 'n'

    Set the name of this module to the string 'n'

    Definition Classes
    Nameable
    Example:
    1. my.io.node.setName("MY_IO_NODE")
  152. def setWidth(w: Int): Unit

    Force the bit width of a node

    Force the bit width of a node

    w

    the bit width to force

    Definition Classes
    Node
  153. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  154. def toBits(): UInt

    returns

    This node as a UInt

    Definition Classes
    UIntNode
  155. def toBool(): Bool

    Try to convert this data to a Bool

    Try to convert this data to a Bool

    Definition Classes
    Data
    Exceptions thrown
    ChiselException

    if the width is not 1

  156. def toBools: Vec[Bool]

    Split up this bits instantiation to a Vec of Bools

    Split up this bits instantiation to a Vec of Bools

    Definition Classes
    Bits
  157. lazy val toNode: Node

    Definition Classes
    DataNode
  158. def toSInt(): SInt

    Definition Classes
    Bits
  159. def toString(): String

    Definition Classes
    Bits → AnyRef → Any
  160. def toUInt(): UInt

    Definition Classes
    Bits
  161. def unary_!(): Bool

    Definition Classes
    UInt
  162. def unary_-(): UInt

    Definition Classes
    UIntNum
  163. def unary_~(): BitsInObject.this.type

    invert all bits with ~

    invert all bits with ~

    Definition Classes
    Bits
  164. def usesInClockHi(i: Node): Boolean

    Definition Classes
    Node
  165. def verifyMuxes: Unit

    Attributes
    protected[Chisel]
    Definition Classes
    proc
  166. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  167. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  168. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  169. def xorR(): Bool

    reduction xor, xor all bits together

    reduction xor, xor all bits together

    Definition Classes
    Bits
  170. def zext(): SInt

    Convert a UInt to an SInt by added a MSB zero

    Convert a UInt to an SInt by added a MSB zero

    Definition Classes
    UInt
  171. def |(b: Bits): BitsInObject.this.type

    Bitwise or

    Bitwise or

    Definition Classes
    Bits

Deprecated Value Members

  1. def !=(that: BitPat): Bool

    Definition Classes
    Bits
    Annotations
    @deprecated
    Deprecated

    (Since version 3) Use =/= rather than != for chisel comparison

  2. def !=(b: Bits): Bool

    Definition Classes
    Bits
    Annotations
    @deprecated
    Deprecated

    (Since version 3) Use =/= rather than != for chisel comparison

Inherited from UInt

Inherited from Num[UInt]

Inherited from Bits

Inherited from proc

Inherited from Data

Inherited from Node

Inherited from Nameable

Inherited from AnyRef

Inherited from Any

Ungrouped