示例#1
0
	def setUp(self):
		AWGTestHelper.__init__(self, APS)
		for name in ['APS1', 'APS2', 'APS3']:
			self.instruments[name] = APS(label=name)

			for ch in ['12', '34']:
				channelName = name + '-' + ch
				channel = PhysicalQuadratureChannel(label=channelName)
				channel.AWG = self.instruments[name]
				self.channels[channelName] = channel

			for m in range(1,5):
				channelName = "{0}-{1}m1".format(name,m)
				channel = PhysicalMarkerChannel(label=channelName)
				channel.AWG = self.instruments[name]
				self.channels[channelName] = channel

		mapping = {	'digitizerTrig' : 'APS1-1m1',
					'slaveTrig'     : 'APS1-2m1',
					'q1'            : 'APS1-12',
					'M-q1'          : 'APS1-34',
					'M-q1-gate'     : 'APS1-3m1',
					'q1-gate'       : 'APS1-4m1',
					'q2'            : 'APS2-12',
					'M-q2'          : 'APS2-34',
					'M-q2-gate'     : 'APS2-1m1',
					'q2-gate'       : 'APS2-2m1',
					'cr'            : 'APS3-12',
					'cr-gate'       : 'APS3-1m1',
					'M-q1q2'        : 'APS3-34',
					'M-q1q2-gate'   : 'APS3-2m1'}

		self.finalize_map(mapping)
示例#2
0
	def setUp(self):
		AWGTestHelper.__init__(self, Tek5014)
		for name in ['TEK1', 'TEK2']:
			self.instruments[name] = Tek5014(label=name)

			for ch in ['12', '34']:
				channelName = name + '-' + ch
				channel = PhysicalQuadratureChannel(label=channelName)
				channel.AWG = self.instruments[name]
				self.channels[channelName] = channel

			for m in ['1m1', '1m2', '2m1', '2m2', '3m1', '3m2', '4m1', '4m2']:
				channelName = "{0}-{1}".format(name,m)
				channel = PhysicalMarkerChannel(label=channelName)
				channel.AWG = self.instruments[name]
				self.channels[channelName] = channel

		mapping = { 'digitizerTrig'	: 'TEK1-1m2',
					'slaveTrig'   	: 'TEK1-2m2',
					'q1'			: 'TEK1-12',
					'M-q1'			: 'TEK1-12',
					'M-q1-gate'		: 'TEK1-1m1',
					'q1-gate'		: 'TEK1-2m1',
					'q2'			: 'TEK1-34',
					'M-q2'			: 'TEK1-34',
					'M-q2-gate'		: 'TEK1-3m1',
					'q2-gate'		: 'TEK1-4m1',
					'cr'            : 'TEK2-12',
					'cr-gate'       : 'TEK2-1m1',
					'M-q1q2'        : 'TEK2-34',
					'M-q1q2-gate'   : 'TEK2-2m1'}

		self.finalize_map(mapping)
示例#3
0
    def setUp(self):
        AWGTestHelper.__init__(self, Tek5014)
        for name in ['TEK1', 'TEK2']:
            self.instruments[name] = Tek5014(label=name)

            for ch in ['12', '34']:
                channelName = name + '-' + ch
                channel = PhysicalQuadratureChannel(label=channelName)
                channel.AWG = self.instruments[name]
                self.channels[channelName] = channel

            for m in ['1m1', '1m2', '2m1', '2m2', '3m1', '3m2', '4m1', '4m2']:
                channelName = "{0}-{1}".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName)
                channel.AWG = self.instruments[name]
                self.channels[channelName] = channel

        mapping = {
            'digitizerTrig': 'TEK1-1m2',
            'slaveTrig': 'TEK1-2m2',
            'q1': 'TEK1-12',
            'M-q1': 'TEK1-12',
            'M-q1-gate': 'TEK1-1m1',
            'q1-gate': 'TEK1-2m1',
            'q2': 'TEK1-34',
            'M-q2': 'TEK1-34',
            'M-q2-gate': 'TEK1-3m1',
            'q2-gate': 'TEK1-4m1',
            'cr': 'TEK2-12',
            'cr-gate': 'TEK2-1m1',
            'M-q1q2': 'TEK2-34',
            'M-q1q2-gate': 'TEK2-2m1'
        }

        self.finalize_map(mapping)
