core_addr = "localhost" device_db = { "core": { "type": "local", "module": "artiq.coredevice.core", "class": "Core", "arguments": {"host": core_addr, "ref_period": 1/(8*150e6)} }, "core_log": { "type": "controller", "host": "::1", "port": 1068, "command": "aqctl_corelog -p {port} --bind {bind} " + core_addr }, "core_cache": { "type": "local", "module": "artiq.coredevice.cache", "class": "CoreCache" }, "core_dma": { "type": "local", "module": "artiq.coredevice.dma", "class": "CoreDMA" } } # master peripherals # * None is needed. """ $ artiq_route metlino_routing.bin show 0: 0 1: 2 0 2: 2 1 0 3: 4 0 4: 4 1 0 """ # DEST#1/2, #3/4 peripherals for sayma in range(2): amc_base = (sayma*0x020000) + 0x010000 rtm_base = (sayma*0x020000) + 0x020000 # MCX TTLs on Sayma AMC for i in range(2): device_db["ttl" + str(sayma*2+i)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": amc_base + 4+i}, } # Example on Sayma#1 RTM # BaseMod0 RF switches starting at RTIO channel 0x000000 # BaseMod0 attenuator starting at RTIO channel 0x000004 # BaseMod1 RF switches starting at RTIO channel 0x000009 # BaseMod1 attenuator starting at RTIO channel 0x00000d for basemod in range(2): for i in range(4): device_db["sawg_sw" + str(8*sayma + 4*basemod+i)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": rtm_base + basemod*9 + i} } att_idx = 2*sayma + basemod device_db["basemod_att_rst_n"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": rtm_base + basemod*9 + 4} } device_db["basemod_att_clk"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": rtm_base + basemod*9 + 5} } device_db["basemod_att_le"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": rtm_base + basemod*9 + 6} } device_db["basemod_att_mosi"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLOut", "arguments": {"channel": rtm_base + basemod*9 + 7} } device_db["basemod_att_miso"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.ttl", "class": "TTLInOut", "arguments": {"channel": rtm_base + basemod*9 + 8} } device_db["basemod_att"+str(att_idx)] = { "type": "local", "module": "artiq.coredevice.basemod_att", "class": "BaseModAtt", "arguments": { "rst_n": "basemod_att_rst_n"+str(att_idx), "clk": "basemod_att_clk"+str(att_idx), "le": "basemod_att_le"+str(att_idx), "mosi": "basemod_att_mosi"+str(att_idx), "miso": "basemod_att_miso"+str(att_idx), } }