anchor.diff:        // first pipeline stage
         if (re.dataPipes[0].notEmpty()) begin
   	 let v <- toGet(re.dataPipes[0]).get;
  -	 let rval = wordsRead/4;
  +	 let rval = bytesRead/4;
   	 let expectedV = {rval+1,rval};
   	 vReg <= v;
   	 vExpectedReg <= expectedV;
   	 validReg <= True;
  -	 let next_wordsRead = wordsRead + fromInteger(valueOf(DataBusWidth))/8;
  +	 let next_bytesRead = bytesRead + fromInteger(valueOf(DataBusWidth))/8;
   	 let next_bytesToRead = bytesToRead - fromInteger(valueOf(DataBusWidth))/8;
   	 let last = (bytesToRead <= fromInteger(valueOf(DataBusWidth))/8);
  -	 //$display("check next_wordsRead=%d next_bytesToRead=%d last=%d", next_wordsRead, next_bytesToRead, last);
  +	 //$display("check next_bytesRead=%d next_bytesToRead=%d last=%d", next_bytesRead, next_bytesToRead, last);
   	 if (last) begin
  -	    next_wordsRead = 0;
  +	    next_bytesRead = 0;
   	    next_bytesToRead = numBytes;
   	 end
   	 lastReg <= last;
  -	 wordsRead <= next_wordsRead;
  +	 bytesRead <= next_bytesRead;
   	 bytesToRead <= next_bytesToRead;
         end
         else begin
  
positive.code: 	 itersToFinish <= ic;
  	 itersToStart <= ic;
  	 mismatchCounts <= 0;
  	 wordsRead <= 0;
        endmethod
     endinterface
  endmodule
  
negative.code: 	 let expectedV = vExpectedReg;
  	 let misMatch = v != expectedV;
  	 mismatchCounts <= mismatchCounts + (misMatch ? 1 : 0);
  	 //$display("Test: check new=%x numBytes=%x bytesRead=%x misMatch=%x read=%x expect=%x", new_bytesRead, numBytes, bytesRead, misMatch, v, expectedV);
  	 if (lastReg) begin
  	    checkDoneFifo.enq(mismatchCounts);
  	 end
  