anchor.diff:     AxiStreamMaster#(32)               msgFromSoftwareStream <- mkAxiStream(msgFromSoftwareFifo);
      AxiStreamMaster#(PcieDataBusWidth) dataFromNvmeStream <- mkAxiStream(splitter.dataFromNvme);
      AxiStreamSlave#(PcieDataBusWidth)  dataToNvmeStream   <- mkAxiStream(splitter.dataToNvme);
  -   AxiStreamSlave#(SizeOf#(NvmeIoCommand))     requestStream      <- mkAxiStream(mapPipeIn(unpack,toPipeIn(ioCommandFifo)));
  -   AxiStreamMaster#(SizeOf#(NvmeIoResponse))   responseStream     <- mkAxiStream(mapPipe(pack,toPipeOut(ioResponseFifo)));
  +   AxiStreamSlave#(SizeOf#(NvmeIoCommand))     requestStream      <- mkAxiStream(mapPipeIn(unpack,toPipeIn(ioCommandFifoAccel)));
  +   AxiStreamMaster#(SizeOf#(NvmeIoResponse))   responseStream     <- mkAxiStream(mapPipe(pack,toPipeOut(ioResponseFifoAccel)));
   
      rule rl_msgToSoftware;
         let msg <- toGet(msgToSoftwareFifo).get();
  
positive.code:       while (True) seq
  	 action
  	    let req <- toGet(ioSegmentFifo).get();
  	    Vector#(16,Bit#(32)) command = unpack(0);
  	    command[0] = { requestId, req.flags, req.opcode };
  	    command[1] = 1; // nsid
  
negative.code:    let segmenterFsm <- mkAutoFSM(seq
        while (True) seq
  	 action
  	    NvmeIoCommand command = unpack(0);
  	    Bit#(1) commandSource = 0;
  	    Bool commandValid = False;
  	    if (ioCommandFifo.notEmpty) begin
  	       command <- toGet(ioCommandFifo).get();
  	       commandValid = True;
  	       commandSource = 0;
  	    end
  `ifdef NVME_ACCELERATOR_INTERFACE
  	    else if (ioCommandFifoAccel.notEmpty) begin
  	       command <- toGet(ioCommandFifoAccel).get();
  	       commandValid = True;
  	       commandSource = 1;
  	    end
  `endif
  	    if (commandValid) begin
  	       ioIterator.start(IteratorConfig {xbase: 0,
  						xlimit: command.numBlocks,
  						xstep: `BlocksPerRequest},
  				command);
  	       commandStartProbe <= command.startBlock;
  	       commandNumBlocksProbe <= command.numBlocks;
  	       ioCommandSourceFifo.enq(commandSource);
  	    end
  	 endaction
           while (ioIterator.ivpipe.notEmpty()) seq
  	    action
  