First cut at refactoring unittests into a top-level utility. Individual tests co-located with their DUT. No functional changes.
This commit is contained in:
@ -5,6 +5,7 @@ import uncore.tilelink._
|
||||
import uncore.constants._
|
||||
import junctions._
|
||||
import rocket._
|
||||
import util.Timer
|
||||
import scala.util.Random
|
||||
import cde.{Parameters, Field}
|
||||
|
||||
|
@ -6,6 +6,7 @@ import uncore.devices.NTiles
|
||||
import uncore.constants._
|
||||
import junctions._
|
||||
import rocket._
|
||||
import util.Timer
|
||||
import scala.util.Random
|
||||
import cde.{Parameters, Field}
|
||||
|
||||
|
@ -4,6 +4,7 @@ import Chisel._
|
||||
import uncore.tilelink._
|
||||
import uncore.converters._
|
||||
import junctions._
|
||||
import util.Timer
|
||||
import rocket.TileId
|
||||
import cde.Parameters
|
||||
|
||||
|
@ -5,7 +5,8 @@ import uncore.tilelink._
|
||||
import uncore.constants._
|
||||
import uncore.agents._
|
||||
import uncore.util._
|
||||
import junctions.{ParameterizedBundle, HasAddrMapParameters, Timer}
|
||||
import junctions.{ParameterizedBundle, HasAddrMapParameters}
|
||||
import util.Timer
|
||||
import rocket.HellaCacheIO
|
||||
import cde.{Parameters, Field}
|
||||
|
||||
|
@ -22,6 +22,7 @@ import uncore.constants._
|
||||
import uncore.devices.NTiles
|
||||
import junctions._
|
||||
import rocket._
|
||||
import util.{Timer, DynamicTimer}
|
||||
import scala.util.Random
|
||||
import cde.{Parameters, Field}
|
||||
|
||||
|
@ -2,35 +2,6 @@ package groundtest
|
||||
|
||||
import Chisel._
|
||||
|
||||
// =============
|
||||
// Dynamic timer
|
||||
// =============
|
||||
|
||||
// Timer with a dynamically-settable period.
|
||||
|
||||
class DynamicTimer(w: Int) extends Module {
|
||||
val io = new Bundle {
|
||||
val start = Bool(INPUT)
|
||||
val period = UInt(INPUT, w)
|
||||
val stop = Bool(INPUT)
|
||||
val timeout = Bool(OUTPUT)
|
||||
}
|
||||
|
||||
val countdown = Reg(init = UInt(0, w))
|
||||
val active = Reg(init = Bool(false))
|
||||
|
||||
when (io.start) {
|
||||
countdown := io.period
|
||||
active := Bool(true)
|
||||
} .elsewhen (io.stop || countdown === UInt(0)) {
|
||||
active := Bool(false)
|
||||
} .elsewhen (active) {
|
||||
countdown := countdown - UInt(1)
|
||||
}
|
||||
|
||||
io.timeout := countdown === UInt(0) && active
|
||||
}
|
||||
|
||||
// ============
|
||||
// LCG16 module
|
||||
// ============
|
||||
|
Reference in New Issue
Block a user