Class/Object

Chisel

Fixed

Related Docs: object Fixed | package Chisel

Permalink

class Fixed extends Bits with Num[Fixed]

A Fixed point data type

Source
Fixed.scala
Linear Supertypes
Num[Fixed], Bits, proc, Data, Node, Nameable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Fixed
  2. Num
  3. Bits
  4. proc
  5. Data
  6. Node
  7. Nameable
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Fixed(fractionalWidth: Int = 0)

    Permalink

    Use Fixed object to create rather than this class directly

Type Members

  1. type T = Fixed

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. def ##[T <: Data](right: T): Fixed.this.type

    Permalink

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

    Permalink
    Definition Classes
    AnyRef → Any
  5. def %(b: Fixed): Fixed

    Permalink

    This is just the modulo of the two fixed point bit representations changed into SInt and operated on

    This is just the modulo of the two fixed point bit representations changed into SInt and operated on

    Definition Classes
    FixedNum
  6. def %(b: Bits): Bits

    Permalink
    Definition Classes
    Bits
  7. def &(b: Bits): Fixed.this.type

    Permalink

    Bitwise and

    Bitwise and

    Definition Classes
    Bits
  8. def *(b: Fixed): Fixed

    Permalink

    Multiply increasing the Bit Width

    Multiply increasing the Bit Width

    Definition Classes
    FixedNum
  9. def *(b: Bits): Bits

    Permalink
    Definition Classes
    Bits
  10. def *%(b: Fixed): Fixed

    Permalink

    Multiply truncating the result to the same Fixed format

  11. def *&(b: Fixed): Fixed

    Permalink

    Multiply with one bit of rounding

  12. def +(b: Fixed): Fixed

    Permalink
    Definition Classes
    FixedNum
  13. def +(b: Bits): Bits

    Permalink
    Definition Classes
    Bits
  14. def -(b: Fixed): Fixed

    Permalink
    Definition Classes
    FixedNum
  15. def -(b: Bits): Bits

    Permalink
    Definition Classes
    Bits
  16. def /(b: Fixed): Fixed

    Permalink
    Definition Classes
    FixedNum
  17. def /(b: Bits): Bits

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

    Permalink
    Definition Classes
    Data
  19. def <(b: Fixed): Bool

    Permalink
    Definition Classes
    FixedNum
  20. def <<(b: UInt): Fixed.this.type

    Permalink

    Shift left operation

    Shift left operation

    Definition Classes
    Bits
  21. def <=(b: Fixed): Bool

    Permalink
    Definition Classes
    FixedNum
  22. def <>(src: Node): Unit

    Permalink

    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
  23. def =/=(that: BitPat): Bool

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

    Permalink

    not equal to

    not equal to

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

    Permalink
    Definition Classes
    Data
  26. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  27. def ===(b: Fixed): Bool

    Permalink
  28. def ===(that: BitPat): Bool

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

    Permalink
    Definition Classes
    BitsData
  30. def >(b: Fixed): Bool

    Permalink
    Definition Classes
    FixedNum
  31. def >=(b: Fixed): Bool

    Permalink
    Definition Classes
    FixedNum
  32. def >>(b: UInt): Fixed

    Permalink
  33. 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
    Node
  34. def ^(b: Bits): Fixed.this.type

    Permalink

    Bitwise xor

    Bitwise xor

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

    Permalink
    Definition Classes
    Node
  36. val _id: Int

    Permalink

    The unique id of this node

    The unique id of this node

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

    Permalink
    Definition Classes
    Node
  38. def andR(): Bool

    Permalink

    reduction and, and all bits together

    reduction and, and all bits together

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

    Permalink

    Extract a range of bits, inclusive from hi to lo

    Extract a range of bits, inclusive from hi to lo

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

    Permalink

    Extract a range of bits, inclusive from hi to lo

    Extract a range of bits, inclusive from hi to lo

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

    Permalink

    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
  42. final def apply(bit: UInt): Bool

    Permalink

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

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

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

    Permalink

    Extract a single Bool at index *bit*.

    Extract a single Bool at index *bit*.

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

    Permalink
    Definition Classes
    BitsData
  45. def asDirectionless(): Fixed.this.type

    Permalink

    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
  46. def asInput(): Fixed.this.type

    Permalink

    Set this Bits instatiation to be an INPUT

    Set this Bits instatiation to be an INPUT

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

    Permalink
    Definition Classes
    Any
  48. def asOutput(): Fixed.this.type

    Permalink

    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
  49. final def asSInt(): SInt

    Permalink
    Definition Classes
    Bits
  50. final def asTypeFor(node: Node): Fixed.this.type

    Permalink

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

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

    Attributes
    protected[Chisel]
    Definition Classes
    Bits
  51. final def asUInt(): UInt

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

    Permalink
    Definition Classes
    BitsNode
  53. def bitSet(off: UInt, dat: UInt): Fixed.this.type

    Permalink

    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
  54. def canCSE: Boolean

    Permalink
    Definition Classes
    Node
  55. lazy val chiselName: String

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

    Permalink

    The clock for this node

    The clock for this node

    Definition Classes
    Node
  57. def clone(): Fixed.this.type

    Permalink
    Definition Classes
    Data → AnyRef
  58. def cloneType(): Fixed.this.type

    Permalink

    clone this Fixed instantiation

    clone this Fixed instantiation

    Definition Classes
    FixedBitsData
  59. def colonEquals(that: Bits): Unit

    Permalink

    Assignment operator

    Assignment operator

    Attributes
    protected
    Definition Classes
    FixedBitsData
  60. def colonEquals[T <: Data](that: Seq[T]): Unit

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

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

    Permalink
    Definition Classes
    Data
  63. 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
  64. val consumers: LinkedHashSet[Node]

    Permalink

    nodes that consume one of my outputs

    nodes that consume one of my outputs

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

    Permalink
    Definition Classes
    Bits
  66. def dblLitValue: Double

    Permalink

    Convert the node literal to a Double

    Convert the node literal to a Double

    Definition Classes
    Node
  67. def default: proc

    Permalink
    Attributes
    protected
    Definition Classes
    proc
  68. def defaultMissing: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    proc
  69. def defaultRequired: Boolean

    Permalink
    Definition Classes
    Bitsproc
  70. var dir: IODirection

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

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

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

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

    Permalink

    Compare two nodes

    Compare two nodes

    that

    the node to compare with

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

    Permalink
    Definition Classes
    Node
  76. def error(b: Bits): Bits

    Permalink

    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

  77. def finalize(): Unit

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

    Permalink
    Definition Classes
    BitsData
  79. def flip(): Fixed.this.type

    Permalink

    Change INPUT to OUTPUT and OUTPUT to INPUT

    Change INPUT to OUTPUT and OUTPUT to INPUT

    Definition Classes
    BitsData
  80. def floLitValue: Float

    Permalink

    Convert the node literal to a Float

    Convert the node literal to a Float

    Definition Classes
    Node
  81. def forceMatchingWidths: Unit

    Permalink

    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
  82. var fractionalWidth: Int

    Permalink
  83. def fromBits(b: Bits): Fixed.this.type

    Permalink
    Definition Classes
    Data
  84. def fromInt(x: Int): Fixed.this.type

    Permalink

    Create a Fixed representation from an Int

    Create a Fixed representation from an Int

    Definition Classes
    FixedBits
  85. def fromNode(n: Node): Fixed.this.type

    Permalink

    Convert a Node to a Fixed data type with the same fractional width as this instantiation

    Convert a Node to a Fixed data type with the same fractional width as this instantiation

    Definition Classes
    FixedData
  86. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  87. def getFractionalWidth(): Int

    Permalink
  88. def getNode: Node

    Permalink

    returns

    The root node input

    Definition Classes
    BitsNode
  89. 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

  90. def hashCode(): Int

    Permalink

    returns

    the unique hashCode for this node

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    Data
  93. 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
  94. 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
  95. 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
  96. 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
  97. val inputs: ArrayBuffer[Node]

    Permalink

    The inputs that this node depends on

    The inputs that this node depends on

    Definition Classes
    Node
  98. def isDirectionless: Boolean

    Permalink

    returns

    this instantiation is neither of INPUT or OUTPUT

    Definition Classes
    BitsData
  99. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  100. def isIo: Boolean

    Permalink

    returns

    this node is an I/O Node for a module

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

    Permalink
    Attributes
    protected[Chisel]
    Definition Classes
    Node
  102. 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
  103. def isTopLevelIO: Boolean

    Permalink

    returns

    is this node I/O for the top level module

    Definition Classes
    Node
  104. var isTypeNode: Boolean

    Permalink
    Definition Classes
    Node
  105. 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
    DataNode
  106. def isUsedByClockHi: Boolean

    Permalink

    returns

    this node is a Register

    Definition Classes
    Node
  107. def isWired: Boolean

    Permalink
    Definition Classes
    Data
  108. def isZeroWidth: Boolean

    Permalink

    returns

    this node has zero-width

    Definition Classes
    Node
  109. val line: StackTraceElement

    Permalink

    The trace information for chisel for this node

    The trace information for chisel for this node

    Definition Classes
    Node
  110. def litOf: Literal

    Permalink

    returns

    the literal value of a node

    Definition Classes
    Node
    Exceptions thrown

    ChiselException if there is no literal value available

  111. 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
  112. def matchWidth(w: Width): Node

    Permalink
    Definition Classes
    BitsNode
  113. def max(b: Fixed): Fixed

    Permalink
    Definition Classes
    Num
  114. def maybeFlatten: Seq[Node]

    Permalink

    Deprecated: Do not use

    Deprecated: Do not use

    Definition Classes
    Node
  115. def min(b: Fixed): Fixed

    Permalink
    Definition Classes
    Num
  116. var modified: Boolean

    Permalink
    Definition Classes
    Node
  117. def muxes: Seq[Mux]

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

    Permalink

    Name of the instance.

    Name of the instance.

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

    Permalink

    name this node

    name this node

    Definition Classes
    DataNode
    Note

    use setName in Node rather than this directly

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

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

    Permalink

    returns

    the bitWidth of the node

    Definition Classes
    Node
    Exceptions thrown

    ChiselException if the width is not yet defined

  123. final def newBinaryOp(right: Bits, opName: String): Fixed.this.type

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    Bits
  126. final def newUnaryOp(opName: String): Fixed.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Bits
  127. def next: Node

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

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

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

    Permalink
    Definition Classes
    AnyRef
  131. def orR(): Bool

    Permalink

    reduction or, or all bits together

    reduction or, or all bits together

    Definition Classes
    Bits
  132. def params: Parameters

    Permalink
    Definition Classes
    Data
  133. 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
  134. def procAssign(src: Node): Unit

    Permalink
    Definition Classes
    Bitsproc
  135. var procAssigned: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    proc
  136. var prune: Boolean

    Permalink
    Definition Classes
    Node
  137. 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
  138. 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
    Node
  139. def setDefault(src: Node): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    proc
  140. def setIsTypeNode: Unit

    Permalink

    make this node a type node

    make this node a type node

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

    Permalink
    Definition Classes
    Data
  142. 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")
  143. 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
  144. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink

    returns

    This node as a UInt

    Definition Classes
    Node
  146. def toBool(): Bool

    Permalink

    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

  147. def toBools: Vec[Bool]

    Permalink

    Split up this bits instantiation to a Vec of Bools

    Split up this bits instantiation to a Vec of Bools

    Definition Classes
    Bits
  148. lazy val toNode: Node

    Permalink

    returns

    This node

    Definition Classes
    DataNode
  149. def toSInt(): SInt

    Permalink
    Definition Classes
    Bits
  150. def toString(): String

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

    Permalink
    Definition Classes
    Bits
  152. def unary_-(): Fixed

    Permalink
    Definition Classes
    FixedNum
  153. def unary_~(): Fixed.this.type

    Permalink

    invert all bits with ~

    invert all bits with ~

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

    Permalink
    Definition Classes
    Node
  155. def verifyMuxes: Unit

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

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

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

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

    Permalink

    reduction xor, xor all bits together

    reduction xor, xor all bits together

    Definition Classes
    Bits
  160. def |(b: Bits): Fixed.this.type

    Permalink

    Bitwise or

    Bitwise or

    Definition Classes
    Bits

Deprecated Value Members

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

    Permalink
    Definition Classes
    Bits
    Annotations
    @deprecated
    Deprecated

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

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

    Permalink
    Definition Classes
    Bits
    Annotations
    @deprecated
    Deprecated

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

Inherited from Num[Fixed]

Inherited from Bits

Inherited from proc

Inherited from Data

Inherited from Node

Inherited from Nameable

Inherited from AnyRef

Inherited from Any

Ungrouped