p

treadle

package treadle

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. treadle
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class BlackBoxFactoriesAnnotation(blackBoxFactories: Seq[ScalaBlackBoxFactory]) extends NoTargetAnnotation with TreadleOption with Product with Serializable
  2. case class ClockInfoAnnotation(clockInfoSeq: Seq[ClockInfo] = Seq(ClockInfo())) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    Sets one or more clocks including their frequencies and phase

  3. abstract class Command extends AnyRef
  4. trait HasTreadleOptions extends AnyRef
  5. trait HasTreadleSuite extends ExecutionOptionsManager with HasFirrtlOptions with HasTreadleOptions
  6. case class RandomSeedAnnotation(seed: Long = 0L) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    Sets the seed for treadle's private random number generator

  7. case class ResetNameAnnotation(symbolNames: String = "") extends NoTargetAnnotation with TreadleOption with Product with Serializable

    used with treadle's default reset operations

  8. case class RollBackBuffersAnnotation(rollbackBufferDepth: Int = TreadleDefaults.RollbackBuffers) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    Sets the number of rollback buffers in simulator, useful to see why wires have their values

  9. trait ScalaBlackBox extends AnyRef

    This is the template for writing Scala functions that implement the behaviour of a black box.

    This is the template for writing Scala functions that implement the behaviour of a black box. Implementing classes should add internal variables to hold any state information.

  10. abstract class ScalaBlackBoxFactory extends AnyRef

    For each instantiation of an ExtModule the engine needs a separate instance of a BlackBoxImplementation.

    For each instantiation of an ExtModule the engine needs a separate instance of a BlackBoxImplementation. This factory provides it.

    Example:
    1. class ExampleBBFactory extends BlackBoxFactory {
        override def createInstance(instanceName: String, blackBoxName: String): Option[BlackBoxImplementation] = {
          instanceName match {
            case "bb1" => Some(add(new BB1Impl))
            case "bb2" => Some(add(new BB2Impl))
            case "bb3" => Some(add(new BB3Impl))
            case _ => throw Exception(s"ExampleBBBFactory does not know how to create " + instanceName)
          }
        }
      }
  11. case class SymbolsToWatchAnnotation(symbolNames: Seq[String] = Seq.empty) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    Sets a list of symbols that will be rendered during execution

  12. case class TreadleCircuitAnnotation(circuit: Circuit) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    The circuit used to build a TreadleTester

    The circuit used to build a TreadleTester

    circuit

    a firrtl ast

  13. case class TreadleCircuitStateAnnotation(state: CircuitState) extends NoTargetAnnotation with Product with Serializable

    used to pass parsed firrtl to the TreadleTester

    used to pass parsed firrtl to the TreadleTester

    state

    the state to be passed along

  14. class TreadleLibrary extends RegisteredLibrary

    Constructs this as a registered library that will be auto-detected by projects who have a dependency on Treadle

  15. sealed trait TreadleOption extends Unserializable
  16. case class TreadleOptions(writeVCD: Boolean = false, vcdShowUnderscored: Boolean = false, setVerbose: Boolean = false, setOrderedExec: Boolean = false, allowCycles: Boolean = false, randomSeed: Long = System.currentTimeMillis(), blackBoxFactories: Seq[ScalaBlackBoxFactory] = Seq.empty, maxExecutionDepth: Long = Int.MaxValue, showFirrtlAtLoad: Boolean = false, lowCompileAtLoad: Boolean = true, validIfIsRandom: Boolean = false, rollbackBuffers: Int = 0, clockInfo: Seq[ClockInfo] = Seq.empty, resetName: String = "reset", callResetAtStartUp: Boolean = false, symbolsToWatch: Seq[String] = Seq.empty) extends ComposableOptions with Product with Serializable
  17. class TreadleOptionsManager extends ExecutionOptionsManager with HasTreadleSuite
  18. class TreadleRepl extends AnyRef

    Considered by many to be the world's best Treadle Repl

  19. class TreadleTester extends AnyRef

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

    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

  20. case class TreadleTesterAnnotation(tester: TreadleTester) extends NoTargetAnnotation with TreadleOption with Product with Serializable

    Used to pass a tester on to a test harness

    Used to pass a tester on to a test harness

    tester

    The TreadleTester to be passed on

  21. case class VcdReplayEventsToRun(count: Int) extends NoTargetAnnotation with VcdReplayTesterOptions with Product with Serializable
  22. case class VcdReplaySkipEvents(count: Int) extends NoTargetAnnotation with VcdReplayTesterOptions with Product with Serializable
  23. class VcdReplayTester extends LazyLogging

    This tester runs a VCD file against a circuit expressed in a firrtl file.

    This tester runs a VCD file against a circuit expressed in a firrtl file. The VCD file should have been produced by running a test harness against the circuit. This test can be used to generate circuit behavior while running symbolic or concolic testing. It can also be used to determine if later changes to a circuit have changed since some original correct **golden** run of the circuit For example use the main below to run the VcdAdder files contained in the src/test/resources directory

    sbt 'runMain treadle.VcdReplayTester -fs src/test/resources/VcdAdder.fir -vcd src/test/resources/VcdAdder.vcd'
  24. trait VcdReplayTesterCli extends AnyRef
  25. sealed trait VcdReplayTesterOptions extends Unserializable
  26. class VcdReplayTesterStage extends Stage
  27. case class VcdReplayVcdFile(fileName: String) extends NoTargetAnnotation with VcdReplayTesterOptions with Product with Serializable

