<p>ARTIQ (Advanced Real-Time Infrastructure for Quantum physics) is a next-generation control system for quantum information experiments. It is being developed in partnership with the <ahref="http://www.nist.gov/pml/div688/grp10/index.cfm">Ion Storage Group</a> at NIST, and its applicability reaches beyond ion trapping.</p>
<p>Modern research on quantum information systems poses particular challenges to the control system:
<ul>
<li>dozens of signals need to be received and generated with extremely precise timing, in particular to ensure phase coherence</li>
<li>quantum error correction schemes require very low reaction latency in response to a measurement</li>
<li>real-world implementations of quantum gates, and a fortiori quantum algorithms, involve structurally complex protocols</li>
<li>ever-improving experimental techniques drive the need for a flexible and programmable system</li>
<li>the diversity of equipment, device drivers and data analysis software involved in a single experiment results in a distributed and multi-platform environment</li>
<p>ARTIQ features a high-level programming language, based on Python, that helps describing complex experiments. It is compiled and executed on dedicated FPGA hardware with nanosecond timing resolution and sub-microsecond latency.</p>
<p>The time-critical code (a <i>kernel</i>) running on the FPGA (the <i>core device</i>) is easily interfaced with Python code on the computer using a remote procedure call (RPC) mechanism.</p>
<p>The FPGA design is highly portable so that it can adapt to different laboratory setups and resist hardware obsolescence.</p>
<p>ARTIQ drivers for non-realtime devices can be run on remote machines with different operating systems.</p>
<p>The project also includes a graphical user interface, an experiment scheduling system, and databases for experiments, devices, parameters and results.</p>
<p>Technologies employed include <ahref="http://python.org">Python</a>, <ahref="../gateware.html">Migen</a>, <ahref="../gateware.html">MiSoC</a>/<ahref="https://github.com/openrisc/mor1kx">mor1kx</a>, <ahref="http://llvm.org">LLVM</a> and <ahref="https://github.com/numba/llvmlite">llvmlite</a>.</p>
<p>Another goal of ARTIQ is to streamline and simplify the design flow of quantum physics instrumentation by promoting design reuse through the development of platform-independent, open-source hardware and software.</p>
<p>Our aim is to provide a control system suitable for the challenges of modern quantum information research, which is based on modular, parameterized and open components that allow physicists to rapidly design and deploy new experiments.</p>
<p>It's easy to find out by yourself! The core device is based on the resource-efficient MiSoC system-on-chip design, and you can use a limited version of ARTIQ with the small and low-cost <ahref="http://papilio.cc/">Papilio Pro</a> board. Feel free to send feedback to the mailing list!</p>
<ul>
<li><ahref="manual/installing.html">Install from sources</a> (be prepared to compile software and FPGA bitstreams)</li>
or
<li>Install from pre-compiled binaries</li>
<p>First you need to flash your Papilio Pro board with pre-compiled binaries</p>
<ul>
<li>Download the binaries<pre>$ wget http://m-labs.hk/artiq/binaries/binary_package.tar.gz</pre></li>
<li>Extract them<pre>$ tar xzf binary_package.tar.gz</pre></li>
<li>Flash your Papilio Pro board<pre>$ cd binary_package && ./flash -a</pre></li>
</ul>
<p>Installing host-side ARTIQ software on your Windows or Linux computer is quick and easy since it can be installed via <ahref="http://conda.pydata.org/">Conda packages</a> as part of the <ahref="https://store.continuum.io/cshop/anaconda/">Anaconda</a> scientific computing Python distribution:</p>