-
Comparisons
-
Hardware Features
-
Systems
-
Software
-
Company
Knowledge-Base
- Hardware Features
- D/A & AWG Basics
multi-tone DDS mode
DDS – Direct Digital Synthesis – is a method for generating arbitrary periodic waves from a single, fixed-frequency reference clock and is widely used in signal generation applications. The DDS functionality implemented on Spectrum Instrumentation’s AWGs is based on the principle of adding multiple “DDS cores” to generate a multi-carrier (multi-tone) signal, with each carrier having its own well-defined frequency, amplitude and phase. In addition to these static parameters, there are also build in dynamic parameters like frequency and amplitude slope to allow for intrinsic linear changes for multiple cores.
In the simplest case, the user writes the commands frequency and amplitude for a specific DDS core to the card. The card will then output a single periodic sine wave continuously until the user writes a change to the card. These changes are written to the card in the form of commands (see below tables for a list of the available commands) that are added to a First-In-First-Out (FIFO) buffer. These commands are then executed in the order in which they were written to the card.
The right-hand example shows the output of 16 DDS cores with separate fixed frequencies between 50 MHz and 125 MHz with a spacing of 5 MHz
Related Documents
- Application Note: Using Spectrum DDS in Quantum Research
- Application Note: Using Spectrum DDS in different Applications
- Product Note: Using DDS Mode in Detail
Available DDS Commands
Build-in single-line commands:
- Set Frequency of DDS core
- Set Amplitude of DDS core
- Set Phase of DDS core
- Start linear frequency slope for DDS core
- Start linear amplitude slope for DDS core
- Set digital outputs
- Change execution mode
- Set timer for output
Advanced commands consisting of multiple commands
The fast DMA-controlled command transfer from PC to AWG card can send several million DDS commands per second. This opens up a wide flexibility and allows functions like:
- S-Shape frequency/amplitude slopes consisting of multiple linear slope commands
- Custom frequency/amplitude slopes consisting of multiple linear slope commands
- AM modulation consiting of multiple amplitude change commands
- FM modulation consiting of multiple frequency change commands
- FSK (Frequency Shift Keying) modulation consisting of multiple frequency change commands
Example (C++ API)
The following example generates a 110 MHz signal for 100 ms, do a ramp from 110 MHz to 120 MHz within the next 100 ms and then keep the 120 MHz until stopped. general AWG initialization and amplifier settings are not shown here:
|
spcm_dwSetParam_i32 (hCard, SPC_DDS_TRG_SRC, SPCM_DDS_TRG_SRC_TIMER); |
Command FIFO
The DDS functionality is controlled through commands that are written to a driver-internal list and then written to the card when the command SPCM_DDS_CMD_WRITE_TO_CARD is sent. These lists of commands are put onto a First-In-First-Out (command queue) buffer
and executed one after the other. The right hand command queue overview gives an idea how commands are used to generate the different output states of a single DDS core. Commands in the command queue are executed from top to bottom.
The settings are first written to a set of “shadow registers” that are a separate set of registers in parallel to the active DDS configuration registers. One command after the other manipulates the shadow registers until the command SPCM_DDS_CMD_EXEC_AT_TRIG is received, then writing from the FIFO to the shadow registers is stopped and the card starts waiting for the next internal trigger. After a trigger is received the shadow registers are transferred to the active registers.
Timing and Trigger
The DDS commands are written into AWG internal memory and can be executed in three different ways:
- Manual: Commands from the queue are executed with a separate execution command. Timing is solely done by software.
- Triggered: Command execution waits on an external trigger signal. This allows tight interactionn with experiment control.
- Timer: A programmable timer with a very fine time resolution defines the command execution times.
In most cases, a combination of all three modes will be used. Mixing these modes in between a sequence of commands is no problem. The above example shows the usage of the timer
Advantages of multi-tone DDS mode
The DDS mode can be used everywhere, where pure sine signals are needed for the application. Instead of calculating and transfering thousends or even millions of samples to AWG memory, a few simple DDS commands can do the job. The multi-tone DDS mode is especially helpful when controlling Acousto-Optic Deflectors (AOD) and Acousto-Optic Modulators (AOM) as often used in pysics and especially quantum experiments. Using multi-tone sine signals with frequency slopes can move atoms in quantum experiments in an easy way.
This allows optical tweezer manipulation with a few commands from experiment control software.
Comparison of the different DDS mode implementations
The DDS mode is available as option for different AWG series as well as a separate DDS generator model. All implementations are working in the verys same way and offer the same user interface with the same DDS commands. Main difference is the maximum output frequency, the output rate and the number of DDS cores per generator. Depending on the model, the DDS cores can be split between the channels in different ways. The below table shows the series differences. Please refer to the data sheet for more details:
| Feature | M5i.635x, M5i.636x DN2.635-xx, DN2.636x DN6.635-xx |
M5i.632x DN2.632-xx DN6.632-xx |
M4i.663x M4x.663x DN2.663-xx DN6.663-xx |
M4i.662x M4x.662x DN2.662-xx DN6.662-xx |
M4i.962x M4x.962x DN2.962-xx DN6.962-xx |
| Channels per AWG | 1 or 2 | 1 or 2 | 1 or 2 | 1, 2 or 4 | 1, 2 or 4 |
| Bandwidth | 2.5 GHz / 3.9 GHz | 1.2 GHz | 400 MHz | 200 MHz | 200 MHz |
| AWG Mode | Standard | Standard | Standard | Standard | Option |
| AWG output rate | 10 GS/s | 3.2 GS/s | 1.25 GS/s | 625 MS/s | 625 MS/s |
| DDS Mode | Option -DDS64 | Option -DDS64 | Option -DDS20 | Option -DDS20 | Standard |
| DDS Clock Rate | 10 GS/s | 3.2 GS/s | 1.25 GS/s | 1.25 GS/s | 625 MS/s |
| DDS cores on 1 channel | 64 (2.5 GS/s) 32 (5.0 GS/s) 16 (10.0 GS/s) |
64 (2.5 GS/s) 32 (3.2 GS/s) |
20 | 20 | 50 |
| DDS cores on 2 channels | 32/32 (2.5 GS/s) 16/16 (5.0 GS/s) |
32/32 (2.5 GS/s) 16/16 (3.2 GS/s) |
20/1 or 16/5 |
20/1 or 16/5 |
50/0 or 49/1 |
| DDS cores on 4 channels | n.a. | n.a. | n.a. | 20/1/1/1 or 16/5/1/1 or 12/5/5/1 or 8/5/5/5 |
50/0/0/0 or 49/1/0/0 or 48/1/1/0 or 47/1/1/1 |
Series Links
- 63xx AWG with DDS Option up to 2.5 GHz
- M5i.63xx-x16 PCIe -> Series Overview
- DN2.63x-xx Mobile Ethernet -> Series Overview
- DN6.63x-xx Multi-Channel Ethernet -> Series Overview
- 66xx AWG with DDS Option up to 400 MHz
- M4i.66xx-x8 PCIe -> Series Overview
- M4x.66xx-x8 PXIe -> Series Overview
- DN2.66x-xx Mobile Ethernet -> Series Overview
- DN6.66x-xx Multi-Channel Ethernet -> Series Overview
- 96xx DDS Generator up to 200 MHz
- M4i.96xx-x8 PCIe -> Series Overview
- M4x.96xx-x8 PXIe -> Series Overview
- DN2.96x-xx Mobile Ethernet -> Series Overview
- DN6.96x-xx Multi-Channel Ethernet -> Series Overview
Videos about the DDS option
Show on Yuoku