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

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

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

  16. final def asInstanceOf[T0]: T0

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

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

    Definition Classes
    Node
  19. def canCSE: Boolean

    Definition Classes
    Node
  20. lazy val chiselName: String

    Definition Classes
    Node
  21. var clock: Clock

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

    Definition Classes
    Data → AnyRef
  23. var comp: proc

  24. var component: Module

    Definition Classes
    Node
  25. def componentOf: Module

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

    Definition Classes
    Node
  27. def dblLitValue: Double

    Definition Classes
    Node
  28. def dblValue: Double

    Definition Classes
    Node
  29. var depth: Int

    Definition Classes
    Node
  30. var driveRand: Boolean

    Definition Classes
    Node
  31. def emitIndex(): Int

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

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

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

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

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

    Definition Classes
    Node
  37. def finalize(): Unit

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

  39. var flattened: Boolean

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

  41. def floLitValue: Float

    Definition Classes
    Node
  42. def floValue: Float

    Definition Classes
    Node
  43. def forceMatchingWidths: Unit

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

  45. var genError: Boolean

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

    Definition Classes
    AnyRef → Any
  47. def getLit: Literal

    Definition Classes
    Node
  48. def getNode(): Node

    Definition Classes
    Node
  49. def getWidth(): Int

    Definition Classes
    Node
  50. val hashCode: Int

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

    Definition Classes
    Node
  52. var index: 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. var 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. 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
  92. var prune: Boolean

    Definition Classes
    Node
  93. def removeTypeNodes(): Unit

    Definition Classes
    Node
  94. var sccIndex: Int

    Definition Classes
    Node
  95. var sccLowlink: Int

    Definition Classes
    Node
  96. def setIsClkInput: Unit

    Definition Classes
    Node
  97. def setIsTypeNode: Unit

  98. def setName(n: String): Unit

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

  100. var stack: Array[StackTraceElement]

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

    Definition Classes
    AnyRef
  102. def terminate(): Unit

  103. def toBits(): UInt

  104. def toBool(): Bool

  105. def toNode: Node

  106. def toString(): String

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

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

    Definition Classes
    Node
  109. def value: BigInt

    Definition Classes
    Node
  110. var varName: String

    Definition Classes
    nameable
  111. final def wait(): Unit

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

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

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

    Definition Classes
    Node
  115. def width: Int

    Definition Classes
    Node
  116. var width_: Int

    Definition Classes
    Node
  117. 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