MockAON: Accept the non-debug interrupt as an input to overall reset.
authorMegan Wachs <megan@sifive.com>
Fri, 7 Apr 2017 23:42:32 +0000 (16:42 -0700)
committerMegan Wachs <megan@sifive.com>
Fri, 7 Apr 2017 23:42:32 +0000 (16:42 -0700)
src/main/scala/devices/mockaon/MockAONPeriphery.scala
src/main/scala/devices/mockaon/MockAONWrapper.scala

index ef82ddeb9f5d6472cf9990585a7ff158e3d57a7b..1f99c313dfe3351ec705274f071e9118e265a5dd 100644 (file)
@@ -44,4 +44,5 @@ trait HasPeripheryMockAONModule extends HasTopLevelNetworksModule {
 
   outer.coreplex.module.io.rtcToggle := outer.aon.module.io.rtc.asUInt.toBool
 
+  outer.aon.module.io.ndreset := outer.coreplex.module.io.ndreset
 }
index d472ddd118deee21779e8b0011f6821d6bc2f8f5..099dba77e3c762aa06a7a9fe9d6fc40427706ebc 100644 (file)
@@ -56,6 +56,7 @@ class MockAONWrapper(w: Int, c: MockAONParams)(implicit p: Parameters) extends L
       val in = node.bundleIn
       val ip = intnode.bundleOut
       val rtc  = Clock(OUTPUT)
+      val ndreset = Bool(INPUT)
     }
 
     val aon_io = aon.module.io
@@ -99,7 +100,7 @@ class MockAONWrapper(w: Int, c: MockAONParams)(implicit p: Parameters) extends L
     val lfclk = aon_io.lfclk
 
     val aonrst_catch = Module (new ResetCatchAndSync(3))
-    aonrst_catch.reset := erst | aon_io.wdog_rst
+    aonrst_catch.reset := erst | aon_io.wdog_rst | io.ndreset
     aonrst_catch.clock := lfclk
     aon.module.reset := aonrst_catch.io.sync_reset