code: def program_global_reg(self):
          
  
          self._clear_strobes()
  
          gr_size = len(self['GLOBAL_REG'][:])  # get the size
          self['SEQ']['SHIFT_IN'][0:gr_size] = self['GLOBAL_REG'][:]  # this will be shifted out
          self['SEQ']['GLOBAL_SHIFT_EN'][0:gr_size] = bitarray(gr_size * '1')  # this is to enable clock
          self['SEQ']['GLOBAL_CTR_LD'][gr_size + 1:gr_size + 2] = bitarray("1")  # load signals
          self['SEQ']['GLOBAL_DAC_LD'][gr_size + 1:gr_size + 2] = bitarray("1")
  
          # Execute the program (write bits to output pins)
          # + 1 extra 0 bit so that everything ends on LOW instead of HIGH
          self._run_seq(gr_size + 3)
docs: Send the global register to the chip.
  
          Loads the values of self['GLOBAL_REG'] onto the chip.
          Includes enabling the clock, and loading the Control (CTR)
          and DAC shadow registers.