Packages

  • package root

    This is the documentation for Chisel.

    This is the documentation for Chisel.

    Package structure

    The chisel3 package presents the public API of Chisel. It contains the concrete core types UInt, SInt, Bool, Clock, and Reg, the abstract types Bits, Aggregate, and Data, and the aggregate types Bundle and Vec.

    The Chisel package is a compatibility layer that attempts to provide chisel2 compatibility in chisel3.

    Utility objects and methods are found in the util package.

    The testers package defines the basic interface for chisel testers.

    Definition Classes
    root
  • package chisel3

    This package contains the main chisel3 API.

    This package contains the main chisel3 API.

    Definition Classes
    root
  • package simulator
    Definition Classes
    chisel3
  • package scalatest
    Definition Classes
    simulator
  • object Cli

    ChiselSim command line interface traits that can be added to Scalatest tests

    ChiselSim command line interface traits that can be added to Scalatest tests

    Definition Classes
    scalatest
  • ChiselOpts
  • EmitFsdb
  • EmitVcd
  • EmitVpd
  • FirtoolOpts
  • Scale
  • Simulator

trait Scale extends AnyRef

Adds -Dscale=<double>

This adds an option which can be used to control the "scaling factor" of the test. This option can be used by the test author to "scale" the test to make it longer or shorter.

This is inteded to be used with randomized testing or some testing which does not have a natural end point or an end point which may be dependent on execution context. E.g., you can use this to make a test which runs for briefly in a pre-merge Continuous Integration (CI) flow, but runs for much longer in nightly CI.

Note that the interpretation of the "scaling factor" is test dependent. In order to document this and help end users, this trait has an abstract member scaleHelpText which must be overridden to document what the scale affects in the test. E.g., if the scale is used to lengthen a test, a test author could write:

override protected def scaleHelpText = "scales the runtime of a test"

While this adds the low-level scale option. A user of this should use the member functions that this trait adds, e.d., scaled.

Self Type
Scale with HasCliOptions
Source
Cli.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Scale
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def scaleHelpText: String

    Help text that describes what the -Dscale parameter does for this test.

    Help text that describes what the -Dscale parameter does for this test.

    This is used to populate the help text that an end user sees when invoking this test with -Dhelp=1.

    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Scale toany2stringadd[Scale] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Scale, B)
    Implicit
    This member is added by an implicit conversion from Scale toArrowAssoc[Scale] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  8. def ensuring(cond: (Scale) => Boolean, msg: => Any): Scale
    Implicit
    This member is added by an implicit conversion from Scale toEnsuring[Scale] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (Scale) => Boolean): Scale
    Implicit
    This member is added by an implicit conversion from Scale toEnsuring[Scale] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: => Any): Scale
    Implicit
    This member is added by an implicit conversion from Scale toEnsuring[Scale] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): Scale
    Implicit
    This member is added by an implicit conversion from Scale toEnsuring[Scale] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  15. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def scaled(a: Int): Int

    Scale an integer by the scaling factor, if set.

    Scale an integer by the scaling factor, if set.

    If no scaling factor is set, this will scale by 1.0, i.e., the input is unchanged.

  22. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Scale toStringFormat[Scale] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  2. def [B](y: B): (Scale, B)
    Implicit
    This member is added by an implicit conversion from Scale toArrowAssoc[Scale] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromScale to any2stringadd[Scale]

Inherited by implicit conversion StringFormat fromScale to StringFormat[Scale]

Inherited by implicit conversion Ensuring fromScale to Ensuring[Scale]

Inherited by implicit conversion ArrowAssoc fromScale to ArrowAssoc[Scale]

Ungrouped