eQASM: An Executable Quantum Instruction Set Architecture

A widely-used quantum programming paradigm comprises of both the data flow and control flow. Existing quantum hardware cannot well support the control flow, significantly limiting the range of quantum software executable on the hardware. By analyzing the constraints in the control microarchitecture, we found that existing quantum assembly languages are either too high-level or too restricted to support comprehensive flow control on the hardware. Also, as observed with the quantum microinstruction set QuMIS [1], the quantum instruction set architecture (QISA) design may suffer from limited scalability and flexibility because of microarchitectural constraints. It is an open challenge to design a scalable and flexible QISA which provides a comprehensive abstraction of the quantum hardware. In this paper, we propose an executable QISA, called eQASM, that can be translated from quantum assembly language (QASM), supports comprehensive quantum program flow control, and is executed on a quantum control microarchitecture. With efficient timing specification, single-operationmultiple-qubit execution, and a very-long-instruction-word architecture, eQASM presents better scalability than QuMIS. The definition of eQASM focuses on the assembly level to be expressive. Quantum operations are configured at compile time instead of being defined at QISA design time. We instantiate eQASM into a 32-bit instruction set targeting a seven-qubit superconducting quantum processor. We validate our design by performing several experiments on a two-qubit quantum processor. © 2019 IEEE.

[1]  Alfred V. Aho,et al.  A layered software architecture for quantum computing design tools , 2006, Computer.

[2]  Thomas Alexander,et al.  Qiskit Backend Specifications for OpenQASM and OpenPulse Experiments , 2018, ArXiv.

[3]  Stamatis Vassiliadis,et al.  Microcode Processing: Positioning and Directions , 2003, IEEE Micro.

[4]  Stéphane Beauregard Circuit for Shor's algorithm using 2n+3 qubits , 2003, Quantum Inf. Comput..

[5]  Andrew W. Cross,et al.  Investigating the limits of randomized benchmarking protocols , 2013, 1308.2928.

[6]  Ling Hu,et al.  Quantum error correction and universal gate set operation on a binomial bosonic logical qubit , 2018, Nature Physics.

[7]  Martin Rötteler,et al.  Q#: Enabling Scalable Quantum Computing and Development with a High-level DSL , 2018, RWDSL2018.

[8]  Frederic T. Chong,et al.  Quantum rotations: a case study in static and dynamic machine-code generation for quantum computers , 2013, ISCA.

[9]  M. A. Rol,et al.  Active resonator reset in the nonlinear dispersive regime of circuit QED , 2016, 1604.00916.

[10]  Xiang Fu,et al.  A Microarchitecture for a Superconducting Quantum Processor , 2018, IEEE Micro.

[11]  Edward A. Lee Computing needs time , 2009, CACM.

[12]  Margaret Martonosi,et al.  ScaffCC: Scalable compilation and analysis of quantum programs , 2015, Parallel Comput..

[13]  Michael J. Flynn,et al.  Some Computer Organizations and Their Effectiveness , 1972, IEEE Transactions on Computers.

[14]  L. DiCarlo,et al.  Scalable Quantum Circuit and Control for a Superconducting Surface Code , 2016, 1612.08208.

[15]  Koen Bertels,et al.  An Experimental Microarchitecture for a Superconducting Quantum Processor , 2017, 2017 50th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[16]  H. Neven,et al.  Characterizing quantum supremacy in near-term devices , 2016, Nature Physics.

[17]  Margaret Martonosi,et al.  Compiler Management of Communication and Parallelism for Quantum Computation , 2015, ASPLOS.

