Pulse programming

Pulse programming in the field of experimental physics refers to engineering sinusoidal electromagnetic waveforms to have programmable frequencies, phases, and amplitudes. The main techniques and terminology arose in the study of nuclear magnetic resonance (NMR) during the 1970s, but has since been adopted in many other experimental settings, usually associated with quantum computing experiments. These include electron spin resonance (ESR), trapped ions, quantum dots, the phase/flux/charge across a superconducting junctions, and many other quantum bit implementations. Traditionally, pulse programmers were built using hard-wired analog electronics to produce a fixed sequence of waveforms, but modern pulse programmers make use of direct digital synthesis programmable electronics controlled by a personal computer to make precisely reproducible sequences.

Open source pulse programming
There are several commercial pulse programmers available whose designs are proprietary. A notable open source pulse programmer system was originally designed by Paul Pham as part of his master's thesis at MIT under Isaac Chuang. It was first deployed in Rainer Blatt's quantum optics and spectroscopy group at the University of Innsbruck, and was later adopted by the following trapped ion research groups:
 * Tobias Schaetz's quantum analog simulation group at the Max Planck Institute of Quantum Optics, now at the University of Freiburg
 * Piet Schmidt's quantum metrology group at the Physikalisch-Technische Bundesanstalt (PTB), the German national standards body analogous to NIST in the United States.
 * Boris Blinov's ion trap group at the University of Washington in Seattle
 * Hartmut Haeffner's ion trap group at the University of California in Berkeley
 * Tilman Pfau's quantum optics group at the University of Stuttgart
 * Andrew Drewson's ion trap group at the University of Aarhus

Further extensions to the system were designed and implemented by Paul Pham while he resided at 419 Boylston in Seattle, with major contributions from Philipp Schindler at Innsbruck and Lutz Petersen at MPQ. As of 2010, the core part of the pulse programmer system (the FPGA sequencer board) is no longer being actively maintained. However, the Innsbruck group has designed and assembled its own custom DDS boards which generate the actual waveforms that is compatible with the FPGA sequencer board.

A new open source system called ARTIQ is being developed by M-Labs.