anchor.diff:  import GetPutF::*;
   import PortalRMemory::*;
   import RingTypes::*;
  +import StmtFSM::*;
   
   // The interface to the copyengine is a pair of fifos which supply and accept
   // blocks of 8 64 bit words
  
positive.code: 	       f_in.deq;
  	    copyBusy <= True;
  	 endseq
     endseq
        
      rule copyReadRule (copyBusy && (copyReadCount != 0));
         $display("copyRead %h, count %h", copyReadAddr, copyReadCount);
  
negative.code: //  word0-6 all 0
  //  word7  TAG[31:0]
  
  module mkCopyEngine#(DMAReadClient#(64) copy_read_chan, DMAWriteClient#(64) copy_write_chan) ( ServerF#(Bit#(64), Bit#(64)));
     FIFO#(Bit#(64)) f_in  <- mkSizedFIFO(16);    // to buffer incoming requests
     FIFO#(Bit#(64)) f_out <- mkSizedFIFO(16);    // to buffer outgoing responses
     Reg#(Bit#(16)) copyReadCount <- mkReg(0);
  