anchor.diff:  	 endmethod
         endinterface
      endinterface
  -   interface BRAMClient topBufferReadClient;
  -      interface request = toGet(topBufferRequestFifo);
  -      interface response = toPut(topBufferResponseFifo);
  -   endinterface
  -   interface BRAMClient topBufferWriteClient;
  -      interface request = toGet(topBufferWriteFifo);
  -      interface Put response;
  -	 method Action put(Int#(16) v);
  -	    $display("topBufferWriteClient.response.put should never be called. v=%h", v);
  -	 endmethod
  -      endinterface
  -   endinterface
      interface MemReadClient readClient;
         interface Get readReq = toGet(readReqFifo);
         interface Put readData = toPut(readDataFifo);
  
positive.code:    interface Put#(XYIteratorConfig#(Bit#(LineBufferAddrSize))) convRequest; // for testing
     interface BRAMClient#(Bit#(LineBufferAddrSize),Int#(16)) lineBufferReadClient;
     interface BRAMClient#(Bit#(LineBufferAddrSize),Int#(16)) lineBufferWriteClient;
     interface BRAMClient#(Bit#(LineBufferAddrSize),Int#(16)) topBufferReadClient;
     interface BRAMClient#(Bit#(LineBufferAddrSize),Int#(16)) topBufferWriteClient;
     interface PipeOut#(InnerProdParam) innerProdRequest;
     interface PipeIn#(InnerProdResponse) innerProdResponse;
     interface MemReadClient#(DataBusWidth) readClient;
  
negative.code:       if (colWriteBackIterator.isLast()) begin
  	 //let unused <- toGet(rowWriteBackIterator.pipe).get();
        end
        wrrCount <= wrrCount + 1;
        $display("writeReqRule: offset=%h cwbi.isLast %d rwbi.isLast %d wrr %d", offset, colWriteBackIterator.isLast(), rowWriteBackIterator.isLast(), wrrCount);
        writeReqFifo.enq(MemRequest { sglId: writePointerReg, offset: extend(offset), burstLen: fromInteger(valueOf(DataBusWidth)/8), tag: tag });
  