anchor.diff:        let isLast = lastFifo.first();
         lastFifo.deq();
         for (Integer i = 0; i < valueOf(n); i = i + 1) begin
  -	 let resp <- macs[i].response.get();
  -	 vs[i] = tpl_1(resp);
  +	 Float vi;
  +	 if (useMac) begin
  +	    let resp <- macs[i].response.get();
  +	    vi = tpl_1(resp);
  +	 end
  +	 else begin
  +	    let resp <- adders[i].response.get();
  +	    vi = tpl_1(resp);
  +	 end
  +	 vs[i] = vi;
   	 if (!isLast) begin
  -	    accumFifo[i].enq(tagged Valid tpl_1(resp));
  +	    accumFifo[i].enq(vi);
   	 end
         end
         if (isLast) begin
  
positive.code:       if (verbose) $display("mm.start ra=%d ca=%d rb=%d cb=%d dotprodCount=%d", numRowsA, numColumnsA, numRowsB, numColumnsB, dotprodCount);
        if (verbose) $display($format(fshow("mm.start ")+fshow(xycfg)));
        xypipeifc.start(xycfg);
     endmethod
     method ActionValue#(Bool) finish();
        if (verbose) $display("mm.finish()");
  
negative.code: 	 dmaMMF.start(h1, unpack(extend(r1)), unpack(extend(c1)),
  		      h2, unpack(extend(r2)), unpack(extend(c2)),
  		      h3);
  	 mmfCycles <= 0;
  	 busyFifo.enq(True);
        endmethod
     endinterface   
  