2016-09-15 22:04:01 +02:00
|
|
|
package groundtest
|
|
|
|
|
|
|
|
import Chisel._
|
2016-11-17 02:05:53 +01:00
|
|
|
import diplomacy._
|
2016-11-18 23:05:14 +01:00
|
|
|
import config._
|
2016-11-17 02:05:53 +01:00
|
|
|
import rocketchip._
|
|
|
|
import util._
|
2016-09-15 22:04:01 +02:00
|
|
|
|
2016-11-17 02:05:53 +01:00
|
|
|
class TestHarness(q: Parameters) extends Module {
|
|
|
|
val io = new Bundle {
|
|
|
|
val success = Bool(OUTPUT)
|
|
|
|
}
|
|
|
|
implicit val p = q
|
|
|
|
|
2016-11-23 00:01:45 +01:00
|
|
|
val dut = Module(LazyModule(new GroundTestTop).module)
|
2016-11-17 02:05:53 +01:00
|
|
|
io.success := dut.io.success
|
|
|
|
|
|
|
|
if (dut.io.mem_axi4.nonEmpty) {
|
2016-11-18 00:38:11 +01:00
|
|
|
val memSize = p(ExtMem).size
|
2016-11-17 02:05:53 +01:00
|
|
|
require(memSize % dut.io.mem_axi4.size == 0)
|
2016-11-23 01:58:24 +01:00
|
|
|
for (axi4 <- dut.io.mem_axi4) {
|
|
|
|
Module(LazyModule(new SimAXIMem(memSize / dut.io.mem_axi4.size)).module).io.axi4 <> axi4
|
2016-11-17 02:05:53 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|