diff options
| author | ducky | 2015-10-26 18:08:47 -0700 |
|---|---|---|
| committer | ducky | 2015-10-26 18:08:47 -0700 |
| commit | 4b51975ec7a543e165660d654fa84eaa9b9b3b3e (patch) | |
| tree | 40db3dbf3f7cbb4f1a7753840ddac72fee52fee2 /src/main/scala/Chisel/Tester.scala | |
| parent | 9430600381d52b10a6f5aad7140f355c3abf963c (diff) | |
Break Core.scala into bite-sized pieces
Diffstat (limited to 'src/main/scala/Chisel/Tester.scala')
| -rw-r--r-- | src/main/scala/Chisel/Tester.scala | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/main/scala/Chisel/Tester.scala b/src/main/scala/Chisel/Tester.scala new file mode 100644 index 00000000..d02af842 --- /dev/null +++ b/src/main/scala/Chisel/Tester.scala @@ -0,0 +1,39 @@ +// See LICENSE for license details. + +package Chisel + +import scala.util.Random + +class Tester[+T <: Module](c: T, isTrace: Boolean = true) { + def t: Int = 0 + var ok: Boolean = true // TODO: get rid of this + + def rnd: Random = new Random() + + def peek(data: Bits): BigInt = 0 + def poke(data: Bits, x: BigInt): Unit = {} + def expect(data: Bits, expected: BigInt): Boolean = true + def step(n: Int): Unit = {} + + // TODO: unify and disambiguate expect(...) + def expect(ok: Boolean, failureMsg: String): Boolean = true +} + +object chiselMainOld { + val wrapped = true + val unwrapped = false + + def apply[T <: Module](args: Array[String], gen: () => T): T = gen() + + def apply[T <: Module](args: Array[String], gen: () => T, ftester: T => Tester[T]): T = gen() + + // Assumes gen needs to be wrapped in Module() + def run[T <: Module] (args: Array[String], gen: () => T): T = gen() + + def run[T <: Module] (args: Array[String], gen: () => T, ftester: T => Tester[T]): T = gen() +} + +object chiselMainTest { + def apply[T <: Module](args: Array[String], gen: () => T)(tester: T => Tester[T]): T = + chiselMainOld(args, gen, tester) +} |