示例#4
0
	def setUp(self):
		AWGTestHelper.__init__(self, APS2)
		for name in ['APS1', 'APS2', 'APS3', 'APS4', 'APS5', 'APS6']:
			self.instruments[name] = APS2(label=name)

			channelName = name + '-12'
			channel = PhysicalQuadratureChannel(label=channelName)
			channel.AWG = self.instruments[name]
			self.channels[channelName] = channel

			for m in range(1,5):
				channelName = "{0}-12m{1}".format(name,m)
				channel = PhysicalMarkerChannel(label=channelName)
				channel.AWG = self.instruments[name]
				self.channels[channelName] = channel

		mapping = {	'digitizerTrig' : 'APS1-12m1',
				    'slaveTrig'     : 'APS1-12m2',
			        'q1'            : 'APS1-12',
					'q1-gate'       : 'APS1-12m3',
					'M-q1'          : 'APS2-12',
					'M-q1-gate'     : 'APS2-12m1',
					'q2'            : 'APS3-12',
					'q2-gate'       : 'APS3-12m1',
					'M-q2'          : 'APS4-12',
					'M-q2-gate'     : 'APS4-12m1',
					'cr'            : 'APS5-12',
					'cr-gate'       : 'APS5-12m1',
					'M-q1q2'        : 'APS6-12',
					'M-q1q2-gate'   : 'APS6-12m1'}

		self.finalize_map(mapping)
示例#5
0
    def setUp(self):
        AWGTestHelper.__init__(self, APS)
        for name in ['APS1', 'APS2', 'APS3']:
            self.instruments[name] = APS(label=name)

            for ch in ['12', '34']:
                channelName = name + '-' + ch
                channel = PhysicalQuadratureChannel(label=channelName)
                channel.AWG = self.instruments[name]
                self.channels[channelName] = channel

            for m in range(1, 5):
                channelName = "{0}-{1}m1".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName)
                channel.AWG = self.instruments[name]
                self.channels[channelName] = channel

        mapping = {
            'digitizerTrig': 'APS1-1m1',
            'slaveTrig': 'APS1-2m1',
            'q1': 'APS1-12',
            'M-q1': 'APS1-34',
            'M-q1-gate': 'APS1-3m1',
            'q1-gate': 'APS1-4m1',
            'q2': 'APS2-12',
            'M-q2': 'APS2-34',
            'M-q2-gate': 'APS2-1m1',
            'q2-gate': 'APS2-2m1',
            'cr': 'APS3-12',
            'cr-gate': 'APS3-1m1',
            'M-q1q2': 'APS3-34',
            'M-q1q2-gate': 'APS3-2m1'
        }

        self.finalize_map(mapping)
示例#6
0
    def setUp(self):
        AWGTestHelper.__init__(self, APS2)
        for name in ['APS1', 'APS2', 'APS3', 'APS4', 'APS5', 'APS6']:
            self.instruments[name] = APS2(label=name)

            channelName = name + '-12'
            channel = PhysicalQuadratureChannel(label=channelName)
            channel.AWG = self.instruments[name]
            self.channels[channelName] = channel

            for m in range(1, 5):
                channelName = "{0}-12m{1}".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName)
                channel.AWG = self.instruments[name]
                self.channels[channelName] = channel

        mapping = {
            'digitizerTrig': 'APS1-12m1',
            'slaveTrig': 'APS1-12m2',
            'q1': 'APS1-12',
            'q1-gate': 'APS1-12m3',
            'M-q1': 'APS2-12',
            'M-q1-gate': 'APS2-12m1',
            'q2': 'APS3-12',
            'q2-gate': 'APS3-12m1',
            'M-q2': 'APS4-12',
            'M-q2-gate': 'APS4-12m1',
            'cr': 'APS5-12',
            'cr-gate': 'APS5-12m1',
            'M-q1q2': 'APS6-12',
            'M-q1q2-gate': 'APS6-12m1'
        }

        self.finalize_map(mapping)
示例#7
0
    def setUp(self):
        AWGTestHelper.__init__(self, APS2Pattern)
        for name in ['APS1', 'APS2', 'APS3', 'APS4', 'APS5', 'APS6']:
            channelName = name + '-1'
            channel = PhysicalQuadratureChannel(label=channelName, channel=0)
            channel.sampling_rate = 1.2e9
            channel.instrument = name
            channel.translator = 'APS2Pattern'
            self.channels[channelName] = channel

            for m in range(1, 5):
                channelName = "{0}-m{1}".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName, channel=m-1)
                channel.sampling_rate = 1.2e9
                channel.instrument = name
                channel.translator = 'APS2Pattern'
                self.channels[channelName] = channel

        mapping = {'digitizerTrig': 'APS1-m1',
                   'slave_trig': 'APS1-m2',
                   'q1': 'APS1-1',
                   'q1-gate': 'APS1-m3',
                   'M-q1': 'APS2-1',
                   'M-q1-gate': 'APS2-m1',
                   'q2': 'APS3-1',
                   'q2-gate': 'APS3-m1',
                   'M-q2': 'APS4-1',
                   'M-q2-gate': 'APS4-m1',
                   'cr': 'APS5-1',
                   'cr-gate': 'APS5-m1',
                   'M-q1q2': 'APS6-1',
                   'M-q1q2-gate': 'APS6-m1'}

        self.finalize_map(mapping)
