anchor.diff:        let c0 <- coeffRam0.portB.response.get();
         let c1 <- coeffRam1.portB.response.get();
         Bit#(1) phase = delayFilterPhase.first();
  -      $display ("mulin ph %d, c0.re %x c0.im %x, c1.re %x, c1.im %x\n",
  -	 phase, c0.rel, c0.img, c1.rel, c1.img);
  +      $write("mulin ph %d c0 ", phase);
  +      $write(fshow(c0));
  +      $write(" c1 ");
  +      $write(fshow(c1));
  +      $write("\n");
  +      
         delayFilterPhase.deq();
         mul[0].a.enq(CoeffData{a: c0, filterPhase: phase});
         mul[1].a.enq(CoeffData{a: c1, filterPhase: phase});
  
positive.code:        mkBRAM2Server(cfg);
     BRAM2Port#(Bit#(10), Complex#(FixedPoint#(2,23))) coeffRam1 <- 
         mkBRAM2Server(cfg);
     Reg#(Bit#(10)) filterPhase <- mkReg(?);
     FIFO#(Bit#(1)) delayFilterPhase <- mkSizedFIFO(3);  // length > bram read latency
     FIFOF#(Vector#(2, Complex#(Signal))) infifo <- mkFIFOF();
     FIFOF#(Complex#(Signal)) outfifo <- mkFIFOF();
  
negative.code:       if (m.filterPhase == 1)
  	 begin
  	    accum[0] <= m.y;
  	    $write("muloutaccumin0 ph 1 ");
  	    $display(fshow(m.y));
  	    accumout[0].enq(accum[0]);
  	 end
        else
  	 begin
  	    $write("muloutaccumin0 ph 0 ");
  	    $display(fshow(m.y));
  	    accum[0] <= accum[0] + m.y;
  	 end
     endrule
  