anchor.diff:      interface PipeIn#(DotType) sendPair;
       interface PipeOut#(Float)   done;
       method Action init(Float atemp);
  +    method Action incrementWait();
   endinterface
   
   (* synthesize *)
  
positive.code:     FloatAlu mul <- mkFloatMultiplier(defaultValue);
      Reg#(Float)    temp <- mkReg(0);
      Reg#(Bool)     running <- mkReg(False);
  
      rule dotrule;
          let v <- toGet(dotFifo).get;
  
negative.code:     method Action init(Float atemp) if (!running);
          temp <= atemp;
          running <= True;
          waitCount <= 0;
      endmethod
      method Action incrementWait();
          waitCount <= waitCount + 1;
      endmethod
  endmodule
  
  