anchor.diff:        let c1 <- coeffRam1.portB.response.get();
         let phase <- delayFilterPhase.get();
         
  -      mul[0].coeffData.enq(CoeffData{a: c0, filterPhase: phase});
  -      mul[1].coeffData.enq(CoeffData{a: c1, filterPhase: phase});
  +      mul[0].a.enq(CoeffData{a: c0, filterPhase: phase});
  +      mul[1].a.enq(CoeffData{a: c1, filterPhase: phase});
  +
      endrule
      
      rule muloutaccumin0;
  -      let m <- mul0.y.get();
  +      let m <- mul[0].y.get();
         if (m.filterPhase)
   	 begin
   	    accum[0] <= m.y;
  
positive.code:       let yin <- ycombined.get();
        let loin <- dds.osc.get();
        lo.x.enq(yin);
        lo.coeffData.enq(loin);
     endrule
     
     interface PipeIn rfreq = toPipeIn(infifo);
  
negative.code:    FIFOF#(Vector#(2, Signal)) outfifo <- mkFIFOF();
     Vector#(2, FPCMult) mul <- replicateM(mkFPCMult());
  
     Vector#(2, Reg#(Complex#(Product))) accum <- replicateM(mkReg(?));
     Vector#(2, FIFOF#(Complex#(Product))) accumout <- replicateM(mkPipelineFIFOF());
     
     FIFOF#(Complex#(Product)) ycombined <- mkPipelineFIFOF();
     FPCMult lo <- mkFPCMult();
  
     /* could do this with mkForkVector() but we don't need the extra FIFOs
  