From acb88893824f6ec8a6dce448e2f5e98360ec1fa3 Mon Sep 17 00:00:00 2001 From: Megan Wachs Date: Thu, 24 Aug 2017 18:12:36 -0700 Subject: [PATCH 1/1] remove duplicate ResetCatchAndSync definition --- .../devices/mockaon/MockAONWrapper.scala | 2 +- src/main/scala/util/ResetCatchAndSync.scala | 42 ------------------- 2 files changed, 1 insertion(+), 43 deletions(-) delete mode 100644 src/main/scala/util/ResetCatchAndSync.scala diff --git a/src/main/scala/devices/mockaon/MockAONWrapper.scala b/src/main/scala/devices/mockaon/MockAONWrapper.scala index aeacd83..9ac4308 100644 --- a/src/main/scala/devices/mockaon/MockAONWrapper.scala +++ b/src/main/scala/devices/mockaon/MockAONWrapper.scala @@ -7,7 +7,7 @@ import freechips.rocketchip.diplomacy._ import freechips.rocketchip.tilelink._ import freechips.rocketchip.util._ import sifive.blocks.devices.pinctrl.{EnhancedPin} -import sifive.blocks.util.{DeglitchShiftRegister, ResetCatchAndSync} +import sifive.blocks.util.{DeglitchShiftRegister} /* The wrapper handles the Clock and Reset Generation for The AON block itself, and instantiates real pad controls (aka pull-ups)*/ diff --git a/src/main/scala/util/ResetCatchAndSync.scala b/src/main/scala/util/ResetCatchAndSync.scala deleted file mode 100644 index 6b483e5..0000000 --- a/src/main/scala/util/ResetCatchAndSync.scala +++ /dev/null @@ -1,42 +0,0 @@ -// See LICENSE for license details. -package sifive.blocks.util - -import Chisel._ -import freechips.rocketchip.util.AsyncResetRegVec - -/** Reset: asynchronous assert, - * synchronous de-assert - * - */ - -class ResetCatchAndSync (sync: Int = 3) extends Module { - - val io = new Bundle { - val sync_reset = Bool(OUTPUT) - } - - val reset_n_catch_reg = Module (new AsyncResetRegVec(sync, 0)) - - reset_n_catch_reg.io.en := Bool(true) - reset_n_catch_reg.io.d := Cat(Bool(true), reset_n_catch_reg.io.q >> 1) - - io.sync_reset := ~reset_n_catch_reg.io.q(0) - -} - -object ResetCatchAndSync { - - def apply(clk: Clock, rst: Bool, sync: Int = 3, name: Option[String] = None): Bool = { - - val catcher = Module (new ResetCatchAndSync(sync)) - if (name.isDefined) {catcher.suggestName(name.get)} - catcher.clock := clk - catcher.reset := rst - - catcher.io.sync_reset - } - - def apply(clk: Clock, rst: Bool, sync: Int, name: String): Bool = apply(clk, rst, sync, Some(name)) - def apply(clk: Clock, rst: Bool, name: String): Bool = apply(clk, rst, name = Some(name)) - -} -- 2.30.2