Chisel

Data

abstract class Data extends Node

*Data* is part of the *Node* Composite Pattern class hierarchy. It is the root of the type system which includes composites (Bundle, Vec) and atomic types (UInt, SInt, etc.).

Instances of Data are meant to help with construction and correctness of a logic graph. They will trimmed out of the graph before a *Backend* generates target code.

Linear Supertypes
Node, nameable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Data
  2. Node
  3. nameable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Data()

Abstract Value Members

  1. abstract def asDirectionless(): Data.this.type

  2. abstract def asOutput(): Data.this.type

    Sets the direction (*dir*) of instances derived from Bits to OUTPUT or recursively sets members of Bundle/Vec to OUTPUT.

    Sets the direction (*dir*) of instances derived from Bits to OUTPUT or recursively sets members of Bundle/Vec to OUTPUT. Returns this instance with its exact type.

  3. abstract def fromNode(n: Node): Data.this.type

    Factory method to create and assign a leaf-type instance out of a subclass of *Node* instance which we have lost the concrete type.

Concrete 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): Data.this.type

  4. def ##(b: Node): Node

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

    Definition Classes
    AnyRef → Any
  6. def :=[T <: Data](data: T): Unit

  7. def <>(src: Node): Unit

    Definition Classes
    Node
  8. final def ==(arg0: AnyRef): Boolean

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

    Definition Classes
    Any
  10. def ===[T <: Data](right: T): Bool

  11. var CppVertex: CppVertex

    Definition Classes
    Node
  12. def ^^(src: Node): Unit

    Definition Classes
    Node
  13. val _id: Int

    Definition Classes
    Node
  14. def addConsumers(): Unit

    Definition Classes
    Node
  15. def apply(name: String): Data

  16. def asInput(): Data.this.type

  17. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  18. def assign(src: Node): Unit

    Definition Classes
    Node
  19. def bitSet(off: UInt, dat: UInt): UInt

    Definition Classes
    Node
  20. def canCSE: Boolean

    Definition Classes
    Node
  21. lazy val chiselName: String

    Definition Classes
    Node
  22. var clock: Clock

    Definition Classes
    Node
  23. def clone(): Data.this.type

    Definition Classes
    Data → AnyRef
  24. var cntrIdx: Int

    Definition Classes
    Node
  25. var comp: proc

  26. var component: Module

    Definition Classes
    Node
  27. def componentOf: Module

    Definition Classes
    Node
  28. val consumers: ArrayBuffer[Node]

    Definition Classes
    Node
  29. var counter: Bits

    Definition Classes
    Node
  30. def dblLitValue: Double

    Definition Classes
    Node
  31. var depth: Int

    Definition Classes
    Node
  32. var driveRand: Boolean

    Definition Classes
    Node
  33. lazy val emitIndex: Int

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

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

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

    Definition Classes
    Node
  37. def extract(b: Bundle): List[Node]

    Definition Classes
    Node
  38. def extract(widths: Array[Int]): List[UInt]

    Definition Classes
    Node
  39. def finalize(): Unit

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

  41. var flattened: Boolean

    Definition Classes
    Node
  42. def flip(): Data.this.type

  43. def floLitValue: Float

    Definition Classes
    Node
  44. def forceMatchingWidths: Unit

    Definition Classes
    Node
  45. def fromBits(b: Bits): Data.this.type

  46. var genError: Boolean

    Definition Classes
    Node
  47. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  48. def getLit: Literal

    Definition Classes
    Node
  49. def getNode(): Node

    Definition Classes
    Node
  50. def getWidth(): Int

    Definition Classes
    Node
  51. def hashCode(): Int

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

    Definition Classes
    Node
  53. def infer: Boolean

    Definition Classes
    Node
  54. var inferCount: Int

    Definition Classes
    Node
  55. var inferWidth: (Node) ⇒ Int

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

    Definition Classes
    Node
  57. def init(n: String, width: (Node) ⇒ Int, ins: Node*): Node

    Definition Classes
    Node
  58. def initOf(n: String, width: (Node) ⇒ Int, ins: Iterable[Node]): Node

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

    Definition Classes
    Node
  60. def isByValue: Boolean

    Definition Classes
    Node
  61. var isClkInput: Boolean

    Definition Classes
    Node
  62. def isDirectionless: Boolean

  63. var isFixedWidth: Boolean

    Definition Classes
    Node
  64. def isInObject: Boolean

    Definition Classes
    Node
  65. def isInVCD: Boolean

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

    Definition Classes
    Any
  67. def isIo: Boolean

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

    Definition Classes
    Node
  69. def isLit: Boolean

    Definition Classes
    Node
  70. var isPrintArg: Boolean

    Definition Classes
    Node
  71. def isRamWriteInput(i: Node): Boolean

    Definition Classes
    Node
  72. def isReg: Boolean

    Definition Classes
    Node
  73. var isScanArg: Boolean

    Definition Classes
    Node
  74. var isTypeNode: Boolean

    Definition Classes
    Node
  75. def isUsedByRam: Boolean

    Definition Classes
    Node
  76. var isWidthWalked: Boolean

    Definition Classes
    Node
  77. val line: StackTraceElement

    Definition Classes
    Node
  78. def litOf: Literal

    Definition Classes
    Node
  79. def litValue(default: BigInt = BigInt(-1)): BigInt

    Definition Classes
    Node
  80. def matchWidth(w: Int): Node

    Definition Classes
    Node
  81. def maxNum: BigInt

    Definition Classes
    Node
  82. def maybeFlatten: Seq[Node]

    Definition Classes
    Node
  83. def minNum: BigInt

    Definition Classes
    Node
  84. var name: String

    Definition Classes
    nameable
  85. var nameHolder: nameable

    Definition Classes
    Node
  86. def nameIt(path: String, isNamingIo: Boolean): Unit

    Definition Classes
    DataNode
  87. var named: Boolean

    _named_ is used to indicates name was set explicitely and should not be overriden by a _nameIt_ generator.

    _named_ is used to indicates name was set explicitely and should not be overriden by a _nameIt_ generator.

    Definition Classes
    nameable
  88. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  89. final def notify(): Unit

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

    Definition Classes
    AnyRef
  91. var pName: String

    Definition Classes
    nameable
  92. 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.

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

    Definition Classes
    Node
  94. def removeTypeNodes(): Unit

    Definition Classes
    Node
  95. var sccIndex: Int

    Definition Classes
    Node
  96. var sccLowlink: Int

    Definition Classes
    Node
  97. def setIsTypeNode: Unit

  98. def setName(n: String): Unit

    Definition Classes
    Node
  99. def setPseudoName(path: String, isNamingIo: Boolean): Unit

    Definition Classes
    Node
  100. def setWidth(w: Int): Unit

  101. var shadow: Bits

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

    Definition Classes
    AnyRef
  103. def terminate(): Unit

  104. def toBits(): UInt

  105. def toBool(): Bool

  106. def toNode: Node

  107. def toString(): String

    Definition Classes
    AnyRef → Any
  108. def traceNode(c: Module, stack: Stack[() ⇒ Any]): Any

    Definition Classes
    Node
  109. def traceableNodes: Array[Node]

    Definition Classes
    Node
  110. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  113. var walked: Boolean

    Definition Classes
    Node
  114. def width: Int

    Definition Classes
    Node
  115. var width_: Int

    Definition Classes
    Node
  116. def width_=(w: Int): Unit

    Sets the width of a Node.

    Sets the width of a Node.

    Definition Classes
    Node

Inherited from Node

Inherited from nameable

Inherited from AnyRef

Inherited from Any

Ungrouped