[18]  Mark Oskin,et al.  An evaluation framework and instruction set architecture for ion-trap based quantum micro-architectures , 2005, 32nd International Symposium on Computer Architecture (ISCA'05).

[19]  Koen Bertels,et al.  Pauli frames for quantum computer architectures , 2017, 2017 54th ACM/EDAC/IEEE Design Automation Conference (DAC).

[20]  J. Whitfield,et al.  Simulating chemistry using quantum computers. , 2010, Annual review of physical chemistry.

[21]  M. A. Rol,et al.  Repeated quantum error correction on a continuously encoded qubit by real-time feedback , 2015, Nature Communications.

[22]  Lloyd,et al.  Almost any quantum logic gate is universal. , 1995, Physical review letters.

[23]  Joseph Emerson,et al.  Scalable and robust randomized benchmarking of quantum processes. , 2010, Physical review letters.

[24]  Peter Selinger,et al.  Towards a quantum programming language , 2004, Mathematical Structures in Computer Science.

[25]  Krysta Marie Svore,et al.  LIQUi|>: A Software Design Architecture and Domain-Specific Language for Quantum Computing , 2014, ArXiv.

[26]  Mingsheng Ying,et al.  Foundations of Quantum Programming , 2016 .

[27]  A. Ekert,et al.  Universality in quantum computation , 1995, Proceedings of the Royal Society of London. Series A: Mathematical and Physical Sciences.

[28]  M. Mariantoni,et al.  Surface codes: Towards practical large-scale quantum computation , 2012, 1208.0928.

[29]  S. Debnath,et al.  Demonstration of a small programmable quantum computer with atomic qubits , 2016, Nature.

[30]  Mazyar Mirrahimi,et al.  Extending the lifetime of a quantum bit with error correction in superconducting circuits , 2016, Nature.

[31]  C. K. Andersen,et al.  Rapid High-fidelity Multiplexed Readout of Superconducting Qubits , 2018, Physical Review Applied.

[32]  M. A. Rol,et al.  Independent, extensible control of same-frequency superconducting qubits by selective broadcasting , 2015, npj Quantum Information.

[33]  С.И. Доронин,et al.  РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ НА КВАНТОВОМ ПРОЦЕССОРЕ IBM QUANTUM EXPERIENCE , 2020 .

[34]  L. DiCarlo,et al.  Demonstration of two-qubit algorithms with a superconducting quantum processor , 2009, Nature.

[35]  William J. Zeng,et al.  A Practical Quantum Instruction Set Architecture , 2016, ArXiv.

[36]  K. Bertels,et al.  cQASM v1.0: Towards a Common Quantum Assembly Language , 2018, 1805.09607.

[37]  Matthias Troyer,et al.  ProjectQ: An Open Source Software Framework for Quantum Computing , 2016, ArXiv.

[38]  Krysta Marie Svore,et al.  Repeat-until-success: non-deterministic decomposition of single-qubit unitaries , 2013, Quantum Inf. Comput..

[39]  M. Reed Entanglement and Quantum Error Correction with Superconducting Qubits , 2013, 1311.6759.

[40]  B. Terhal Quantum error correction for quantum memories , 2013, 1302.3428.

[41]  Andrew W. Cross,et al.  Open Quantum Assembly Language , 2017, 1707.03429.

[42]  C. C. Bultink,et al.  Feedback control of a solid-state qubit using high-fidelity projective measurement. , 2012, Physical review letters.

[43]  Alexei Y. Kitaev,et al.  Quantum measurements and the Abelian Stabilizer Problem , 1995, Electron. Colloquium Comput. Complex..

[44]  Li Zhou,et al.  $Q|SI\rangle$: A Quantum Programming Environment , 2017, 1710.09500.

[45]  R. Feynman Simulating physics with computers , 1999 .

[46]  Xiang Fu,et al.  A heterogeneous quantum computer architecture , 2016, Conf. Computing Frontiers.

[47]  D. Schuster,et al.  Speedup for quantum optimal control from automatic differentiation based on graphics processing units , 2016, 1612.04929.

[48]  Li Zhou,et al.  Q|SI〉: A Quantum Programming Environment , 2017, Symposium on Real-Time and Hybrid Systems.

[49]  Moinuddin K. Qureshi,et al.  Taming the Instruction Bandwidth of Quantum Computers via Hardware-Managed Error Correction , 2017, 2017 50th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[50]  John Preskill,et al.  Quantum computing and the entanglement frontier , 2012, 1203.5813.

[51]  Charles H. Bennett,et al.  Teleporting an unknown quantum state via dual classical and Einstein-Podolsky-Rosen channels. , 1993, Physical review letters.

[52]  J. Werschnik,et al.  Quantum optimal control theory , 2007, 0707.1883.

[53]  Brian Donovan,et al.  Hardware for dynamic quantum computing. , 2017, The Review of scientific instruments.

[54]  John Preskill,et al.  Quantum Computing in the NISQ era and beyond , 2018, Quantum.

[55]  Lov K. Grover A fast quantum mechanical algorithm for database search , 1996, STOC '96.

[56]  D. E. Savage,et al.  A programmable two-qubit quantum processor in silicon , 2017, Nature.

[57]  Margaret Martonosi,et al.  Programming languages and compiler design for realistic quantum hardware , 2017, Nature.

[58]  John E. Stone,et al.  OpenCL: A Parallel Programming Standard for Heterogeneous Computing Systems , 2010, Computing in Science & Engineering.