示例#8
0
	def setUp(self):
		AWGTestHelper.__init__(self, TekPattern)
		for name in ['TEK1', 'TEK2']:
			for ch in ['12', '34']:
				channelName = name + '-' + ch
				channel = PhysicalQuadratureChannel(label=channelName)
				channel.samplingRate = 1.2e9
				channel.AWG = name
				channel.translator = 'TekPattern'
				self.channels[channelName] = channel

			for m in ['1m1', '1m2', '2m1', '2m2', '3m1', '3m2', '4m1', '4m2']:
				channelName = "{0}-{1}".format(name,m)
				channel = PhysicalMarkerChannel(label=channelName)
				channel.samplingRate = 1.2e9
				channel.AWG = name
				channel.translator = 'TekPattern'
				self.channels[channelName] = channel

		mapping = { 'digitizerTrig'	: 'TEK1-1m2',
					'slaveTrig'   	: 'TEK1-2m2',
					'q1'			: 'TEK1-12',
					'M-q1'			: 'TEK1-12',
					'M-q1-gate'		: 'TEK1-1m1',
					'q1-gate'		: 'TEK1-2m1',
					'q2'			: 'TEK1-34',
					'M-q2'			: 'TEK1-34',
					'M-q2-gate'		: 'TEK1-3m1',
					'q2-gate'		: 'TEK1-4m1',
					'cr'            : 'TEK2-12',
					'cr-gate'       : 'TEK2-1m1',
					'M-q1q2'        : 'TEK2-34',
					'M-q1q2-gate'   : 'TEK2-2m1'}

		self.finalize_map(mapping)
示例#9
0
	def setUp(self):
		AWGTestHelper.__init__(self, APS2Pattern)
		for name in ['APS1', 'APS2', 'APS3', 'APS4', 'APS5', 'APS6']:
			channelName = name + '-12'
			channel = PhysicalQuadratureChannel(label=channelName)
			channel.samplingRate = 1.2e9
			channel.AWG = name
			channel.translator = 'APS2Pattern'
			self.channels[channelName] = channel

			for m in range(1,5):
				channelName = "{0}-12m{1}".format(name,m)
				channel = PhysicalMarkerChannel(label=channelName)
				channel.samplingRate = 1.2e9
				channel.AWG = name
				channel.translator = 'APS2Pattern'
				self.channels[channelName] = channel

		mapping = {	'digitizerTrig' : 'APS1-12m1',
				    'slaveTrig'     : 'APS1-12m2',
			        'q1'            : 'APS1-12',
					'q1-gate'       : 'APS1-12m3',
					'M-q1'          : 'APS2-12',
					'M-q1-gate'     : 'APS2-12m1',
					'q2'            : 'APS3-12',
					'q2-gate'       : 'APS3-12m1',
					'M-q2'          : 'APS4-12',
					'M-q2-gate'     : 'APS4-12m1',
					'cr'            : 'APS5-12',
					'cr-gate'       : 'APS5-12m1',
					'M-q1q2'        : 'APS6-12',
					'M-q1q2-gate'   : 'APS6-12m1'}

		self.finalize_map(mapping)
