diff --git a/src/main/scala/backBoard/shin/ShinTop.scala b/src/main/scala/backBoard/shin/ShinTop.scala index 86a5466..e44a44c 100644 --- a/src/main/scala/backBoard/shin/ShinTop.scala +++ b/src/main/scala/backBoard/shin/ShinTop.scala @@ -352,12 +352,12 @@ trait ShinTopSlave{ this: ShinTopBase => } - slaveParser.io.intHWClr(0) := interface.io.intHWClr(0) - slaveParser.io.intHWClr(1) := interface.io.intHWClr(1) - downCDRIn.reset := reset.asBool | interface.io.intHWClr(0) - upCDRIn.reset := reset.asBool | interface.io.intHWClr(1) - downCDROut.reset := reset.asBool | interface.io.intHWClr(0) - upCDROut.reset := reset.asBool | interface.io.intHWClr(1) + slaveParser.io.intHWClr(0) := interface.io.intHWTrig(0) & interface.io.intHWClr(0) + slaveParser.io.intHWClr(1) := interface.io.intHWTrig(1) & interface.io.intHWClr(1) + downCDRIn.reset := reset.asBool | ( interface.io.intHWTrig(0) & interface.io.intHWClr(0) ) + upCDRIn.reset := reset.asBool | ( interface.io.intHWTrig(1) & interface.io.intHWClr(1) ) + downCDROut.reset := reset.asBool | ( interface.io.intHWTrig(0) & interface.io.intHWClr(0) ) + upCDROut.reset := reset.asBool | ( interface.io.intHWTrig(1) & interface.io.intHWClr(1) ) interface.io.lvds <> slaveParser.io.lvds diff --git a/src/main/scala/backBoard/shin/SlaveParser.scala b/src/main/scala/backBoard/shin/SlaveParser.scala index 8b2081b..9ad77df 100644 --- a/src/main/scala/backBoard/shin/SlaveParser.scala +++ b/src/main/scala/backBoard/shin/SlaveParser.scala @@ -991,11 +991,11 @@ with SlaveParserProbe{ io.intHWTrig(0) := downRecParser.io.isError io.intHWTrig(1) := upRecParser.io.isError - downRecParser.reset := reset.asBool | io.intHWClr(0) - downSendGen.reset := reset.asBool | io.intHWClr(0) + downRecParser.reset := reset.asBool | (downRecParser.io.isError & io.intHWClr(0)) + downSendGen.reset := reset.asBool | (downRecParser.io.isError & io.intHWClr(0)) - upRecParser.reset := reset.asBool | io.intHWClr(1) - upSendGen.reset := reset.asBool | io.intHWClr(1) + upRecParser.reset := reset.asBool | (upRecParser.io.isError & io.intHWClr(1)) + upSendGen.reset := reset.asBool | (upRecParser.io.isError & io.intHWClr(1)) io.downRecStat := downRecParser.io.stat io.upRecStat := upRecParser.io.stat