anchor.diff:                  begin
                   retrycounter <= retrycounter - 1;
                   if (maxcount[10] == 1)
  -                    as = ADelay;
  +                    as = AReset;
                   else
                       begin
                       cric = 2'b11;
                       gc = 14;
  -                    as = ACEdge;
  +                    as = AEdge;
                       end
                   maxcount <= maxcount - 1;
                   end
  
positive.code:         if (gencounter >= 'h8000)
              begin
              gc = 9;
              as = ACompare;
              end
          else
              begin
  
negative.code: endinterface: IserdesDatadeser
  
  typedef enum { QIdle, QTrain, QOff} QState deriving (Bits,Eq);
  typedef enum { AIdle, AReset, AEdge, AWait, AShift,
       A1Changed, AFirst, ASecond, AFound, AAlign} AState deriving (Bits,Eq);
  
  module mkIserdesDatadeser#(Clock serdes_clock, Reset serdes_reset, Clock serdest, Bit#(1) align_start,
      Bit#(1) autoalign, Bit#(10) training, Bit#(10) manual_tap, TrainRotate trainrot)(IserdesDatadeser);
  