anchor.diff:     // Beacon
      rule beacon(curr_state == SYNC);
         dmFifo.deq;
  -      let sync_timeout = interval_reg._read;//fromInteger(valueOf(SYNC_TIMEOUT));
  +      let sync_timeout = interval_reg._read;
         let beacon_type = fromInteger(valueOf(BEACON_TYPE));
         let ack_type = fromInteger(valueOf(ACK_TYPE));
         let rxtx_delay = fromInteger(valueOf(RXTX_DELAY));
  
positive.code: typedef 2'b10 ACK_TYPE;
  typedef 2'b11 BEACON_TYPE;
  
  //FIXME: should be controlled by driver.
  typedef 1000 INIT_TIMEOUT;
  typedef 1000 SYNC_TIMEOUT;
  
  typedef enum {INIT, SENT, SYNC} DtpState
  deriving (Bits, Eq);
  
  
negative.code:       else begin
           encodeOut = v;
        end
        if(verbose) $display("%d: %d dtpTxOut=%h, c_local=%h, encodeOut=%h", cycle, id, v, c_local, encodeOut[12:10]);
        dtpTxOutFifo.enq(encodeOut);
     endrule
  
     // delay measurement
     rule delay_measurment(curr_state == INIT || curr_state == SENT);
        let init_timeout = interval_reg._read;
        let init_type = fromInteger(valueOf(INIT_TYPE));
        let ack_type = fromInteger(valueOf(ACK_TYPE));
        let rxtx_delay = fromInteger(valueOf(RXTX_DELAY));
  