示例#10
0
def assign_to_hw(channels):
    """Assign the channels to physical channels, returning modified channels.
    Use APS1-10. (1 for q1, digitizer, slave; 2 for M-q1, 3=q2, 4=M-q2, 5=cr,...."""
    from QGL.Channels import PhysicalQuadratureChannel, PhysicalMarkerChannel
    for name in [
            'APS1', 'APS2', 'APS3', 'APS4', 'APS5', 'APS6', 'APS7', 'APS8',
            'APS9', 'APS10'
    ]:
        channelName = name + '-1'
        channel = PhysicalQuadratureChannel(label=channelName, channel=0)
        channel.sampling_rate = 1.2e9
        channel.instrument = name
        channel.translator = 'APS2Pattern'
        channels[channelName] = channel

        for m in range(1, 5):
            channelName = "{0}-m{1}".format(name, m)
            channel = PhysicalMarkerChannel(label=channelName, channel=m - 1)
            channel.sampling_rate = 1.2e9
            channel.instrument = name
            channel.translator = 'APS2Pattern'
            channels[channelName] = channel
            # FIXME: Needs a sequence_file and channel somehow?

    mapping = {
        'digitizerTrig': 'APS1-m1',
        'slave_trig': 'APS1-m2',
        'q1': 'APS1-1',
        'q1-gate': 'APS1-m3',
        'M-q1': 'APS2-1',
        'M-q1-gate': 'APS2-m1',
        'q2': 'APS3-1',
        'q2-gate': 'APS3-m1',
        'M-q2': 'APS4-1',
        'M-q2-gate': 'APS4-m1',
        'cr': 'APS5-1',
        'cr-gate': 'APS5-m1',
        'M-q1q2': 'APS6-1',
        'M-q1q2-gate': 'APS6-m1',
        'q3': 'APS7-1',
        'q3-gate': 'APS7-m1',
        'M-q3': 'APS8-1',
        'M-q3-gate': 'APS8-m1',
        'cr2': 'APS9-1',
        'cr2-gate': 'APS9-m1',
        'M-q2q1': 'APS10-1',
        'M-q2q1-gate': 'APS10-m1'
    }

    for name, value in mapping.items():
        channels[name].phys_chan = channels[value]
    return channels
示例#11
0
    def setUp(self):
        AWGTestHelper.__init__(self, APSPattern)
        for name in ['APS1', 'APS2', 'APS3']:
            for ch in ['12', '34']:
                channelName = name + '-' + ch
                channel = PhysicalQuadratureChannel(label=channelName)
                channel.sampling_rate = 1.2e9
                channel.instrument = name
                channel.translator = 'APSPattern'
                self.channels[channelName] = channel

            for m in range(1, 5):
                channelName = "{0}-{1}m1".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName)
                channel.sampling_rate = 1.2e9
                channel.instrument = name
                channel.translator = 'APSPattern'
                self.channels[channelName] = channel

        mapping = {
            'digitizerTrig': 'APS1-1m1',
            'slave_trig': 'APS1-2m1',
            'q1': 'APS1-12',
            'M-q1': 'APS1-34',
            'M-q1-gate': 'APS1-3m1',
            'q1-gate': 'APS1-4m1',
            'q2': 'APS2-12',
            'M-q2': 'APS2-34',
            'M-q2-gate': 'APS2-1m1',
            'q2-gate': 'APS2-2m1',
            'cr': 'APS3-12',
            'cr-gate': 'APS3-1m1',
            'M-q1q2': 'APS3-34',
            'M-q1q2-gate': 'APS3-2m1'
        }

        # override trigger lengths on APS1 to get single blips
        self.channels['slave_trig'].pulse_params['length'] = 0.833e-9
        self.channels['digitizerTrig'].pulse_params['length'] = 0.833e-9
        self.finalize_map(mapping)
示例#12
0
    def setUp(self):
        AWGTestHelper.__init__(self, TekPattern)
        for name in ['TEK1', 'TEK2']:
            for ch in ['12', '34']:
                channelName = name + '-' + ch
                channel = PhysicalQuadratureChannel(label=channelName)
                channel.sampling_rate = 1.2e9
                channel.instrument = name
                channel.translator = 'TekPattern'
                self.channels[channelName] = channel

            for m in ['1m1', '1m2', '2m1', '2m2', '3m1', '3m2', '4m1', '4m2']:
                channelName = "{0}-{1}".format(name, m)
                channel = PhysicalMarkerChannel(label=channelName)
                channel.sampling_rate = 1.2e9
                channel.instrument = name
                channel.translator = 'TekPattern'
                self.channels[channelName] = channel

        mapping = {
            'digitizerTrig': 'TEK1-1m2',
            'slave_trig': 'TEK1-2m2',
            'q1': 'TEK1-12',
            'M-q1': 'TEK1-12',
            'M-q1-gate': 'TEK1-1m1',
            'q1-gate': 'TEK1-2m1',
            'q2': 'TEK1-34',
            'M-q2': 'TEK1-34',
            'M-q2-gate': 'TEK1-3m1',
            'q2-gate': 'TEK1-4m1',
            'cr': 'TEK2-12',
            'cr-gate': 'TEK2-1m1',
            'M-q1q2': 'TEK2-34',
            'M-q1q2-gate': 'TEK2-2m1'
        }

        self.finalize_map(mapping)