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
    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 <: MultiIOModule](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 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
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def execute[T <: MultiIOModule](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 execute[T <: MultiIOModule](dutGenerator: () ⇒ T, optionsManager: TesterOptionsManager)(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

  11. def executeFirrtlRepl[T <: MultiIOModule](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

  12. def executeFirrtlRepl[T <: MultiIOModule](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

    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
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. 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

  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. def optionsManager: TesterOptionsManager
  22. def run[T <: MultiIOModule](dutGen: () ⇒ T, binary: File, waveform: Option[File] = None)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean
  23. def run[T <: MultiIOModule](dutGen: () ⇒ T, binary: String, args: String*)(testerGen: (T) ⇒ PeekPokeTester[T]): Boolean
  24. def run[T <: MultiIOModule](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

  25. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  26. def toString(): String
    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped