anchor.diff:  interface FMComms1DACPins;
      method Bit#(14) io_dac_data_p();
      method Bit#(14) io_dac_data_n();
  +   method Action io_dac_dco_p(Bit#(1) v);
  +   method Action io_dac_dco_n(Bit#(1) v);
   endinterface
   
   typedef struct {
  
positive.code:       method Bit#(14) io_dac_data_n();
           return(get_n(dac_out));
        endmethod
     
     endinterface
     
     interface PipeIn dac;
  
negative.code:  */
  
  
  module mkFMComms1DAC(FMComms1DAC);
     
     Clock def_clock <- exposeCurrentClock;
     Reset def_reset <- exposeCurrentReset;
     Wire#(Bit#(1)) dac_dco_p <- mkDWire(0);
     Wire#(Bit#(1)) dac_dco_n <- mkDWire(0);
  
     Clock dac_dco <- mkClockIBUFDS(dac_dco_p, dac_dco_n);
     Reset dac_reset <- mkAsyncReset(3, def_reset, dac_dco);
     
     SyncFIFOIfc#(Vector#(2, OIQ)) outfifo <- mkSyncBRAMFIFO(128, def_clock, def_reset, dac_dco, dac_reset);
  