Class/Object

Chisel

OHToUInt

Related Docs: object OHToUInt | package Chisel

Permalink

class OHToUInt extends Log2Like

Converts a One Hot encoding to a UInt Use the OHToUInt object rather than this class directly

Source
Log2.scala
Linear Supertypes
Log2Like, Op, Node, Nameable, AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OHToUInt
  2. Log2Like
  3. Op
  4. Node
  5. Nameable
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OHToUInt(x: Bits)

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. def ##(b: Node): Node

    Permalink

    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
  3. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  4. def <>(src: Node): Unit

    Permalink
    Definition Classes
    Node
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. def W0Wtransform(): Unit

    Permalink

    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
    OpNode
  7. def ^^(src: Node): Unit

    Permalink
    Definition Classes
    Node
  8. val _id: Int

    Permalink

    The unique id of this node

    The unique id of this node

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

    Permalink
    Definition Classes
    Node
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. final def asSInt(): SInt

    Permalink
    Definition Classes
    Node
  12. final def asUInt(): UInt

    Permalink
    Definition Classes
    Node
  13. def assign(src: Node): Unit

    Permalink
    Definition Classes
    Node
  14. def canCSE: Boolean

    Permalink
    Definition Classes
    OpNode
  15. lazy val chiselName: String

    Permalink
    Definition Classes
    Node
  16. var clock: Option[Clock]

    Permalink

    The clock for this node

    The clock for this node

    Definition Classes
    Node
  17. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. def componentOf: Module

    Permalink

    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
  19. val consumers: LinkedHashSet[Node]

    Permalink

    nodes that consume one of my outputs

    nodes that consume one of my outputs

    Definition Classes
    Node
  20. def dblLitValue: Double

    Permalink

    Convert the node literal to a Double

    Convert the node literal to a Double

    Definition Classes
    Node
  21. var driveRand: Boolean

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

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

    Permalink

    Compare two nodes

    Compare two nodes

    that

    the node to compare with

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

    Permalink
    Definition Classes
    OpNode
  25. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. def floLitValue: Float

    Permalink

    Convert the node literal to a Float

    Convert the node literal to a Float

    Definition Classes
    Node
  27. def forceMatchingWidths: Unit

    Permalink
    Definition Classes
    OpNode
  28. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  29. def getNode: Node

    Permalink

    returns

    The root node input

    Definition Classes
    Node
  30. def getWidth(): Int

    Permalink

    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

  31. def hashCode(): Int

    Permalink

    returns

    the unique hashCode for this node

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

    Permalink
    Definition Classes
    Node
  33. def identityFromNode: Int

    Permalink
    Definition Classes
    Op
  34. def infer: Boolean

    Permalink

    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
  35. def init(n: String, w: Int, ins: Node*): Node

    Permalink

    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
  36. def init(n: String, widthFunc: (⇒ Node) ⇒ Width, ins: Node*): Node

    Permalink

    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
  37. def initOf(n: String, widthfunc: (⇒ Node) ⇒ Width, ins: Seq[Node]): Node

    Permalink

    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
  38. val inputs: ArrayBuffer[Node]

    Permalink

    The inputs that this node depends on

    The inputs that this node depends on

    Definition Classes
    Node
  39. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  40. def isIo: Boolean

    Permalink

    returns

    this node is an I/O Node for a module

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

    Permalink
    Attributes
    protected[Chisel]
    Definition Classes
    Node
  42. final def isLit: Boolean

    Permalink

    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
  43. def isTopLevelIO: Boolean

    Permalink

    returns

    is this node I/O for the top level module

    Definition Classes
    Node
  44. var isTypeNode: Boolean

    Permalink
    Definition Classes
    Node
  45. def isTypeOnly: Boolean

    Permalink

    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
    OpNode
  46. def isUsedByClockHi: Boolean

    Permalink

    returns

    this node is a Register

    Definition Classes
    Node
  47. def isZeroWidth: Boolean

    Permalink

    returns

    this node has zero-width

    Definition Classes
    Node
  48. val line: StackTraceElement

    Permalink

    The trace information for chisel for this node

    The trace information for chisel for this node

    Definition Classes
    Node
  49. def litOf: Literal

    Permalink

    returns

    the literal value of a node

    Definition Classes
    Node
    Exceptions thrown

    ChiselException if there is no literal value available

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

    Permalink

    returns

    the literal value of the node as a BigInt

    Bool(true).litValue() => BigInt(1)
    Definition Classes
    Node
  51. def lower: Node

    Permalink
    Definition Classes
    OHToUIntOp
  52. def maybeFlatten: Seq[Node]

    Permalink

    Deprecated: Do not use

    Deprecated: Do not use

    Definition Classes
    Node
  53. var modified: Boolean

    Permalink
    Definition Classes
    Node
  54. var name: String

    Permalink

    Name of the instance.

    Name of the instance.

    Definition Classes
    Nameable
  55. var named: Boolean

    Permalink

    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
  56. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  57. def needWidth(): Int

    Permalink

    returns

    the bitWidth of the node

    Definition Classes
    Node
    Exceptions thrown

    ChiselException if the width is not yet defined

  58. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  59. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  60. val op: String

    Permalink
    Definition Classes
    Log2LikeOp
  61. def printTree(writer: PrintStream, depth: Int = 4, indent: String = ""): Unit

    Permalink

    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
  62. var prune: Boolean

    Permalink
    Definition Classes
    Node
  63. def replaceTree(newNode: Node): Unit

    Permalink

    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
  64. def review(): Unit

    Permalink

    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
    OpNode
  65. def setName(n: String): Unit

    Permalink

    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")
  66. def setWidth(w: Int): Unit

    Permalink

    Force the bit width of a node

    Force the bit width of a node

    w

    the bit width to force

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

    Permalink
    Definition Classes
    AnyRef
  68. def toBits(): UInt

    Permalink

    returns

    This node as a UInt

    Definition Classes
    Node
  69. def toNode: Node

    Permalink

    returns

    This node

    Definition Classes
    Node
  70. def toSInt(): SInt

    Permalink
    Definition Classes
    Node
  71. def toString(): String

    Permalink
    Definition Classes
    Op → AnyRef → Any
  72. def toUInt(): UInt

    Permalink
    Definition Classes
    Node
  73. def usesInClockHi(i: Node): Boolean

    Permalink
    Definition Classes
    Node
  74. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Log2Like

Inherited from Op

Inherited from Node

Inherited from Nameable

Inherited from AnyRef

Inherited from Any

Ungrouped