object Driver

Annotations
@deprecated
Deprecated

(Since version chisel-iotesters 2.5.0) chisel-iotesters is end-of-life. Use chiseltest instead, see https://www.chisel-lang.org/chiseltest/migrating-from-iotesters.

Source
Driver.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Driver
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[T <: Module](dutGen: () => T, backendType: String = "firrtl", verbose: Boolean = false, testerSeed: Long = System.currentTimeMillis())(testerGen: (T) => PeekPokeTester[T]): Boolean

    Runs the ClassicTester and returns a Boolean indicating test success or failure

    Runs the ClassicTester and returns a Boolean indicating test success or failure

    dutGen

    This is the device under test.

    backendType

    The default backend is "firrtl" which uses the firrtl interpreter. Other options "verilator" will use the verilator c++ simulation generator "ivl" will use the Icarus Verilog simulation "vcs" will use the VCS simulation "vsim" will use the ModelSim/QuestaSim simulation

    verbose

    Setting this to true will make the tester display information on peeks, pokes, steps, and expects. By default only failed expects will be printed

    testerSeed

    Set the random number generator seed

    testerGen

    This is a test harness subclassing PeekPokeTester for dutGen,

    returns

    This will be true if all tests in the testerGen pass

    Example:
    1. val testsPassed = iotesters.Driver(() => new CircuitX, testerSeed = 0L, verbose = true) { circuitX =>
        CircuitXTester(circuitX)
      }
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  9. def execute[T <: Module](args: Array[String], dut: () => T)(testerGen: (T) => PeekPokeTester[T]): Boolean

    This executes the test with options provide from an array of string -- typically provided from the command line

    This executes the test with options provide from an array of string -- typically provided from the command line

    args

    A *main* style array of string options

    dut

    The device to be tested, (device-under-test)

    testerGen

    A peek-poke tester with test for the dey

    returns

    Returns true if all tests in testerGen pass

  10. def executeFirrtlRepl[T <: Module](args: Array[String], dutGenerator: () => T): Boolean

    Start up the interpreter repl with the given circuit To test a class X extends Module {}, add the following code to the end of the file that defines

    Start up the interpreter repl with the given circuit To test a class X extends Module {}, add the following code to the end of the file that defines

    args

    options from the command line

    dutGenerator

    Module to run in interpreter

    Example:
    1. object XRepl {
        def main(args: Array[String]) {
          iotesters.Driver.executeFirrtlRepl(args, () => new X)
        }
      }

      running main will place users in the repl with the circuit X loaded into the repl

  11. def filterAnnotations(annotations: Seq[Annotation]): Seq[Annotation]

    Filter a sequence of annotations, ensuring problematic potential duplicates are removed.

    Filter a sequence of annotations, ensuring problematic potential duplicates are removed.

    annotations

    Seq[Annotation] to be filtered

    returns

    filtered Seq[Annotation]

  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. def main(args: Array[String]): Unit

    This is just here as command line way to see what the options are It will not successfully run TODO: Look into dynamic class loading as way to make this main useful

    This is just here as command line way to see what the options are It will not successfully run TODO: Look into dynamic class loading as way to make this main useful

    args

    unused args

  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  19. def optionsManager: TesterOptionsManager
  20. def run[T <: Module](dutGen: () => T, binary: File, waveform: Option[File] = None)(testerGen: (T) => PeekPokeTester[T]): Boolean
  21. def run[T <: Module](dutGen: () => T, binary: String, args: String*)(testerGen: (T) => PeekPokeTester[T]): Boolean
  22. def run[T <: Module](dutGen: () => T, cmd: Seq[String])(testerGen: (T) => PeekPokeTester[T]): Boolean

    Runs the ClassicTester using the verilator backend without doing Verilator compilation and returns a Boolean indicating success or failure Requires the caller to supply path the already compile Verilator binary

  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  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()
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def execute[T <: Module](dutGenerator: () => T, optionsManager: TesterOptionsManager, firrtlSourceOverride: Option[String] = None)(testerGen: (T) => PeekPokeTester[T]): Boolean

    This executes a test harness that extends peek-poke tester upon a device under test with an optionsManager to control all the options of the toolchain components

    This executes a test harness that extends peek-poke tester upon a device under test with an optionsManager to control all the options of the toolchain components

    dutGenerator

    The device under test, a subclass of a Chisel3 module

    optionsManager

    Use this to control options like which backend to use

    testerGen

    A peek poke tester with tests for the dut

    returns

    Returns true if all tests in testerGen pass

    Annotations
    @deprecated
    Deprecated

    (Since version 20210301) Use Driver#execute[T <: Module](args: Array[String], dut: () => T)

  2. def executeFirrtlRepl[T <: Module](dutGenerator: () => T, optionsManager: ReplOptionsManager = new ReplOptionsManager): Boolean

    Start up the interpreter repl with the given circuit To test a class X extends Module {}, add the following code to the end of the file that defines

    Start up the interpreter repl with the given circuit To test a class X extends Module {}, add the following code to the end of the file that defines

    dutGenerator

    Module to run in interpreter

    optionsManager

    options

    Annotations
    @deprecated
    Deprecated

    (Since version 20210301) Use Driver#def executeFirrtlRepl[T <: Module](args: Array[String], dutGenerator: () => T)

    Example:
    1. object XRepl {
        def main(args: Array[String]) {
          val optionsManager = new ReplOptionsManager
          if(optionsManager.parse(args)) {
            iotesters.Driver.executeFirrtlRepl(() => new X, optionsManager)
          }
        }

      running main will place users in the repl with the circuit X loaded into the repl

  3. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped