Object

chisel3.iotesters

Driver

Related Doc: package iotesters

Permalink

object Driver

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. All

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 apply[T <: MultiIOModule](dutGen: () ⇒ T, backendType: String = "firrtl", verbose: Boolean = false, testerSeed: Long = System.currentTimeMillis())(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink

    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 interperter. Other options "verilator" will use the verilator c++ simulation generator "vcs" will use the VCS 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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  9. def execute[T <: MultiIOModule](args: Array[String], dut: () ⇒ T)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink

    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 execute[T <: MultiIOModule](dutGenerator: () ⇒ T, optionsManager: TesterOptionsManager)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink

    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

  11. def executeFirrtlRepl[T <: MultiIOModule](args: Array[String], dutGenerator: () ⇒ T): Boolean

    Permalink

    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

  12. def executeFirrtlRepl[T <: MultiIOModule](dutGenerator: () ⇒ T, optionsManager: ReplOptionsManager = new ReplOptionsManager): Boolean

    Permalink

    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

    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

  13. def finalize(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. def main(args: Array[String]): Unit

    Permalink

    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

  18. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  21. def optionsManager: TesterOptionsManager

    Permalink
  22. def run[T <: MultiIOModule](dutGen: () ⇒ T, binary: File, waveform: Option[File] = None)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink
  23. def run[T <: MultiIOModule](dutGen: () ⇒ T, binary: String, args: String*)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink
  24. def run[T <: MultiIOModule](dutGen: () ⇒ T, cmd: Seq[String])(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean

    Permalink

    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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped