Class/Object

chisel3.util

Queue

Related Docs: object Queue | package util

Permalink

class Queue[T <: Data] extends Module

A hardware module implementing a Queue

Source
Decoupled.scala
Example:
  1. val q = Module(new Queue(UInt(), 16))
    q.io.enq <> producer.io.out
    consumer.io.in <> q.io.deq
Linear Supertypes
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Queue
  2. LegacyModule
  3. MultiIOModule
  4. RawModule
  5. BaseModule
  6. HasId
  7. InstanceId
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Queue(gen: T, entries: Int, pipe: Boolean = false, flow: Boolean = false)(implicit compileOptions: CompileOptions)

    Permalink

    gen

    The type of data to queue

    entries

    The max number of entries in the queue

    pipe

    True if a single entry queue can run at full throughput (like a pipeline). The ready signals are combinationally coupled.

    flow

    True if the inputs can be consumed on the same cycle (the inputs "flow" through the queue immediately). The valid signals are coupled.

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def IO[T <: Data](iodef: T): T

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  5. def _bindIoInPlace(iodef: Data): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  6. var _closed: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  7. def _compatAutoWrapPorts(): Unit

    Permalink
    Definition Classes
    BaseModule
  8. def _compatIoPortBound(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    LegacyModule
  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. def circuitName: String

    Permalink
    Attributes
    protected
    Definition Classes
    HasId
  11. final val clock: Clock

    Permalink
    Definition Classes
    MultiIOModule
  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. val compileOptions: CompileOptions

    Permalink
    Definition Classes
    RawModule
  14. def computeName(defaultPrefix: Option[String], defaultSeed: Option[String]): Option[String]

    Permalink
    Definition Classes
    HasId
  15. val deq_ptr: Counter

    Permalink
  16. def desiredName: String

    Permalink
    Definition Classes
    BaseModule
  17. val do_deq: Bool

    Permalink
  18. val do_enq: Bool

    Permalink
  19. val empty: Bool

    Permalink
  20. val enq_ptr: Counter

    Permalink
  21. val entries: Int

    Permalink

    The max number of entries in the queue

  22. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  23. def equals(that: Any): Boolean

    Permalink
    Definition Classes
    HasId → AnyRef → Any
  24. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  25. val flow: Boolean

    Permalink

    True if the inputs can be consumed on the same cycle (the inputs "flow" through the queue immediately).

    True if the inputs can be consumed on the same cycle (the inputs "flow" through the queue immediately). The valid signals are coupled.

  26. val full: Bool

    Permalink
  27. val gen: T

    Permalink

    The type of data to queue

  28. val genType: T

    Permalink
  29. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  30. def getCommands: Seq[Command]

    Permalink
    Attributes
    protected
    Definition Classes
    RawModule
  31. def getIds: Seq[HasId]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  32. def getModulePorts: Seq[Data]

    Permalink
    Attributes
    protected[chisel3]
    Definition Classes
    BaseModule
  33. lazy val getPorts: Seq[Port]

    Permalink
    Definition Classes
    RawModule
  34. def hasSeed: Boolean

    Permalink
    Definition Classes
    HasId
  35. def hashCode(): Int

    Permalink
    Definition Classes
    HasId → AnyRef → Any
  36. def instanceName: String

    Permalink
    Definition Classes
    BaseModule → HasId → InstanceId
  37. val io: QueueIO[T]

    Permalink
    Definition Classes
    Queue → LegacyModule
  38. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  39. val maybe_full: Bool

    Permalink
  40. final lazy val name: String

    Permalink
    Definition Classes
    BaseModule
  41. def nameIds(rootClass: Class[_]): HashMap[HasId, String]

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  42. val namingContext$macro$10: NamingContextInterface

    Permalink
  43. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  44. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  45. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  46. var override_clock: Option[Clock]

    Permalink
    Attributes
    protected
    Definition Classes
    LegacyModule
  47. var override_reset: Option[Bool]

    Permalink
    Attributes
    protected
    Definition Classes
    LegacyModule
  48. def parentModName: String

    Permalink
    Definition Classes
    HasId → InstanceId
  49. def parentPathName: String

    Permalink
    Definition Classes
    HasId → InstanceId
  50. def pathName: String

    Permalink
    Definition Classes
    HasId → InstanceId
  51. val pipe: Boolean

    Permalink

    True if a single entry queue can run at full throughput (like a pipeline).

    True if a single entry queue can run at full throughput (like a pipeline). The ready signals are combinationally coupled.

  52. def portsContains(elem: Data): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  53. def portsSize: Int

    Permalink
    Attributes
    protected
    Definition Classes
    BaseModule
  54. val ptr_diff: UInt

    Permalink
  55. val ptr_match: Bool

    Permalink
  56. val ram: Mem[T]

    Permalink
  57. final val reset: Reset

    Permalink
    Definition Classes
    MultiIOModule
  58. def suggestName(seed: ⇒ String): Queue.this.type

    Permalink
    Definition Classes
    HasId
  59. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  60. final def toAbsoluteTarget: IsModule

    Permalink
    Definition Classes
    BaseModule → InstanceId
  61. final def toNamed: ModuleName

    Permalink
    Definition Classes
    BaseModule → InstanceId
  62. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  63. final def toTarget: ModuleTarget

    Permalink
    Definition Classes
    BaseModule → InstanceId
  64. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from LegacyModule

Inherited from MultiIOModule

Inherited from RawModule

Inherited from BaseModule

Inherited from HasId

Inherited from internal.InstanceId

Inherited from AnyRef

Inherited from Any

Ungrouped