From e76e0f6dcec4ee38a1c263c071bc34d095bb606f Mon Sep 17 00:00:00 2001 From: "Wesley W. Terpstra" Date: Thu, 26 Oct 2017 13:11:47 -0700 Subject: [PATCH] interrupts: add debugstring to nodes to show sync depth in graphml --- src/main/scala/interrupts/Crossing.scala | 4 ++-- src/main/scala/interrupts/Nodes.scala | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/scala/interrupts/Crossing.scala b/src/main/scala/interrupts/Crossing.scala index 5c3f8568..d7f53a26 100644 --- a/src/main/scala/interrupts/Crossing.scala +++ b/src/main/scala/interrupts/Crossing.scala @@ -27,7 +27,7 @@ object IntSyncCrossingSource class IntSyncCrossingSource(alreadyRegistered: Boolean = false)(implicit p: Parameters) extends LazyModule { - val node = IntSyncSourceNode() + val node = IntSyncSourceNode(alreadyRegistered) lazy val module = new LazyModuleImp(this) { (node.in zip node.out) foreach { case ((in, edgeIn), (out, edgeOut)) => @@ -43,7 +43,7 @@ class IntSyncCrossingSource(alreadyRegistered: Boolean = false)(implicit p: Para class IntSyncCrossingSink(sync: Int = 3)(implicit p: Parameters) extends LazyModule { - val node = IntSyncSinkNode() + val node = IntSyncSinkNode(sync) lazy val module = new LazyModuleImp(this) { (node.in zip node.out) foreach { case ((in, edgeIn), (out, edgeOut)) => diff --git a/src/main/scala/interrupts/Nodes.scala b/src/main/scala/interrupts/Nodes.scala index 5f5f86b8..6b431cc2 100644 --- a/src/main/scala/interrupts/Nodes.scala +++ b/src/main/scala/interrupts/Nodes.scala @@ -51,12 +51,18 @@ object IntSyncImp extends SimpleNodeImp[IntSourcePortParameters, IntSinkPortPara case class IntSyncIdentityNode()(implicit valName: ValName) extends IdentityNode(IntSyncImp)() -case class IntSyncSourceNode()(implicit valName: ValName) +case class IntSyncSourceNode(alreadyRegistered: Boolean)(implicit valName: ValName) extends MixedAdapterNode(IntImp, IntSyncImp)( dFn = { p => p }, uFn = { p => p }) +{ + override lazy val nodedebugstring = s"alreadyRegistered:${alreadyRegistered}" +} -case class IntSyncSinkNode()(implicit valName: ValName) +case class IntSyncSinkNode(sync: Int)(implicit valName: ValName) extends MixedAdapterNode(IntSyncImp, IntImp)( dFn = { p => p }, uFn = { p => p }) +{ + override lazy val nodedebugstring = s"sync:${sync}" +}