Packages

package lib

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

Type Members

  1. class BitAggregator extends AnyRef
  2. class BoolPimped extends AnyRef
  3. class BufferCC[T <: Data] extends Component
  4. class Counter extends ImplicitArea[UInt]
  5. class CounterUpDown extends ImplicitArea[UInt]
  6. trait DataCarrier[T <: Data] extends AnyRef
  7. class DataCarrierFragmentBitsPimped extends AnyRef
  8. class DataCarrierFragmentPimped[T <: Data] extends AnyRef
  9. case class DataOr[T <: Data](dataType: HardType[T]) extends Area with Product with Serializable
  10. sealed trait Endianness extends AnyRef

    Endianness enumeration

  11. type Event = Stream[NoData]
  12. case class EventEmitter(on: Event) extends Product with Serializable
  13. class EventFactory extends MSFactory
  14. class Flow[T <: Data] extends Bundle with IMasterSlave with DataCarrier[T]
  15. class FlowBitsPimped extends AnyRef
  16. class FlowCCByToggle[T <: Data] extends Component
  17. class FlowFactory extends MSFactory
  18. class FlowFragmentBitsRouter extends AnyRef
  19. class FlowFragmentFactory extends MSFactory
  20. class FlowFragmentPimped[T <: Data] extends AnyRef
  21. class Fragment[T <: Data] extends Bundle
  22. class FragmentFactory extends AnyRef
  23. trait IMasterSlave extends AnyRef
  24. trait MS extends AnyRef
  25. trait MSFactory extends AnyRef
  26. class MemPimped[T <: Data] extends AnyRef
  27. case class MemReadPort[T <: Data](dataType: T, addressWidth: Int) extends Bundle with IMasterSlave with Product with Serializable
  28. case class MemWriteCmd[T <: Data](mem: Mem[T]) extends Bundle with Product with Serializable
  29. class NoData extends Bundle
  30. class PulseCCByToggle extends Component
  31. case class ReadRetLinked[T <: Data, T2 <: Data](readType: HardType[T], linkedType: HardType[T2]) extends Bundle with Product with Serializable
  32. type ScalaStream[T] = scala.collection.immutable.Stream[T]
  33. class Stream[T <: Data] extends Bundle with IMasterSlave with DataCarrier[T]
  34. class StreamArbiter[T <: Data] extends Component

    A StreamArbiter is like a StreamMux, but with built-in complex selection logic that can arbitrate input streams based on a schedule or handle fragmented streams.

    A StreamArbiter is like a StreamMux, but with built-in complex selection logic that can arbitrate input streams based on a schedule or handle fragmented streams. Use a StreamArbiterFactory to create instances of this class.

  35. class StreamArbiterFactory extends AnyRef
  36. class StreamBitsPimped extends AnyRef
  37. class StreamCCByToggle[T <: Data] extends Component
  38. class StreamDemux[T <: Data] extends Component
  39. class StreamFactory extends MSFactory
  40. class StreamFifo[T <: Data] extends Component
  41. class StreamFifoCC[T <: Data] extends Component
  42. trait StreamFifoInterface[T <: Data] extends AnyRef
  43. class StreamFifoLowLatency[T <: Data] extends Component
  44. case class StreamFifoMultiChannel[T <: Data](payloadType: HardType[T], channelCount: Int, depth: Int, withAllocationFifo: Boolean = false) extends Component with Product with Serializable
  45. case class StreamFifoMultiChannelPop[T <: Data](payloadType: HardType[T], channelCount: Int) extends Bundle with IMasterSlave with Product with Serializable
  46. case class StreamFifoMultiChannelPush[T <: Data](payloadType: HardType[T], channelCount: Int) extends Bundle with IMasterSlave with Product with Serializable
  47. class StreamFlowArbiter[T <: Data] extends Area
  48. class StreamFork[T <: Data] extends Component

    A StreamFork will clone each incoming data to all its output streams.

    A StreamFork will clone each incoming data to all its output streams. If synchronous is true, all output streams will always fire together, which means that the stream will halt until all output streams are ready. If synchronous is false, output streams may be ready one at a time, at the cost of an additional flip flop (1 bit per output). The input stream will block until all output streams have processed each item regardlessly.

    Note that this means that when synchronous is true, the valid signal of the outputs depends on their inputs, which may lead to dead locks when used in combination with systems that have it the other way around. It also violates the handshake of the AXI specification (section A3.3.1).

  49. class StreamFragmentBitsDispatcher extends Area
  50. case class StreamFragmentBitsDispatcherElement(sink: Stream[Bits], header: Int) extends Product with Serializable
  51. class StreamFragmentBitsPimped extends AnyRef
  52. class StreamFragmentFactory extends MSFactory
  53. class StreamFragmentPimped[T <: Data] extends AnyRef
  54. class StreamMux[T <: Data] extends Component
  55. class StreamToStreamFragmentBits[T <: Data] extends Component
  56. class StringPimped extends AnyRef
  57. class Timeout extends ImplicitArea[Bool]
  58. class TraversableOnceAnyPimped[T] extends AnyRef
  59. class TraversableOnceBoolPimped extends AnyRef
  60. class TraversableOncePimped[T <: Data] extends AnyRef
  61. case class TupleBundle1[T1 <: Data](payloadType1: HardType[T1]) extends Bundle with Product with Serializable
  62. case class TupleBundle10[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10]) extends Bundle with Product with Serializable
  63. case class TupleBundle11[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11]) extends Bundle with Product with Serializable
  64. case class TupleBundle12[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12]) extends Bundle with Product with Serializable
  65. case class TupleBundle13[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13]) extends Bundle with Product with Serializable
  66. case class TupleBundle14[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14]) extends Bundle with Product with Serializable
  67. case class TupleBundle15[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15]) extends Bundle with Product with Serializable
  68. case class TupleBundle16[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16]) extends Bundle with Product with Serializable
  69. case class TupleBundle17[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17]) extends Bundle with Product with Serializable
  70. case class TupleBundle18[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data, T18 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17], payloadType18: HardType[T18]) extends Bundle with Product with Serializable
  71. case class TupleBundle19[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data, T18 <: Data, T19 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17], payloadType18: HardType[T18], payloadType19: HardType[T19]) extends Bundle with Product with Serializable
  72. case class TupleBundle2[T1 <: Data, T2 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2]) extends Bundle with Product with Serializable
  73. case class TupleBundle20[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data, T18 <: Data, T19 <: Data, T20 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17], payloadType18: HardType[T18], payloadType19: HardType[T19], payloadType20: HardType[T20]) extends Bundle with Product with Serializable
  74. case class TupleBundle21[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data, T18 <: Data, T19 <: Data, T20 <: Data, T21 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17], payloadType18: HardType[T18], payloadType19: HardType[T19], payloadType20: HardType[T20], payloadType21: HardType[T21]) extends Bundle with Product with Serializable
  75. case class TupleBundle22[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data, T10 <: Data, T11 <: Data, T12 <: Data, T13 <: Data, T14 <: Data, T15 <: Data, T16 <: Data, T17 <: Data, T18 <: Data, T19 <: Data, T20 <: Data, T21 <: Data, T22 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9], payloadType10: HardType[T10], payloadType11: HardType[T11], payloadType12: HardType[T12], payloadType13: HardType[T13], payloadType14: HardType[T14], payloadType15: HardType[T15], payloadType16: HardType[T16], payloadType17: HardType[T17], payloadType18: HardType[T18], payloadType19: HardType[T19], payloadType20: HardType[T20], payloadType21: HardType[T21], payloadType22: HardType[T22]) extends Bundle with Product with Serializable
  76. case class TupleBundle3[T1 <: Data, T2 <: Data, T3 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3]) extends Bundle with Product with Serializable
  77. case class TupleBundle4[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4]) extends Bundle with Product with Serializable
  78. case class TupleBundle5[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5]) extends Bundle with Product with Serializable
  79. case class TupleBundle6[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6]) extends Bundle with Product with Serializable
  80. case class TupleBundle7[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7]) extends Bundle with Product with Serializable
  81. case class TupleBundle8[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8]) extends Bundle with Product with Serializable
  82. case class TupleBundle9[T1 <: Data, T2 <: Data, T3 <: Data, T4 <: Data, T5 <: Data, T6 <: Data, T7 <: Data, T8 <: Data, T9 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3], payloadType4: HardType[T4], payloadType5: HardType[T5], payloadType6: HardType[T6], payloadType7: HardType[T7], payloadType8: HardType[T8], payloadType9: HardType[T9]) extends Bundle with Product with Serializable
  83. implicit class UIntPimper extends AnyRef
  84. class StreamDispatcherSequencial[T <: Data] extends Component

    Deprecated

    Do not use. Use the companion object or a normal regular StreamMux instead.

