anchor.diff:         mkBRAM2Server(cfg);
      BRAM2Port#(Bit#(10), Complex#(FixedPoint#(2,23))) coeffRam1 <- 
          mkBRAM2Server(cfg);
  -   Reg#(Bit#(10)) filterPhase <- mkReg(?);
  +   Reg#(Bit#(10)) filterPhase <- mkReg(0);
      FIFO#(Bit#(1)) delayFilterPhase <- mkSizedFIFO(3);  // length > bram read latency
      FIFOF#(Vector#(2, Complex#(Signal))) infifo <- mkFIFOF();
      FIFOF#(Complex#(Signal)) outfifo <- mkFIFOF();
  
positive.code:       mul[1].y.deq();
        if (m.filterPhase == 1)
  	 begin
  	    $display("muloutaccumin1 ph 1 pd.re %x pd.im %x\n",
  	       m.y.rel, m.y.img);
  	    accum[1] <= m.y;
  	    accumout[1].enq(accum[1]);
  	 end
        else
  	 begin
  	    $display("muloutaccumin1 ph 0 pd.re %x pd.im %x\n",
  	       m.y.rel, m.y.img);
  	    accum[1] <= accum[1] + m.y;
  	 end
     endrule
  
negative.code:       ycombined.deq();
        lo.x.enq(Complex{rel: yrel, img: yimg});
        lo.a.enq(CoeffData{a: loin, filterPhase: 0});
        $write("combineoutloin x ");
        $write(fshow(Complex{rel: yrel, img: yimg}));
        $write(" loin ");
        $display(fshow(loin));
     endrule
     
     rule loout;
  