anchor.diff:  
   	 writeDataMimo.deq(4);
   	 writeDwCount <= writeDwCount - 4;
  -	 tlp.eof = True;
  +	 $display("writeDwCount=%d", writeDwCount);
  +	 tlp.eof = False;
   	 tlp.be = 16'hffff;
   	 sendit = True;
         end
  -      else if (writeDataMimo.deqReadyN(unpack(truncate(writeDwCount)))) begin
  +      else if (writeDwCount <= 4 && writeDataMimo.deqReadyN(unpack(truncate(writeDwCount)))) begin
   	 v = writeDataMimo.first();
   	 writeDataMimo.deq(unpack(truncate(writeDwCount)));
   	 writeDwCount <= 0;
  +	 $display("writeDwCount=%d will be zero", writeDwCount);
   	 tlp.eof = True;
   	 if (writeDwCount == 4)
   	    tlp.be = 16'hffff;
  
positive.code: 	      end
  	      tlpWriteHeaderFifo.enq(tlp);
  	      writeBurstCount <= zeroExtend(burstLen)+1;
  	      writeDwCount <= zeroExtend(burstLen)*fromInteger(valueOf(busWidthWords)) + fromInteger(valueOf(busWidthWords));
  	      writeTag <= truncate(awid);
  	      writeHeaderSent <= False;
             endmethod: writeAddr
  	   method Action writeData(Bit#(busWidth) data, Bit#(busWidthBytes) byteEnable, Bit#(1) last, Bit#(idWidth) wid)
  	      provisos (Bits#(Vector#(busWidthWords, Bit#(32)), busWidth)) if (writeBurstCount > 0);
  
negative.code: 		 hdr_3dw.length = tlplen;
  		 hdr_3dw.firstbe = 4'hf;
  		 hdr_3dw.lastbe = 4'hf;
  
  		 tlp.be = 16'hfff0; // no data word in this TLP
  
  		 tlp.data = pack(hdr_3dw);
  	      end
  	      tlpWriteHeaderFifo.enq(tlp);
  	      writeBurstCount <= zeroExtend(burstLen)+1;
  	      writeTag <= truncate(awid);
             endmethod: writeAddr
  	   method Action writeData(Bit#(busWidth) data, Bit#(busWidthBytes) byteEnable, Bit#(1) last, Bit#(idWidth) wid)
  