spinal.lib.experimental.math

RecFloating

Related Doc: package math

case class RecFloating(exponentSize: Int, mantissaSize: Int) extends Bundle with Product with Serializable

Floating point value recoded using Berkeley encoding (see https://github.com/ucb-bar/berkeley-hardfloat)

exponentSize

Recoded exponent size (1 bit wider than the IEEE754 equivalent float)

mantissaSize

Mantissa field size with the implicit one not included

Linear Supertypes
Serializable, Serializable, Product, Equals, Bundle, OverridedEqualsHashCode, MultiData, Data, ScalaLocated, SpinalTagReady, Assignable, NameableByComponent, Nameable, OwnableRef, ContextUser, GlobalDataUser, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. RecFloating
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Bundle
  7. OverridedEqualsHashCode
  8. MultiData
  9. Data
  10. ScalaLocated
  11. SpinalTagReady
  12. Assignable
  13. NameableByComponent
  14. Nameable
  15. OwnableRef
  16. ContextUser
  17. GlobalDataUser
  18. AnyRef
  19. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RecFloating(exponentSize: Int, mantissaSize: Int)

    exponentSize

    Recoded exponent size (1 bit wider than the IEEE754 equivalent float)

    mantissaSize

    Mantissa field size with the implicit one not included

Type Members

  1. abstract type RefOwnerType

    Definition Classes
    OwnableRef

Value Members

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

    Definition Classes
    AnyRef → Any
  2. def ##(right: Data): Bits

    Definition Classes
    Data
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def :=(that: BigDecimal): Unit

    Assign double value to the Floating

    Assign double value to the Floating

    that

    BigDecimal value

  5. def <(that: BigDecimal): Bool

    Less than constant

    Less than constant

    that

    other side of the comparison

    returns

    true is this value is smaller than that

  6. def <(that: RecFloating): Bool

    Less than

    Less than

    that

    other side of the comparison

    returns

    true is this value is smaller than that

  7. def <=(that: BigDecimal): Bool

    Less than or equal to constant

    Less than or equal to constant

    that

    other side of the comparison

    returns

    true is this value is smaller or equal to that

  8. def <=(that: RecFloating): Bool

    Less than or equal

    Less than or equal

    that

    other side of the comparison

    returns

    true is this value is smaller or equal to that

  9. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  10. def ===(that: BigDecimal): Bool

    Equals to constant

    Equals to constant

    that

    other side of the comparison

    returns

    true is this value equals to that

  11. def ===(that: RecFloating): Bool

    Equals

    Equals

    that

    other side of the comparison

    returns

    true is this value equals to that

  12. def >(that: BigDecimal): Bool

    Greater than constant

    Greater than constant

    that

    other side of the comparison

    returns

    true is this value is greater than that

  13. def >(that: RecFloating): Bool

    Greater than

    Greater than

    that

    other side of the comparison

    returns

    true is this value is greater than that

  14. def >=(that: BigDecimal): Bool

    Greater than or equal to constant

    Greater than or equal to constant

    that

    other side of the comparison

    returns

    true is this value is greater of equal to that

  15. def >=(that: RecFloating): Bool

    Greater than or equal

    Greater than or equal

    that

    other side of the comparison

    returns

    true is this value is greater of equal to that

  16. var _spinalTags: Set[SpinalTag]

    Definition Classes
    SpinalTagReady
  17. def abs: RecFloating

    Absolute value

    Absolute value

    returns

    Absolute value of this float

  18. def addAttribute(attribute: Attribute): RecFloating.this.type

    Definition Classes
    Data → SpinalTagReady
  19. def addAttribute(name: String, value: String): RecFloating.this.type

    Definition Classes
    SpinalTagReady
  20. def addAttribute(name: String): RecFloating.this.type

    Definition Classes
    SpinalTagReady
  21. def addTag(spinalTag: SpinalTag): RecFloating.this.type

    Definition Classes
    MultiData → SpinalTagReady
  22. def addTags(tags: Iterable[SpinalTag]): RecFloating.this.type

    Definition Classes
    SpinalTagReady
  23. def allowSimplifyIt(): RecFloating.this.type

    Definition Classes
    Data
  24. def asBits: Bits

    Definition Classes
    MultiData → Data
  25. def asData: Data

    Definition Classes
    Data
  26. def asDirectionLess(): RecFloating.this.type

    Definition Classes
    MultiData → Data
  27. def asInput(): RecFloating.this.type

    Definition Classes
    MultiData → Data
  28. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  29. def asOutput(): RecFloating.this.type

    Definition Classes
    MultiData → Data
  30. def assignAllByName(that: Bundle): Unit

    Definition Classes
    Bundle
  31. def assignDontCare(): RecFloating.this.type

    Definition Classes
    Data
  32. final def assignFrom(that: AnyRef, conservative: Boolean): Unit

    Definition Classes
    Assignable
  33. def assignFromBits(bits: Bits, hi: Int, lo: Int): Unit

    Definition Classes
    MultiData → Data
  34. def assignFromBits(bits: Bits): Unit

    Definition Classes
    MultiData → Data
  35. def assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit

    Definition Classes
    Data
  36. def assignSomeByName(that: Bundle): Unit

    Definition Classes
    Bundle
  37. def assignTo(that: SInt): Unit

    Overrides assignment operator

    Overrides assignment operator

    that

    Integer number that will be assigned to the converted floating value

  38. def assignTo(that: UInt): Unit

    Overrides assignment operator

    Overrides assignment operator

    that

    Integer number that will be assigned to the converted floating value

  39. def clone(): Bundle

    Definition Classes
    Bundle → Data → AnyRef
  40. var cloneFunc: () ⇒ AnyRef

    Definition Classes
    Bundle
  41. var component: Component

    Definition Classes
    ContextUser
  42. var compositeAssign: Assignable

    Definition Classes
    Assignable
  43. def dontSimplifyIt(): RecFloating.this.type

    Definition Classes
    Data
  44. def elements: ArrayBuffer[(String, Data)]

    Definition Classes
    Bundle → MultiData
  45. def elementsString: String

    Definition Classes
    MultiData
  46. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  47. def equals(obj: Any): Boolean

    Definition Classes
    OverridedEqualsHashCode → AnyRef → Any
  48. def existsTag(cond: (SpinalTag) ⇒ Boolean): Boolean

    Definition Classes
    SpinalTagReady
  49. val exponent: Bits

    Exponent field (Berkeley encoded)

  50. val exponentSize: Int

    Recoded exponent size (1 bit wider than the IEEE754 equivalent float)

  51. def filterTag(cond: (SpinalTag) ⇒ Boolean): Iterable[SpinalTag]

    Definition Classes
    SpinalTagReady
  52. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  53. def find(name: String): Data

    Definition Classes
    MultiData
  54. def findTag(cond: (SpinalTag) ⇒ Boolean): Option[SpinalTag]

    Definition Classes
    SpinalTagReady
  55. def flatten: Seq[BaseType]

    Definition Classes
    MultiData → Data
  56. def flattenLocalName: Seq[String]

    Definition Classes
    MultiData → Data
  57. def flip(): RecFloating.this.type

    Definition Classes
    MultiData → Data
  58. def forEachNameables(doThat: (Any) ⇒ Unit): Unit

    Definition Classes
    Nameable
  59. def fromFloating(that: Floating): RecFloating

    Import from an IEEE 754 floating point number

  60. def fromSFix(that: SFix): RecFloating

    Import from SFix

  61. def fromSInt(that: SInt): RecFloating

    Import from SInt

  62. def fromUFix(that: UFix): RecFloating

    Import from UFix

  63. def fromUInt(that: UInt): RecFloating

    Import from UInt

  64. def genIf(cond: Boolean): RecFloating.this.type

    Definition Classes
    Data
  65. def getBitsWidth: Int

    Definition Classes
    MultiData → Data
  66. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  67. def getComponent(): Component

    Definition Classes
    Data → NameableByComponent
  68. def getComponents(): Seq[Component]

    Definition Classes
    Data
  69. def getDisplayName(): String

    Definition Classes
    Nameable
  70. def getExponentBias: Int

    Value of the exponent bias for this float configuration

  71. def getExponentZero: Int

    Value of the recoded exponent corresponding to the smallest exponent

  72. def getInstanceCounter: Int

    Definition Classes
    ContextUser
  73. def getName(): String

    Definition Classes
    NameableByComponent → Nameable
  74. def getName(default: String): String

    Definition Classes
    Nameable
  75. def getRefOwnersChain(): List[Any]

    Definition Classes
    OwnableRef
  76. def getRootParent: Data

    Definition Classes
    Data
  77. def getScalaLocationLong: String

    Definition Classes
    ScalaLocated
  78. def getScalaLocationShort: String

    Definition Classes
    ScalaLocated
  79. def getTag[T <: SpinalTag](clazz: Class[T]): Option[T]

    Definition Classes
    SpinalTagReady
  80. def getTypeString: String

    Definition Classes
    Bundle
  81. def getZero: RecFloating.this.type

    Definition Classes
    MultiData → Data
  82. val globalData: GlobalData

    Definition Classes
    GlobalDataUser
  83. def hasTag(spinalTag: SpinalTag): Boolean

    Definition Classes
    SpinalTagReady
  84. def hashCode(): Int

    Definition Classes
    OverridedEqualsHashCode → AnyRef → Any
  85. def init(that: BigDecimal): RecFloating.this.type

    Initialization function

    Initialization function

    that

    initialization value

    returns

    returns initialized object

  86. def instanceAttributes: Iterable[Attribute]

    Definition Classes
    SpinalTagReady
  87. def isDirectionLess: Boolean

    Definition Classes
    Data
  88. def isEmptyOfTag: Boolean

    Definition Classes
    SpinalTagReady
  89. def isInfinite: Bool

  90. def isInput: Boolean

    Definition Classes
    Data
  91. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  92. def isNaN: Bool

    Return true is the value is a NaN

  93. def isNamed: Boolean

    Definition Classes
    Nameable
  94. def isNormal: Bool

    Return true if the number is normal

  95. def isOutput: Boolean

    Definition Classes
    Data
  96. def isPositive: Bool

    Return true if the value is positive

  97. def isQNaN: Bool

    Return true if the value is a Quiet NaN

  98. def isReg: Boolean

    Definition Classes
    Data
  99. def isSNaN: Bool

    Return true if the value is a Signalling NaN

  100. def isSpecial: Bool

    Return true if the number is a special case (NaN or Inf)

  101. def isSubnormal: Bool

    Return true if the number is subnormal

  102. def isUnnamed: Boolean

    Definition Classes
    Nameable
  103. def isZero: Bool

    Return true if the number is +- zero

  104. def keep(): RecFloating.this.type

    Definition Classes
    Data
  105. val mantissa: Bits

    Mantissa field without the implicit first bit

  106. val mantissaSize: Int

    Mantissa field size with the implicit one not included

  107. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  110. def onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit

    Definition Classes
    SpinalTagReady
  111. var parent: Data

    Definition Classes
    Data
  112. def pull(): RecFloating.this.type

    Definition Classes
    Data
  113. def randBoot(): RecFloating.this.type

    Definition Classes
    Data
  114. var refOwner: RefOwnerType

    Definition Classes
    OwnableRef
  115. def removeTag(spinalTag: SpinalTag): RecFloating.this.type

    Definition Classes
    SpinalTagReady
  116. def removeTags(tags: Iterable[SpinalTag]): RecFloating.this.type

    Definition Classes
    SpinalTagReady
  117. def resized: RecFloating.this.type

    Definition Classes
    Data
  118. def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): RecFloating.this.type

    Definition Classes
    Nameable
  119. def setCompositeName(nameable: Nameable, postfix: String): RecFloating.this.type

    Definition Classes
    Nameable
  120. def setCompositeName(nameable: Nameable, weak: Boolean): RecFloating.this.type

    Definition Classes
    Nameable
  121. def setCompositeName(nameable: Nameable): RecFloating.this.type

    Definition Classes
    Nameable
  122. def setName(name: String, weak: Boolean): RecFloating.this.type

    Definition Classes
    Nameable
  123. def setPartialName(name: String, weak: Boolean): RecFloating.this.type

    Definition Classes
    Nameable
  124. def setPartialName(owner: Nameable, name: String, weak: Boolean): RecFloating.this.type

    Definition Classes
    Nameable
  125. def setPartialName(name: String): RecFloating.this.type

    Definition Classes
    Nameable
  126. def setPartialName(owner: Nameable, name: String): RecFloating.this.type

    Definition Classes
    Nameable
  127. def setRefOwner(that: Any): Unit

    Definition Classes
    OwnableRef
  128. def setWeakName(name: String): RecFloating.this.type

    Definition Classes
    Nameable
  129. val sign: Bool

    Sign field (true when negative)

  130. def spinalTags: Set[SpinalTag]

    Definition Classes
    SpinalTagReady
  131. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  132. def toFloating: Floating

    Convert to classic IEEE 754 floating point number

  133. def toSFix(peak: ExpNumber, resolution: ExpNumber): SFix

    Convert floating point to SFix with resolution

  134. def toSFix(peak: ExpNumber, width: BitCount): SFix

    Convert floating point to SFix with width

  135. def toSInt(width: Int): SInt

    Convert floating point to SInt

  136. def toString(): String

    Definition Classes
    Bundle → Nameable → AnyRef → Any
  137. def toUFix(peak: ExpNumber, resolution: ExpNumber): UFix

    Convert floating point to SFix with resolution

  138. def toUFix(peak: ExpNumber, width: BitCount): UFix

    Convert floating point to SFix with width

  139. def toUInt(width: Int): UInt

    Convert floating point to UInt

  140. def unsetName(): Unit

    Definition Classes
    Nameable
  141. def unused: Unit

    Definition Classes
    Data
  142. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Bundle

Inherited from OverridedEqualsHashCode

Inherited from MultiData

Inherited from Data

Inherited from ScalaLocated

Inherited from SpinalTagReady

Inherited from Assignable

Inherited from NameableByComponent

Inherited from Nameable

Inherited from OwnableRef

Inherited from ContextUser

Inherited from GlobalDataUser

Inherited from AnyRef

Inherited from Any

Ungrouped