anchor.diff:     rule newPatt;
         let newPattMultiOcc <- toGet(newPattMultiOcc_fifo).get;
         let oldNewbPattWr <- toGet(oldNewbPattWr_fifo).get;
  +      let vacFLocR <- toGet(vacFLoc_fifo1).get;
         newPattMultiOccR <= newPattMultiOcc;
         Bit#(5) oldIdx_ = oldPattMultiOccR ? oldIdxR : 0;
         Bit#(5) newIdx_ = newPattMultiOcc ? newIdxR : vacFLocR;
  
positive.code:    rule pe_vac_out;
        let bin <- toGet(pe_vac.bin).get;
        let vld <- toGet(pe_vac.vld).get;
        vacFLocR <= bin;
        $display("vacram %d: bin=%x vld=%x", cycle, bin, vld);
     endrule
  
  
negative.code:       cycle <= cycle + 1;
     endrule
  
     FIFOF#(Bit#(camSz)) writeReqFifo <- mkFIFOF;
     FIFOF#(Bool) oldPattV_fifo <- mkFIFOF();
     FIFOF#(Bool) oldPattMultiOcc_fifo <- mkFIFOF();
     FIFOF#(Bool) newPattMultiOcc_fifo <- mkFIFOF();
     FIFOF#(Bool) oldNewbPattWr_fifo <- mkFIFOF();
     FIFOF#(Bit#(5)) vacFLoc_fifo0 <- mkFIFOF();
     FIFOF#(Bit#(5)) vacFLoc_fifo1 <- mkFIFOF();
     FIFOF#(Bit#(5)) vacFLoc_fifo2 <- mkFIFOF();
  
     FIFOF#(Bit#(32)) wVac_fifo <- mkFIFOF();
     FIFOF#(Bit#(32)) cVac_fifo <- mkFIFOF();
  
     FIFOF#(Bool) wEnb_vacram_fifo <- mkFIFOF;
     FIFOF#(Bool) wEnb_idxram_fifo <- mkFIFOF;
  
     Vector#(4, PipeOut#(Bit#(camSz))) wAddrPipes <- mkForkVector(toPipeOut(writeReqFifo));
     //Reg#(Bit#(5)) vacFLocR <- mkReg(0);
  
     Reg#(Bit#(32)) cVacR <- mkReg(maxBound);
     Reg#(Bool) oldPattMultiOccR <- mkReg(False);
     Reg#(Bool) newPattMultiOccR <- mkReg(False);
     Reg#(Bit#(5)) oldIdxR <- mkReg(0);
     Reg#(Bit#(5)) newIdxR <- mkReg(0);
  
     // Indx Ram
     FIFOF#(Bit#(5)) newPattOccFLoc_fifo <- mkFIFOF();
     FIFOF#(Bit#(5)) wIndx_fifo <- mkFIFOF();
     FIFOF#(Bit#(5)) wAddrL_fifo <- mkFIFOF();
     FIFOF#(Bit#(160)) data_oldPatt_fifo <- mkFIFOF();
     FIFOF#(Bit#(160)) data_newPatt_fifo <- mkFIFOF();
  
  `define VACRAM AsymmetricBRAM#(Bit#(vacReadDepthSz), Bit#(vacReadSz), Bit#(vacWriteDepthSz), Bit#(vacWriteSz))
     `VACRAM vacram <- mkAsymmetricBRAM(True, False, "Vacram");
  