1
0

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:
Henry Cook
2016-09-13 15:37:29 -07:00
committed by Howard Mao
parent dfd6bfb454
commit 7dd4492abb
24 changed files with 353 additions and 364 deletions

View File

@ -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}

View File

@ -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}

View File

@ -4,6 +4,7 @@ import Chisel._
import uncore.tilelink._
import uncore.converters._
import junctions._
import util.Timer
import rocket.TileId
import cde.Parameters

View File

@ -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}

View File

@ -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}

View File

@ -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
// ============