anchor.diff:  	     );
      endfunction
      
  -   
  +   Clock adc_dco;     /* DDR clock */
  +   Wire#(Bit#(1)) adc_dco_p <- mkDWire(0);
  +   Wire#(Bit#(1)) adc_dco_n <- mkDWire(0);
  +   adc_dco <- mkClockIBUFDS(adc_dco_p, adc_dco_n);
      
      Vector#(14, Wire#(Bit#(1))) adc_data_p = newVector;
  -   
  -   
  -
      for (Integer i = 0; i < 14; i = i + 1)
  -      adc_data_p[i] <- mkDWire(0);
  +      adc_data_p[i] <- mkDWire(0, clocked_by adc_dco);
  +
      Vector#(14, Wire#(Bit#(1))) adc_data_n = newVector;
      for (Integer i = 0; i < 14; i = i + 1)
  -      adc_data_n[i] <- mkDWire(0);
  -
  -   Wire#(Bit#(1)) adc_or_p <- mkDWire(0);
  -   Wire#(Bit#(1)) adc_or_n <- mkDWire(0);
  -   Wire#(Bit#(1)) adc_dco_p <- mkDWire(0);
  -   Wire#(Bit#(1)) adc_dco_n <- mkDWire(0);
  +      adc_data_n[i] <- mkDWire(0, clocked_by adc_dco);
  +
  +   Wire#(Bit#(1)) adc_or_p <- mkDWire(0, clocked_by adc_dco);
  +   Wire#(Bit#(1)) adc_or_n <- mkDWire(0, clocked_by adc_dco);
   
      Vector#(14, ReadOnly#(Bit#(1))) v_adc_data;   /* data */
      ReadOnly#(Bit#(14)) adc_data;
   
      ReadOnly#(Bit#(1)) adc_or;      /* overrange */
  -   Clock adc_dco;     /* DDR clock */
  -   
  -   adc_dco <- mkClockIBUFDS(adc_dco_p, adc_dco_n);
  +   
      
      Reset adc_reset <- mkAsyncReset(3, def_reset, adc_dco);
      for(Integer i = 0; i < 14; i = i + 1)
  
positive.code:       method Action io_adc_dco_n(Bit#(1) v);
  	 adc_dco_n <= v;
        endmethod
     
     endinterface
     
     interface PipeOut adc;
  
negative.code:    method Action io_adc_or_n(Bit#(1) v);
     method Action io_adc_dco_p(Bit#(1) v);
     method Action io_adc_dco_n(Bit#(1) v);
     interface Clock deleteme_unused_clock;
     interface Reset deleteme_unused_reset;
  endinterface
  
  typedef struct {
  