anchor.diff:          ctrl_reset_inc_ce <= cric;
       endrule
       rule afsmfound_rule if (bvi_resets_reg.read() != 0 && astate == AFound);
  -        end_handshake.deq();
  +        serdes_end.deq();
           if (gencounter >= 'h8000)
               astate <= AStart;
           else
  
positive.code: 
      SyncBitIfc#(Bit#(1)) fifo_wren_sync <- mkSyncBit(serdes_clock, serdes_reset, defaultClock);
      Vector#(10, SyncBitIfc#(Bit#(1))) iserdes_data <-  replicateM(mkSyncBit(serdes_clock, serdes_reset, defaultClock));
      SyncFIFOIfc#(Bit#(1)) end_handshake <- mkSyncFIFO(2, serdes_clock, serdes_reset, defaultClock);
  
      Reg#(Bit#(3)) iodelay_reset_inc_ce <- mkReg(0, clocked_by serdes_clock, reset_by serdes_reset);
      Reg#(Bit#(10)) ctrl_data <- mkSyncReg(0, serdes_clock, serdes_reset, defaultClock);
      Reg#(Bit#(10)) ctrl_data_temp <- mkReg(0, clocked_by serdes_clock, reset_by serdes_reset);
      Reg#(Bit#(10)) data_init <- mkReg(0);
  
negative.code:         slave_data.shiftin2(master_data.shiftout2());
          slave_data.oclk(0);
          slave_data.oclkb(0);
          slave_data.reset(sync_reset_inc_ce[2]);
      endrule
  
      rule serdesda2_rule;
  