Abstract:
Quantum computers promise to accelerate solving problems that are intractable by classical computers, such as prime factorization and quantum chemistry simulation. It has been demonstrated that a single quantum system can integrate more than fifty noisy solid-state qubits and surpass contemporary classical computers in specific computing tasks, marking the arrival of the noisy intermediate-scale quantum (NISQ) era. As more and more qubits can be integrated into a single system, how to integrate qubits with control hardware, software development environment, and classical computing resources to obtain a complete and usable quantum computing system is a problem that needs to be further clarified. By comparing both the control and execution of quantum and classical computing, this paper proposes a heterogeneous quantum-classical system targeting the NISQ technology. Taking a typical NISQ algorithm (the iterative phase estimation algorithm) as an example, this paper introduces the whole process of executing a quantum algorithm and related software and hardware, including the high-level programming language, compiler, quantum software and hardware interface, and control microarchitecture. On top of it, this paper discusses the challenges confronting each layer in the NISQ era. This paper aims to provide a general introduction of quantum computing systems to readers (especially beginners of quantum computing) from an engineering perspective, hoping to promote people’s understanding of the overall architecture of quantum computing systems in the NISQ era and stimulate more related research.