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. case class MemWriteCmdWithMask[T <: Data](mem: Mem[T]) extends Bundle with Product with Serializable
  30. class NoData extends Bundle
  31. class PulseCCByToggle extends Component
  32. case class ReadRetLinked[T <: Data, T2 <: Data](readType: HardType[T], linkedType: HardType[T2]) extends Bundle with Product with Serializable
  33. type ScalaStream[T] = scala.collection.immutable.Stream[T]
  34. class Stream[T <: Data] extends Bundle with IMasterSlave with DataCarrier[T]
  35. 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.

  36. class StreamArbiterFactory extends AnyRef
  37. class StreamBitsPimped extends AnyRef
  38. class StreamCCByToggle[T <: Data] extends Component
  39. class StreamDemux[T <: Data] extends Component
  40. class StreamFactory extends MSFactory
  41. class StreamFifo[T <: Data] extends Component
  42. class StreamFifoCC[T <: Data] extends Component
  43. trait StreamFifoInterface[T <: Data] extends AnyRef
  44. class StreamFifoLowLatency[T <: Data] extends Component
  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. case class StreamFifoMultiChannelSharedSpace[T <: Data](payloadType: HardType[T], channelCount: Int, depth: Int, withAllocationFifo: Boolean = false) extends Component with Product with Serializable
  48. class StreamFlowArbiter[T <: Data] extends Area
  49. 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).

  50. class StreamFragmentBitsDispatcher extends Area
  51. case class StreamFragmentBitsDispatcherElement(sink: Stream[Bits], header: Int) extends Product with Serializable
  52. class StreamFragmentBitsPimped extends AnyRef
  53. class StreamFragmentFactory extends MSFactory
  54. class StreamFragmentPimped[T <: Data] extends AnyRef
  55. class StreamMux[T <: Data] extends Component
  56. class StreamToStreamFragmentBits[T <: Data] extends Component
  57. class StringPimped extends AnyRef
  58. class Timeout extends ImplicitArea[Bool]
  59. class TraversableOnceAnyPimped[T] extends AnyRef
  60. class TraversableOnceBoolPimped extends AnyRef
  61. class TraversableOncePimped[T <: Data] extends AnyRef
  62. case class TupleBundle1[T1 <: Data](payloadType1: HardType[T1]) extends Bundle with Product with Serializable
  63. 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
  64. 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
  65. 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
  66. 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
  67. 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
  68. 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
  69. 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
  70. 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
  71. 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
  72. 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
  73. case class TupleBundle2[T1 <: Data, T2 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2]) extends Bundle with Product with Serializable
  74. 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
  75. 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
  76. 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
  77. case class TupleBundle3[T1 <: Data, T2 <: Data, T3 <: Data](payloadType1: HardType[T1], payloadType2: HardType[T2], payloadType3: HardType[T3]) extends Bundle with Product with Serializable
  78. 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
  79. 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
  80. 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
  81. 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
  82. 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
  83. 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
  84. implicit class UIntPimper extends AnyRef
  85. 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 DoCmd

    Run command

  35. object EndiannessSwap

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

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

    Little-Endian

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

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

  63. object StreamDemux

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

  64. object StreamDispatcherSequential

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

  65. object StreamFifo
  66. object StreamFifoCC
  67. object StreamFifoLowLatency
  68. object StreamFifoMultiChannelBench extends App
  69. 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.

  70. object StreamFork
  71. object StreamFork2
  72. object StreamFork3
  73. object StreamFragmentArbiter
  74. object StreamFragmentArbiterAndHeaderAdder
  75. object StreamFragmentGenerator
  76. object StreamFragmentWidthAdapter
  77. 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.

  78. object StreamMux

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

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

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

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

Deprecated Value Members

  1. object StreamDispatcherSequencial

    Deprecated

    Do not use

Inherited from AnyRef

Inherited from Any

Ungrouped