Chisel

AsyncFifo

Related Doc: package Chisel

class AsyncFifo[T <: Data] extends Module

Asynchronous Fifo. Used to cross two clock domains.

Source
ChiselUtil.scala
Linear Supertypes
Module, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AsyncFifo
  2. Module
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AsyncFifo(gen: T, entries: Int, enq_clk: Clock, deq_clk: Clock)

    gen

    the type of data in the fifo

    entries

    the max number of entries in the fifo. The actual size will be rounded up to the next power of 2 - (size = 1<<log2Up(entries))

    enq_clk

    clock for the input (writing, queuing) side

    deq_clk

    clock for the output (reading, dequeuing side) side

Type Members

  1. type neededWireWraps = HashMap[StackTraceElement, ArrayBuffer[Data]]

    verifyWireWrap (Chisel3) - verify assignment semantics (type-only nodes must be wire-wrapped)

    verifyWireWrap (Chisel3) - verify assignment semantics (type-only nodes must be wire-wrapped)

    returns

    - HashMap of source lines (and associated nodes) requiring Wire() wrapping.

    Definition Classes
    Module

Value Members

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

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

    Definition Classes
    AnyRef → Any
  3. def <>(src: Module): Unit

    Connect io with matching names for two modules

    Connect io with matching names for two modules

    Definition Classes
    Module
  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. var _clock: Option[Clock]

    Definition Classes
    Module
  6. def addClock(clock: Clock): Unit

    Add a clock to the module

    Add a clock to the module

    clock

    the clock to add

    Definition Classes
    Module
  7. def addDefaultReset: Unit

    Add a default reset to the module

    Add a default reset to the module

    Definition Classes
    Module
  8. def addModule[T <: Module](c: ⇒ T)(implicit p: Parameters = params): T

    Add a submodule to this module

    Add a submodule to this module

    Definition Classes
    Module
  9. def addModule[T <: Module](c: ⇒ T, f: PartialFunction[Any, Any]): T

    Add a submodule to this module

    Add a submodule to this module

    Definition Classes
    Module
  10. def addPin[T <: Data](pin: T, name: String = ""): T

    Add a pin with a name to the module

    Add a pin with a name to the module

    pin

    the I/O to add

    name

    A name for the pin

    Definition Classes
    Module
  11. def addResetPin(r: Bool): Bool

    returns

    the pin connected to the reset signal or creates a new one if no such pin exists

    Definition Classes
    Module
  12. def apply(name: String): Data

    Definition Classes
    Module
  13. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  14. val asize: Int

  15. def assert(cond: Bool, message: String): Unit

    Add an assertion in the code generated by a backend.

    Add an assertion in the code generated by a backend.

    Definition Classes
    Module
  16. def bfs(visit: (Node) ⇒ Unit): Unit

    A breadth first search of the graph of nodes

    A breadth first search of the graph of nodes

    Definition Classes
    Module
  17. val children: ArrayBuffer[Module]

    Definition Classes
    Module
  18. def clock: Clock

    returns

    the implied clock for this module

    Definition Classes
    Module
  19. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. def debug(x: Node): Unit

    Insures a backend does not remove a signal because it is unreachable from the outputs.

    Insures a backend does not remove a signal because it is unreachable from the outputs.

    Definition Classes
    Module
  21. def dfs(visit: (Node) ⇒ Unit): Unit

    A depth first search of the graph of nodes

    A depth first search of the graph of nodes

    Definition Classes
    Module
  22. def emitDec(b: Backend): String

    Definition Classes
    Module
  23. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    Module → AnyRef → Any
  25. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. def findBinding(m: Node): Option[Binding]

    A method to trace the graph of nodes backwards looking at inputs

    A method to trace the graph of nodes backwards looking at inputs

    m

    Node to find bindings for

    returns

    nodes which have node m binded as their input

    Definition Classes
    Module
  27. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  28. def getPathName(separator: String = "_"): String

    separator

    The separator to use for the path name

    returns

    the absolute path to a component instance from toplevel

    Definition Classes
    Module
  29. def getPathName: String

    returns

    the absolute path to a component instance from toplevel

    Definition Classes
    Module
  30. val hashCode: Int

    Definition Classes
    Module → AnyRef → Any
  31. val io: QueueIO[T]

    the I/O for this module

    the I/O for this module

    Definition Classes
    AsyncFifoModule
  32. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  33. val mem: Mem[T]

  34. var moduleName: String

    Name of the module this component generates (defaults to class name).

    Name of the module this component generates (defaults to class name).

    Definition Classes
    Module
  35. var name: String

    Name of the instance.

    Name of the instance.

    Definition Classes
    Module
  36. var named: Boolean

    Definition Classes
    Module
  37. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  38. def nextIndex: Int

    Definition Classes
    Module
  39. var nindex: Option[Int]

    Definition Classes
    Module
  40. val not_empty: Bool

  41. val not_empty_next: Bool

  42. val not_full: Bool

  43. val not_full_next: Bool

  44. final def notify(): Unit

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

    Definition Classes
    AnyRef
  46. lazy val params: Parameters

    Definition Classes
    Module
  47. var parent: Module

    Definition Classes
    Module
  48. def printf(message: String, args: Node*): Unit

    Adds a printf to the module called each clock cycle

    Adds a printf to the module called each clock cycle

    message

    A c style sting to print out eg) %d, %x

    args

    Nodes whos data values should be printed

    Definition Classes
    Module
  49. def reset: Bool

    returns

    the implied reset for this module

    Definition Classes
    Module
  50. def reset_=(r: Bool): Unit

    Definition Classes
    Module
  51. val rptr_bin: UInt

  52. val rptr_bin_next: UInt

  53. val rptr_gray: UInt

  54. val rptr_gray_next: UInt

  55. val s1_rptr_gray: UInt

  56. val s1_rst_deq: Bool

  57. val s1_rst_enq: Bool

  58. val s1_wptr_gray: UInt

  59. val s2_rptr_gray: UInt

  60. val s2_rst_deq: Bool

  61. val s2_rst_enq: Bool

  62. val s2_wptr_gray: UInt

  63. def setModuleName(n: String): Unit

    Set the declaration name of the module to be string 'n'

    Set the declaration name of the module to be string 'n'

    Definition Classes
    Module
  64. def setName(n: String): Unit

    Set the name of this module to the string 'n'

    Set the name of this module to the string 'n'

    Definition Classes
    Module
  65. def stripComponent(s: String): String

    Definition Classes
    Module
  66. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  67. def toString(): String

    Definition Classes
    Module → AnyRef → Any
  68. var verilog_parameters: String

    Definition Classes
    Module
  69. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  72. def wires: Array[(String, Bits)]

    Get the I/O names and connections

    Get the I/O names and connections

    Definition Classes
    Module
  73. val wptr_bin: UInt

  74. val wptr_bin_next: UInt

  75. val wptr_gray: UInt

  76. val wptr_gray_next: UInt

Inherited from Module

Inherited from AnyRef

Inherited from Any

Ungrouped