repair bit reverse bug
authorrkao <rkao>
Thu, 30 Oct 2008 17:57:51 +0000 (17:57 +0000)
committerrkao <rkao>
Thu, 30 Oct 2008 17:57:51 +0000 (17:57 +0000)
testCode/com/sun/vlsi/chips/marina/test/ProperStopper.java

index 9ee880f..4feadbf 100644 (file)
@@ -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<BitVector> 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<BitVector> drainMany(int maxNbItems) {
-       prln("begin drainStopperMany");
+       prln("begin drainMany. stopper="+name);
        adjustIndent(2);
        
        List<BitVector> ans = new ArrayList<BitVector>();
@@ -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;
     }