Packages

  • package root
    Definition Classes
    root
  • package spinal
    Definition Classes
    root
  • package lib
    Definition Classes
    spinal
  • class PackedBundle extends Bundle

    Similar to Bundle but with bit packing capabilities.

    Similar to Bundle but with bit packing capabilities. Use pack implicit functions to assign fields to bit locations - pack(Range, [Endianness]) - Packs the data into Range aligning to bit Endianness if too wide - packFrom(Position) - Packs the data starting (LSB) at Position. Uses full data length - packTo(Position) - Packs the data ending (MSB) at Position. Uses full data length

    Providing no location tag will place the next data value immediately after the last.

    Definition Classes
    lib
    Example:
    1. val regWord = new PackedBundle {
        val init = Bool().packFrom(0) // Bit 0
        val stop = Bool() // Bit 1
        val result = Bits(16 bit).packTo(31) // Bits 16 to 31
      }
  • DataPositionEnrich
  • RefOwnerType
  • TagBitPackExact
c

spinal.lib.PackedBundle

DataPositionEnrich

implicit class DataPositionEnrich[T <: Data] extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DataPositionEnrich
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DataPositionEnrich(t: T)

Value Members

  1. def pack(range: Range, endianness: Endianness = LITTLE): T

    Place the data at the given range.

    Place the data at the given range. Extra bits will be lost (unassigned or read) if the data does not fit with the range.

    range

    Range to place the data

    endianness

    Bit direction to align data within the range

    returns

    Self

  2. def pack(range: Range): T

    Place the data at the given range.

    Place the data at the given range. Extra bits will be lost (unassigned or read) if the data does not fit with the range.

    range

    Range to place the data

    returns

    Self

  3. def packFrom(pos: Int): T

    Packs data starting (LSB) at the bit position

    Packs data starting (LSB) at the bit position

    pos

    Starting bit position of the data

    returns

    Self

  4. def packTo(pos: Int): T

    Packs data ending (MSB) at the bit position

    Packs data ending (MSB) at the bit position

    pos

    Ending bit position of the data

    returns

    Self