From 58ad17ce796b2257511fde25ca5698de3153fcc1 Mon Sep 17 00:00:00 2001 From: Ruige Lee Date: Wed, 27 Aug 2025 16:27:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/scala/backBoard/ebus/CDRIn.scala | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/scala/backBoard/ebus/CDRIn.scala b/src/main/scala/backBoard/ebus/CDRIn.scala index 4c0c7b1..9bbbf98 100644 --- a/src/main/scala/backBoard/ebus/CDRIn.scala +++ b/src/main/scala/backBoard/ebus/CDRIn.scala @@ -155,14 +155,20 @@ trait CDRInMultiSample{ this: CDRInBase => } }.elsewhen( checkCnt.andR ){ //锁定之后,只允许每16cycle移动一相位 assert( arbCali >= 2.U && arbCali < 118.U ) - for( i <- 0 until 5 ){ - val j = 5 - i -1 - when( checkWindow(j) ^ checkWindow(j+1) ){ - when( j.U < arbCali ){ - arbCali := arbCali - 1.U - } .elsewhen( j.U > arbCali ){ - arbCali := arbCali + 1.U - } + + when( + (checkWindow(0) ^ checkWindow(1)) | + (checkWindow(1) ^ checkWindow(2)) + ){ + when( arbCali =/= 2.U ){ + arbCali := arbCali - 1.U + } + } .elsewhen( + (checkWindow(3) ^ checkWindow(4)) | + (checkWindow(4) ^ checkWindow(5)) + ){ + when( arbCali =/= 117.U ){ + arbCali := arbCali + 1.U } } }