Value Members

  1. def Event: Stream[NoData]
  2. def NoData: NoData
  3. def ScalaStream: scala.collection.immutable.Stream.type
  4. def StreamArbiterFactory: StreamArbiterFactory
  5. implicit def boolPimped(that: Bool): BoolPimped
  6. implicit def dataCarrierFragmentBitsPimped(that: DataCarrier[Fragment[Bits]]): DataCarrierFragmentBitsPimped
  7. implicit def dataCarrierFragmentPimped[T <: Data](that: DataCarrier[Fragment[T]]): DataCarrierFragmentPimped[T]
  8. implicit def easyFragment[T <: Data](that: Fragment[T]): T
  9. implicit def flowBitsPimped[T <: Data](that: Flow[Bits]): FlowBitsPimped
  10. implicit def flowFragmentPimped[T <: Data](that: Flow[Fragment[T]]): FlowFragmentPimped[T]
  11. implicit def memPimped[T <: Data](mem: Mem[T]): MemPimped[T]
  12. implicit def streamBitsPimped[T <: Data](that: Stream[Bits]): StreamBitsPimped
  13. implicit def streamFragmentBitsPimped(that: Stream[Fragment[Bits]]): StreamFragmentBitsPimped
  14. implicit def streamFragmentPimped[T <: Data](that: Stream[Fragment[T]]): StreamFragmentPimped[T]
  15. implicit def stringPimped(that: String): StringPimped
  16. implicit def traversableOnceAnyPimped[T](that: Seq[T]): TraversableOnceAnyPimped[T]
  17. implicit def traversableOnceBoolPimped(that: Seq[Bool]): TraversableOnceBoolPimped
  18. implicit def traversableOncePimped[T <: Data](that: Seq[T]): TraversableOncePimped[T]
  19. object AddWithCarry
  20. object BIG extends Endianness

    Big-Endian

  21. object BufferCC
  22. object Callable
  23. object ClearCount
  24. object CountOne
  25. object CountOneOnEach
  26. object Counter
  27. object CounterFreeRun
  28. object CounterMultiRequest
  29. object CounterUpDown
  30. object DataCarrier
  31. object Delay
  32. object DelayEvent
  33. object DelayWithInit
  34. object EndiannessSwap

    **************************************************************************** Big-Endian <-> Little-Endian

  35. object Flow extends FlowFactory
  36. object FlowCCByToggle
  37. object FlowFragmentBitsRouter
  38. object Fragment extends FragmentFactory
  39. object FragmentToBitsStates extends SpinalEnum
  40. object GrayCounter
  41. object History
  42. object KeepAttribute
  43. object LITTLE extends Endianness

    Little-Endian

  44. object LatencyAnalysis
  45. object LeastSignificantBitSet
  46. object MajorityVote
  47. object Max
  48. object Min
  49. object MuxOH
  50. object OHMasking
  51. object OHToUInt
  52. object PriorityMux
  53. object PulseCCByToggle
  54. object RegFlow
  55. object ResetCtrl
  56. object Reverse
  57. object SetCount
  58. object Stream extends StreamFactory
  59. object StreamArbiter
  60. object StreamCCByToggle
  61. object StreamCombinerSequential

    This is equivalent to a StreamMux, but with a counter attached to the port selector.

  62. object StreamDemux

    Demultiplex one stream into multiple output streams, always selecting only one at a time.

  63. object StreamDispatcherSequential

    This is equivalent to a StreamDemux, but with a counter attached to the port selector.

  64. object StreamFifo
  65. object StreamFifoCC
  66. object StreamFifoLowLatency
  67. object StreamFifoMultiChannelBench extends App
  68. object StreamFlowArbiter

    Combine a stream and a flow to a new stream.

    Combine a stream and a flow to a new stream. If both input sources fire, the flow will be preferred.

  69. object StreamFork
  70. object StreamFork2
  71. object StreamFork3
  72. object StreamFragmentArbiter
  73. object StreamFragmentArbiterAndHeaderAdder
  74. object StreamFragmentGenerator
  75. object StreamFragmentWidthAdapter
  76. object StreamJoin

    Join multiple streams into one.

    Join multiple streams into one. The resulting stream will only fire if all of them fire, so you may want to buffer the inputs.

  77. object StreamMux

    Multiplex multiple streams into a single one, always only processing one at a time.

  78. object StreamWidthAdapter
  79. object Timeout
  80. object UIntToOh
  81. object ValidFlow

    Create a new Flow that is always valid, with a given payload

  82. object WrapWithReg
  83. object fromGray
  84. object master extends MS
  85. object masterWithNull extends MS
  86. object slave extends MS
  87. object slaveWithNull extends MS
  88. object toGray

Deprecated Value Members

  1. object StreamDispatcherSequencial

    Deprecated

    Do not use

Inherited from AnyRef

Inherited from Any

Ungrouped