Class/Object

chisel3.util

Counter

Related Docs: object Counter | package util

Permalink

class Counter extends AnyRef

Used to generate an inline (logic directly in the containing Module, no internal Module is created) hardware counter.

Typically instantiated with apply methods in object Counter

Does not create a new Chisel Module

Source
Counter.scala
Examples:
  1. // Using Scala Range API
    val (counterValue, counterWrap) = Counter(0 until 10 by 2)
    when (counterValue === 4.U) {
      ...
    }
  2. ,
  3. val countOn = true.B // increment counter every clock cycle
    val (counterValue, counterWrap) = Counter(countOn, 4)
    when (counterValue === 3.U) {
      ...
    }
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Counter
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Counter(n: Int)

    Permalink

    Creates a counter with the specified number of steps.

    Creates a counter with the specified number of steps.

    n

    number of steps before the counter resets

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. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. def inc(): Bool

    Permalink

    Increments the counter by a step.

    Increments the counter by a step.

    returns

    whether the counter will wrap on the next clock cycle

    Note

    The incremented value is registered and will be visible on the next clock cycle

  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. def n: Int

    Permalink

    Number of counts before the counter resets

    Number of counts before the counter resets

    Note

    Only defined for ranges starting at zero with steps of size 1. Use range for other use cases.

  14. val namingContext$macro$2: NamingContextInterface

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

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

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

    Permalink
    Definition Classes
    AnyRef
  18. def range: Range

    Permalink

    The range of the counter values.

  19. def reset(): Unit

    Permalink

    Resets the counter to its initial value

  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  22. val value: UInt

    Permalink

    The current value of the counter.

  23. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped