Отсутствует поддержка параллельного тестирования с chisel3.iotesters
(«Тестеры с долотом»). Тем не менее, существует поддержка параллельного тестирования с новой платформой тестирования: chisel3.testers
("Chisel Testers2") .
Это добавляет поддержку fork
, join
и parallel
конструкций. Краткий пример - проверка очереди путем разветвления как постановки, так и снятия с очереди :
it should "work with a combinational queue" in {
test(new PassthroughQueue(UInt(8.W))) { c =>
c.in.initSource()
c.in.setSourceClock(c.clock)
c.out.initSink()
c.out.setSinkClock(c.clock)
fork {
c.in.enqueueSeq(Seq(42.U, 43.U, 44.U))
}.fork {
c.out.expectDequeueSeq(Seq(42.U, 43.U, 44.U))
}.join()
}
}
Дополнительный пример см. В файле chisel-template
GcdTesters2.scala
.