The Spectrum Card

This software is based around the Spectrum M4i.6631-x8 AWG device. Specifically, the one found in LL104-Campbell; installed directly to the motherboard of CavityQED, an E6 owned desktop computer.

You can read the official manual, or otherwise look below for a concise snapshot of the most essential properties, relevant for operating the software.

Numerical Specifications

Property

Value

Resolution

16 bits

Sampling Frequency

up to 1.25 GS/s

Board Memory

4,294,967,296 B

Data Transfer Rate

2.5 GB/s

Feature Descriptions

SAMP_FREQ

Implemented as a constant at the top of the source file Allows for setting a specific sampling frequency. Can be anything less than or equal to the Sampling Frequency limit (above table). The card tries its best to match your requested value.

mode

Operational mode of the card. E.g. continuous or sequential for looping a single waveform or defining a triggered sequence.

amplitude

Sets the output voltage limit of the 16 bit digital values. Ultimately limited to the range [80 - 2000](mV) inclusive.

ch0 / ch1

Indicates whether or not to activate the numbered channel.

use_filter

Indicates whether to apply low-pass filter for smoothing the output.

timeout

Only relevant for continuous mode. How long the output loops (ms) before terminating.

Programmatic Configuration

The software is designed such that one establishes a connection to the board by instantiating a Card object, which acts as the handle to the board:

hCard = Card(mode)

Depending on which value is passed for mode, you can access 2 different operational modes.

setup_channels() you need to select which channels to activate, with what voltage, and whether to low-pass filter:

hCard.setup_channels(amplitude=200, ch0=False, ch1=True, use_filter=True)

Finally, you send data to the board; the nature of which depends on the selected mode.

continuous

sequential