Value Members

  1. val Big0: BigInt
  2. val Big1: BigInt
  3. val BitsRequiredOverflowSizeBigInt: BigInt
  4. val DangerShiftSize: Int
  5. def bigIntBitsToDouble(bigInt: BigInt): Double
  6. def boolToBigInt(condition: Boolean): BigInt
  7. def boolToInt(condition: Boolean): Int
  8. def ceilingLog2(x: Int): Int
  9. def computeBits(n: BigInt): Int

    Utility function that computes bits required for a number

    Utility function that computes bits required for a number

    n

    number of interest

  10. def doubleToBigIntBits(double: Double): BigInt
  11. def extremaOfSIntOfWidth(width: Int): (BigInt, BigInt)

    computes the smallest and largest values that will fit in an SInt

    computes the smallest and largest values that will fit in an SInt

    width

    width of SInt

    returns

    tuple(minVale, maxValue)

  12. def extremaOfUIntOfWidth(width: Int): (BigInt, BigInt)

    computes the smallest and largest values that will fit in a UInt

    computes the smallest and largest values that will fit in a UInt

    width

    width of SInt

    returns

    tuple(minVale, maxValue)

  13. def makeRandom(tpe: Type): BigInt
  14. val random: Random
  15. def randomBigInt(width: Int): BigInt
  16. def requiredBitsForSInt(num: BigInt): Int

    return the smallest number of bits required to hold the given number in an SInt Note: positive numbers will get one minimum width one higher than would be required for a UInt

    return the smallest number of bits required to hold the given number in an SInt Note: positive numbers will get one minimum width one higher than would be required for a UInt

    num

    number to find width for

    returns

    minimum required bits for an SInt

  17. def requiredBitsForUInt(num: BigInt): Int

    return the smallest number of bits required to hold the given number in an UInt

    return the smallest number of bits required to hold the given number in an UInt

    num

    number to find width for

    returns

    minimum required bits for an SInt

  18. def typeToWidth(tpe: Type): Int
  19. def widthToInt(width: Width): Int
  20. object AllowCyclesAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to allow cycles

  21. object CallResetAtStartupAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to present random value when validIf's condition is off

  22. object ClockInfoAnnotation extends HasShellOptions with Product with Serializable
  23. object DontRunLoweringCompilerLoadAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to not run its own lowering pass on firrtl input (not recommended)

  24. object Driver
  25. object MemoryUsageRegression

    This regression demonstrates that a bad initial setting has been fixed the default rollback buffer of 10 meant that large memories caused considerable slowing as buffers were copied.

  26. object RandomSeedAnnotation extends HasShellOptions with Serializable
  27. object Regression
  28. object ResetNameAnnotation extends HasShellOptions with Product with Serializable
  29. object RollBackBuffersAnnotation extends HasShellOptions with Product with Serializable
  30. object ShowFirrtlAtLoadAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to show the low firrtl it is starting out with

  31. object SymbolsToWatchAnnotation extends HasShellOptions with Product with Serializable
  32. object TreadleDefaults
  33. object TreadleFirrtlFile extends HasShellOptions

    Factory for FirrtlFileAnnotation annotation, this is an alias for Firrtl Cli

  34. object TreadleFirrtlString extends HasShellOptions

    Factory for FirrtlSourceAnnotation, this is an alias for FirrtlCli

  35. object TreadleRepl
  36. object TreadleTester
  37. object ValidIfIsRandomAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to present random value when validIf's condition is off

  38. object VcdReplayEventsToRun extends HasShellOptions with Product with Serializable
  39. object VcdReplayFirrtlSource extends NoTargetAnnotation with VcdReplayTesterOptions with HasShellOptions with Product with Serializable

    makes a more convenient way of specifying firrtl source

  40. object VcdReplaySkipEvents extends HasShellOptions with Product with Serializable
  41. object VcdReplayTestAliasedWires extends NoTargetAnnotation with VcdReplayTesterOptions with HasShellOptions with Product with Serializable
  42. object VcdReplayTester extends StageMain
  43. object VcdReplayVcdFile extends HasShellOptions with Product with Serializable
  44. object VcdShowUnderScoredAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to include _T_* and _GEN_* wires in VCD output

  45. object VerboseAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to execute verbosely

  46. object WriteVcdAnnotation extends NoTargetAnnotation with TreadleOption with HasShellOptions with Product with Serializable

    Tells treadle to write a vcd file during simulation

Inherited from AnyRef

Inherited from Any

Ungrouped