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
- Alphabetic
- By Inheritance
- RecFloating
- Serializable
- Serializable
- Product
- Equals
- Bundle
- ValCallbackRec
- ValCallback
- MultiData
- Data
- InComponent
- OverridedEqualsHashCode
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
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
-
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
##(right: Data): Bits
Concatenation between two data
Concatenation between two data
- Definition Classes
- Data
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
#*(count: Int): Bits
- Definition Classes
- Data
-
def
:=(that: BigDecimal): Unit
Assign double value to the Floating
Assign double value to the Floating
- that
BigDecimal value
-
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
-
def
<(that: RecFloating): Bool
Less than
Less than
- that
other side of the comparison
- returns
true is this value is smaller than that
-
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
-
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
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
===(that: BigDecimal): Bool
Equals to constant
Equals to constant
- that
other side of the comparison
- returns
true is this value equals to that
-
def
===(that: RecFloating): Bool
Equals
Equals
- that
other side of the comparison
- returns
true is this value equals to that
-
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
-
def
>(that: RecFloating): Bool
Greater than
Greater than
- that
other side of the comparison
- returns
true is this value is greater than that
-
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
-
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
-
def
IFparent: Data
- Definition Classes
- Data
-
val
_spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
abs: RecFloating
Absolute value
Absolute value
- returns
Absolute value of this float
-
def
addAttribute(attribute: Attribute): RecFloating.this.type
- Definition Classes
- Data → SpinalTagReady
-
def
addAttribute(name: String, value: Int): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String, value: String): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
addAttribute(name: String): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
addTag[T <: SpinalTag](spinalTag: T): RecFloating.this.type
- Definition Classes
- MultiData → SpinalTagReady
-
def
addTags(h: SpinalTag, tail: SpinalTag*): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
addTags[T <: SpinalTag](tags: Iterable[T]): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
allowDirectionLessIo(): RecFloating.this.type
Allow a Data of an io Bundle to be directionless
Allow a Data of an io Bundle to be directionless
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/iobundle.html
- Definition Classes
- Data
-
def
allowOverride(): RecFloating.this.type
Allow a Data to be overriden
Allow a Data to be overriden
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/assignment_overlap.html
- Definition Classes
- Data
-
def
allowPartialyAssigned(): RecFloating.this.type
Allow a register to be partially assigned
Allow a register to be partially assigned
- Definition Classes
- Data
-
def
allowPruning(): RecFloating.this.type
- Definition Classes
- Data
-
def
allowSimplifyIt(): RecFloating.this.type
- Definition Classes
- Data
-
def
allowUnsetRegToAvoidLatch(): RecFloating.this.type
Allow a register to have only an init (no assignments)
Allow a register to have only an init (no assignments)
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/unassigned_register.html#register-with-only-init
- Definition Classes
- Data
-
def
as[T <: Data](dataType: HardType[T]): T
- Definition Classes
- Data
-
def
asBits: Bits
Cast data to Bits
-
def
asData: Data
- Definition Classes
- Data
-
def
asInOut(): RecFloating.this.type
set a data as inout
-
def
asInput(): RecFloating.this.type
Set a data as input
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
asOutput(): RecFloating.this.type
Set a data as output
-
def
assignAllByName(that: Bundle): Unit
Assign the bundle with an other bundle by name
Assign the bundle with an other bundle by name
- Definition Classes
- Bundle
-
def
assignDontCare(): RecFloating.this.type
- Definition Classes
- Data
-
def
assignDontCareToUnasigned(): RecFloating.this.type
- Definition Classes
- Data
- def assignFormalRandom(kind: RandomExpKind): Unit
-
final
def
assignFrom(that: AnyRef, target: AnyRef = this)(implicit loc: Location): Unit
- Definition Classes
- Data
- def assignFromBits(bits: Bits, hi: Int, lo: Int): Unit
- def assignFromBits(bits: Bits): Unit
-
def
assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
- Definition Classes
- Data
-
def
assignFromImpl(that: AnyRef, target: AnyRef, kind: AnyRef)(implicit loc: Location): Unit
- Attributes
- protected
- Definition Classes
- Bundle → Assignable
-
def
assignSomeByName(that: Bundle): Unit
Assign all possible signal fo the bundle with an other bundle by name
Assign all possible signal fo the bundle with an other bundle by name
- Definition Classes
- Bundle
-
def
assignTo(that: SInt): Unit
Overrides assignment operator
Overrides assignment operator
- that
Integer number that will be assigned to the converted floating value
-
def
assignTo(that: UInt): Unit
Overrides assignment operator
Overrides assignment operator
- that
Integer number that will be assigned to the converted floating value
-
def
assignUnassignedByName(that: MultiData): Unit
- Definition Classes
- MultiData
-
def
bundleAssign(that: Bundle)(f: (Data, Data) ⇒ Unit): Unit
- Definition Classes
- Bundle
-
def
checkDir(that: Bundle): Boolean
for interface find modport
for interface find modport
- Definition Classes
- Bundle
-
def
clearAll(): RecFloating.this.type
- Definition Classes
- Data
- def clone(): Bundle
-
def
component: Component
- Definition Classes
- ContextUser
-
final
def
compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef)(implicit loc: Location): Unit
- Definition Classes
- Assignable
-
val
compositeAssign: Assignable
- Definition Classes
- Assignable
- def copyDirectionOfImpl(that: Data): RecFloating.this.type
-
def
dirString(): String
- Definition Classes
- Data
-
def
dontSimplifyIt(): RecFloating.this.type
- Definition Classes
- Data
- def elements: ArrayBuffer[(String, Data)]
-
var
elementsCache: ArrayBuffer[(String, Data)]
- Definition Classes
- Bundle
-
def
elementsString: String
- Definition Classes
- MultiData
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
-
def
existsTag(cond: (SpinalTag) ⇒ Boolean): Boolean
- Definition Classes
- SpinalTagReady
-
val
exponent: Bits
Exponent field (Berkeley encoded)
- val exponentSize: Int
-
def
filterTag(cond: (SpinalTag) ⇒ Boolean): Iterable[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
find(name: String): Data
- Definition Classes
- MultiData
-
def
findTag(cond: (SpinalTag) ⇒ Boolean): Option[SpinalTag]
- Definition Classes
- SpinalTagReady
- def flatten: Seq[BaseType]
- def flattenForeach(body: (BaseType) ⇒ Unit): Unit
- def flattenLocalName: Seq[String]
-
def
flip(): RecFloating.this.type
flip the direction of the data
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
- Definition Classes
- Nameable
-
def
foreachTag(body: (SpinalTag) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
- def freeze(): RecFloating.this.type
-
def
fromFloating(that: Floating): RecFloating
Import from an IEEE 754 floating point number
-
def
fromSFix(that: SFix): RecFloating
Import from SFix
-
def
fromSInt(that: SInt): RecFloating
Import from SInt
-
def
fromUFix(that: UFix): RecFloating
Import from UFix
-
def
fromUInt(that: UInt): RecFloating
Import from UInt
-
def
getAheadValue(): RecFloating.this.type
For a register, get the value it will have at the next clock, as a combinational signal.
For a register, get the value it will have at the next clock, as a combinational signal.
- Definition Classes
- Data
-
def
getBitsWidth: Int
Return the width of the data
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
getComponent(): Component
- Definition Classes
- Data → InComponent → NameableByComponent
-
def
getComponents(): Seq[Component]
Get current component with all parents
Get current component with all parents
- Definition Classes
- InComponent
-
def
getDirection: IODirection
- Definition Classes
- Data
-
def
getDisplayName(): String
- Definition Classes
- Nameable
-
def
getExponentBias: Int
Value of the exponent bias for this float configuration
-
def
getExponentZero: Int
Value of the recoded exponent corresponding to the smallest exponent
-
def
getInstanceCounter: Int
- Definition Classes
- ContextUser
-
def
getMode: Byte
- Attributes
- protected
- Definition Classes
- Nameable
-
def
getMuxType[T <: Data](list: TraversableOnce[T]): HardType[T]
- Definition Classes
- Data
-
def
getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getName(): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getPartialName(): String
- Definition Classes
- Nameable
-
def
getPath(from: Component, to: Component): Seq[Component]
- Definition Classes
- NameableByComponent
-
def
getRealSource: Any
- Definition Classes
- Assignable
-
def
getRealSourceNoRec: Any
- Definition Classes
- Data → Assignable
-
def
getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
-
def
getRootParent: Data
- Definition Classes
- Data
-
def
getRtlPath(separator: String = "/"): String
- Definition Classes
- Data
-
def
getScalaLocationLong: String
- Definition Classes
- ScalaLocated
-
def
getScalaLocationShort: String
- Definition Classes
- ScalaLocated
-
def
getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
-
def
getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
-
def
getTags(): LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
def
getTypeString: String
- Definition Classes
- Bundle
-
def
getZero: RecFloating.this.type
Create a data set to 0
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
-
var
hardtype: HardType[_]
- Definition Classes
- Bundle
-
def
hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
- Definition Classes
- SpinalTagReady
-
def
hasTag(spinalTag: SpinalTag): Boolean
- Definition Classes
- SpinalTagReady
-
def
hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
-
def
init(that: BigDecimal): RecFloating.this.type
Initialization function
Initialization function
- that
initialization value
- returns
returns initialized object
-
final
def
initFrom(that: AnyRef, target: AnyRef = this): Unit
- Definition Classes
- Data
-
def
instanceAttributes(language: Language): Iterable[Attribute]
- Definition Classes
- SpinalTagReady
-
def
instanceAttributes: Iterable[Attribute]
- Definition Classes
- SpinalTagReady
-
def
isAnalog: Boolean
- Definition Classes
- Data
-
def
isComb: Boolean
- Definition Classes
- Data
-
def
isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
-
def
isDirectionLess: Boolean
- Definition Classes
- Data
-
def
isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
-
def
isInOut: Boolean
- Definition Classes
- Data
- def isInfinite: Bool
-
def
isInput: Boolean
- Definition Classes
- Data
-
def
isInputOrInOut: Boolean
- Definition Classes
- Data
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isNaN: Bool
Return true is the value is a NaN
-
final
def
isNamed: Boolean
- Definition Classes
- Nameable
-
def
isNormal: Bool
Return true if the number is normal
-
def
isOutput: Boolean
- Definition Classes
- Data
-
def
isOutputOrInOut: Boolean
- Definition Classes
- Data
-
def
isPositive: Bool
Return true if the value is positive
-
def
isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
-
def
isQNaN: Bool
Return true if the value is a Quiet NaN
-
def
isReg: Boolean
- Definition Classes
- Data
-
def
isRegOnAssign: Boolean
- Definition Classes
- Data
-
def
isSNaN: Bool
Return true if the value is a Signalling NaN
-
def
isSpecial: Bool
Return true if the number is a special case (NaN or Inf)
-
def
isSubnormal: Bool
Return true if the number is subnormal
-
def
isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
-
def
isZero: Bool
Return true if the number is +- zero
-
val
mantissa: Bits
Mantissa field without the implicit first bit
- val mantissaSize: Int
-
val
name: String
- Definition Classes
- Nameable
- val nameableRef: Nameable
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
noBackendCombMerge(): RecFloating.this.type
Put the combinatorial logic driving this signal in a separate process
Put the combinatorial logic driving this signal in a separate process
- Definition Classes
- Data
-
def
noCombLoopCheck(): RecFloating.this.type
Disable combinatorial loop checking for this Data
Disable combinatorial loop checking for this Data
See https://spinalhdl.github.io/SpinalDoc-RTD/master/SpinalHDL/Design%20errors/combinatorial_loop.html
- Definition Classes
- Data
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
def
onEachAttributes(doIt: (Attribute) ⇒ Unit): Unit
- Definition Classes
- SpinalTagReady
-
def
overrideLocalName(name: String): RecFloating.this.type
- Definition Classes
- Nameable
-
val
parent: Data
- Definition Classes
- Data
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
-
def
pull(propagateName: Boolean): RecFloating.this.type
- Definition Classes
- Data
-
def
pull(): RecFloating.this.type
Pull a signal to the top level (use for debugging)
Pull a signal to the top level (use for debugging)
- Definition Classes
- Data
-
def
purify(): RecFloating.this.type
- Definition Classes
- Data
-
def
randBoot(u: Unit): RecFloating.this.type
Useful for register that doesn't need a reset value in RTL, but need a random value for simulation (avoid x-propagation)
Useful for register that doesn't need a reset value in RTL, but need a random value for simulation (avoid x-propagation)
- Definition Classes
- Data
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
-
def
reflectNames(): Unit
- Definition Classes
- Nameable
-
def
removeAssignments(data: Boolean = true, init: Boolean = true, initial: Boolean = true): RecFloating.this.type
- Definition Classes
- Data
-
def
removeDataAssignments(): RecFloating.this.type
- Definition Classes
- Data
-
def
removeInitAssignments(): RecFloating.this.type
- Definition Classes
- Data
-
def
removeTag(spinalTag: SpinalTag): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
removeTags(tags: Iterable[SpinalTag]): RecFloating.this.type
- Definition Classes
- SpinalTagReady
-
def
resized: RecFloating.this.type
Resized data regarding target
Resized data regarding target
- Definition Classes
- Data
-
def
rootIF(): Interface
root interface
root interface
- Definition Classes
- Data
-
def
rootIFList(): List[Interface]
- Definition Classes
- Data
-
def
rootIFrec(now: Data, lastRoot: List[Interface]): List[Interface]
- Definition Classes
- Data
-
val
scalaTrace: Throwable
- Definition Classes
- ScalaLocated
-
def
setAll(): RecFloating.this.type
- Definition Classes
- Data
-
def
setAsAnalog(): RecFloating.this.type
- Definition Classes
- Data
-
def
setAsComb(): RecFloating.this.type
Set baseType to Combinatorial
-
def
setAsDirectionLess(): RecFloating.this.type
remove the direction (in,out,inout) to a data
-
def
setAsReg(): RecFloating.this.type
Set baseType to reg
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setNameAsWeak(): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setOutputAsReg(): RecFloating.this.type
Recursively set baseType to reg only for output
Recursively set baseType to reg only for output
- Definition Classes
- Data
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable): RecFloating.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): RecFloating.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): RecFloating.this.type
- Definition Classes
- Nameable
-
val
sign: Bool
Sign field (true when negative)
-
def
spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toFloating: Floating
Convert to classic IEEE 754 floating point number
-
def
toIo(): RecFloating.this.type
- Definition Classes
- Data
-
def
toMuxInput[T <: Data](muxOutput: T): T
- Definition Classes
- Data
-
def
toSFix(peak: ExpNumber, resolution: ExpNumber): SFix
Convert floating point to SFix with resolution
-
def
toSFix(peak: ExpNumber, width: BitCount): SFix
Convert floating point to SFix with width
-
def
toSInt(width: Int): SInt
Convert floating point to SInt
- def toString(): String
-
def
toUFix(peak: ExpNumber, resolution: ExpNumber): UFix
Convert floating point to SFix with resolution
-
def
toUFix(peak: ExpNumber, width: BitCount): UFix
Convert floating point to SFix with width
-
def
toUInt(width: Int): UInt
Convert floating point to UInt
- def unfreeze(): RecFloating.this.type
-
def
unsetName(): RecFloating.this.type
- Definition Classes
- Nameable
-
def
valCallback[T](ref: T, name: String): T
- Definition Classes
- ValCallbackRec → ValCallback
-
def
valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
- Definition Classes
- ValCallbackRec
-
def
valCallbackRec(ref: Any, name: String): Unit
- Definition Classes
- Bundle → ValCallbackRec
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
wrapNext(): RecFloating.this.type
- Definition Classes
- Data
-
def
zipByName(that: MultiData, rec: ArrayBuffer[(BaseType, BaseType)] = ArrayBuffer()): ArrayBuffer[(BaseType, BaseType)]
- Definition Classes
- MultiData
Deprecated Value Members
-
def
asDirectionLess(): RecFloating.this.type
- Definition Classes
- Data
- Annotations
- @deprecated
- Deprecated
(Since version ???) use setAsDirectionLess instead
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated
-
def
genIf(cond: Boolean): RecFloating.this.type
Generate this if condition is true
Generate this if condition is true
- Definition Classes
- Data
- Annotations
- @deprecated
- Deprecated
does not work with <>, use 'someBool generate Type()' or 'if(condition) Type() else null' instead