anchor.diff:  	 method ActionValue#(MemRequest) get();
   	    match {.idx, .cmd, .last_burst, .bl} <- toGet(loadf_c).get;
   	    workf.enq(tuple3(truncate(bl>>beat_shift), idx, last_burst));
  -	    if (verbose) $display("MemreadEngine::readReq idx %d offset %h burstLenBytes %h last_burst %d", idx, cmd.base, bl, last_burst);
  +	    if (verbose) $display("MemreadEngine::%d readReq idx %d offset %h burstLenBytes %h last_burst %d", counter, idx, cmd.base, bl, last_burst);
   	    return MemRequest { sglId: cmd.sglId, offset: cmd.base, burstLen:bl, tag: (cmd.tag << valueOf(serverIdxSz)) | extend(idx)};
   	 endmethod
         endinterface
  
positive.code:    Reg#(Bit#(TAdd#(1,serverIdxSz))) loadIdx <- mkReg(0);
     let beat_shift = fromInteger(valueOf(beatShift));
     let cmd_q_depth = fromInteger(valueOf(cmdQDepth));
     
     function Action incr_loadIdx =
        (action
  
negative.code:    interface dataPipes = read_data_pipes;
     interface read_servers = zipWith(toMemreadServer, rs, read_data_pipes);
  endmodule
  