Class

firrtl_interpreter

InterpretiveTester

Related Doc: package firrtl_interpreter

Permalink

class InterpretiveTester extends AnyRef

Works a lot like the chisel classic tester compiles a firrtl input string and allows poke, peek, expect and step

pokes invalidate the underlying circuit peek, expect and step, recompute (re-validate) the circuit before executing

Important note: port names in LoFirrtl have replaced dot notation with underscore notation so that io.a.b must be referenced as io_a_b

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

Instance Constructors

  1. new InterpretiveTester(input: String, optionsManager: HasInterpreterSuite = new InterpreterOptionsManager)

    Permalink

    input

    a firrtl program contained in a string

    optionsManager

    collection of options for the interpreter

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
    @HotSpotIntrinsicCandidate() @throws( ... )
  6. val commonOptions: CommonOptions

    Permalink
  7. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  9. def expect(name: String, expectedValue: BigInt): Unit

    Permalink

    require that a value be present on the named component

    require that a value be present on the named component

    name

    component name

    expectedValue

    the BigInt value required

  10. var expectationsMet: Int

    Permalink
  11. def fail(ex: Throwable, msg: Option[String] = None): Nothing

    Permalink

    Indicate failure due to an exception.

    Indicate failure due to an exception.

    ex

    exception causing the failure

    msg

    optional message to be printed

  12. def fail(code: Int): Unit

    Permalink
  13. def finish: Boolean

    Permalink
  14. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  16. val interpreter: FirrtlTerp

    Permalink
  17. val interpreterOptions: InterpreterOptions

    Permalink
  18. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  19. def isOK: Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  22. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  23. def peek(name: String): BigInt

    Permalink

    inspect a value of a named circuit component

    inspect a value of a named circuit component

    name

    the name of a circuit component

    returns

    A BigInt value currently set at name

  24. def peekConcrete(name: String): Concrete

    Permalink

    inspect a value of a named circuit component

    inspect a value of a named circuit component

    name

    the name of a circuit component

    returns

    An internal concrete value currently set at name

  25. def peekMemory(name: String, index: Int): BigInt

    Permalink
  26. def poke(name: String, value: Concrete): Unit

    Permalink

    Pokes value to the port referenced by string Warning: pokes to components other than input ports is currently not supported but does not cause an error warning This feature should be supported soon

    Pokes value to the port referenced by string Warning: pokes to components other than input ports is currently not supported but does not cause an error warning This feature should be supported soon

    name

    the name of a port

    value

    a value to put on that port

  27. def poke(name: String, value: BigInt): Unit

    Permalink

    Pokes value to the port referenced by string Warning: pokes to components other than input ports is currently not supported but does not cause an error warning This feature should be supported soon

    Pokes value to the port referenced by string Warning: pokes to components other than input ports is currently not supported but does not cause an error warning This feature should be supported soon

    name

    the name of a port

    value

    a value to put on that port

  28. def pokeMemory(name: String, index: Int, value: BigInt): Unit

    Permalink

    Pokes value to the named memory at offset

    Pokes value to the named memory at offset

    name

    the name of a memory

    index

    the offset in the memory

    value

    a value to put on that port

  29. def report(): Unit

    Permalink

    A simplistic report of the number of expects that passed and

  30. def reportString: String

    Permalink
  31. def setVerbose(value: Boolean = true): Unit

    Permalink
  32. val startTime: Long

    Permalink
  33. def step(n: Int = 1): Unit

    Permalink

    Cycles the circuit n steps (with a default of one) At each step registers and memories are advanced and all other elements recomputed

    Cycles the circuit n steps (with a default of one) At each step registers and memories are advanced and all other elements recomputed

    n

    cycles to perform

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  36. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(): Unit

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

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped