From: rkao Date: Thu, 30 Oct 2008 17:57:51 +0000 (+0000) Subject: repair bit reverse bug X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=119c83495850deaf485e7c2adb47083fa1acb761;p=fleet.git repair bit reverse bug --- diff --git a/testCode/com/sun/vlsi/chips/marina/test/ProperStopper.java b/testCode/com/sun/vlsi/chips/marina/test/ProperStopper.java index 9ee880f..4feadbf 100644 --- a/testCode/com/sun/vlsi/chips/marina/test/ProperStopper.java +++ b/testCode/com/sun/vlsi/chips/marina/test/ProperStopper.java @@ -47,7 +47,7 @@ public class ProperStopper { private BitVector getDatTokAdr() { // strip the two write enable bits - return cc.getOutBits(dataPath).get(2, 52).bitReverse(); + return cc.getOutBits(dataPath).get(2, 52); } private void shiftControl(boolean readEnable, boolean writeEnable) { @@ -211,7 +211,7 @@ public class ProperStopper { * You must stop stopper before calling fill. * exit state: idle */ public void fill(BitVector dta) { - if (traceFill) prln("Begin fill stopper: "+name); + if (traceFill) prln("Begin fill. stopper="+name); adjustIndent(2); int n = dta.getNumBits(); @@ -229,7 +229,7 @@ public class ProperStopper { BitVector wrEn = new BitVector(2, "write enable"); wrEn.setFromLong(3); - cc.setInBits(dataPath, wrEn.cat(dta.bitReverse())); + cc.setInBits(dataPath, wrEn.cat(dta)); shiftData(false, true); fill(); // fill = 1 @@ -244,16 +244,16 @@ public class ProperStopper { // if data chain is shifted in the future, don't write! wrEn.setFromLong(0); - cc.setInBits(dataPath, wrEn.cat(dta.bitReverse())); + cc.setInBits(dataPath, wrEn.cat(dta)); adjustIndent(-2); - if (traceFill) prln("End fill stopper: "+name); + if (traceFill) prln("End fill"); } /** Insert items from a list, one by one. * You must stop stopper before calling fillMany() * exit state: idle */ public void fillMany(List data) { - prln("begin fillMany "+data.size()+" words"); + prln("Begin fillMany. stopper="+name+" numWords="+data.size()); adjustIndent(2); int cnt = 0; for (BitVector bv : data) { @@ -283,7 +283,7 @@ public class ProperStopper { idle(); // clear = 0 stop(); // block = 0 - if (traceDrain) prln("drain stopper: "+name+" data: "+formatDataTokAddr(ans)); + if (traceDrain) prln("drain stopper="+name+" data="+formatDataTokAddr(ans)); return ans; } /** Remove as many items as possible from the fill stage. @@ -297,7 +297,7 @@ public class ProperStopper { * drainStopperMany() will stop cleanly. * exit state: stop */ public List drainMany(int maxNbItems) { - prln("begin drainStopperMany"); + prln("begin drainMany. stopper="+name); adjustIndent(2); List ans = new ArrayList(); @@ -312,7 +312,7 @@ public class ProperStopper { if (myState==StateWireState.EMPTY || cnt>maxNbItems) break; - if (traceDrain) prln("drainStopperMany: reading word number: "+cnt++); + if (traceDrain) prln("drainMany: reading word number: "+cnt++); BitVector d = drain(); @@ -320,7 +320,7 @@ public class ProperStopper { } adjustIndent(-2); - prln("end drainStopperMany, got "+ans.size()+" entries"); + prln("end drainMany, got "+ans.size()+" items"); return ans; }