FPGA-based Digital Quantum Coprocessor

Національний університет "Львівська політехніка", кафедра електронних обчислювальних машин
Національний університет «Львівська політехніка», кафедра електронних обчислювальних машин

Classical quantum computer is an analog probabilistic computer. The digital quantum computer that can be implemented in FPGA has been described in the article. Digital quantum coprocessor is designed to implement algorithms for execution on the analog quantum computers. A digital quantum coprocessor operates under the control of a classical computer and together they are digital quantum computer. The digital quantum coprocessor is a set of digital units called digital qubits that have multi-bit data input and single-bit data output each. The digital qubit is a wave function calculator. Thereis a pseudo random number generator (PRNG) in the described digital qubit to generate the probabilistic output bit. Singlebit qubit output qb has been formed by the probable reduction of its multi-bit result x to single-bit (0 or 1) according to result value x and pseudo random code k (x is an angle which determines the position of normalized vector with length 1 in polar grid, it is a result of multi-bit input data calculation). The decision about output state has been made after the functional conversion of the qubit multi-bit result x to result probability p = sin2x and subsequent comparison p with the pseudo random code k. Qb=1 when k < p. In the article, the inverse variant of decision option with p = arcsin (sqrt (k)) and qb = 1 whenx > p has been described. This variant allows to use one PRNG for all digital qubits. Possible schemes for digital qubit and digital quantum coprocessors based on them have been discussed in the paper. The presentation of data in digital qubits and the basic operations they perform have been also considered. The results of the simulation of a four-qubit digital quantum coprocessor and the results of the qubitimplementation in FPGA have been presented.

[1] Quantum logic gate. https://en.wikipedia.org/wiki/Quantum_logic_gate 08.02.2019.

[2] Quantum computing. https://en.wikipedia.org/wiki/Quantum_computing 08.02.2019.

[3] A Preview of Bristlecone, Google's New Quantum Processor. https://ai.googleblog.com/2018/03/a-preview-of-bristlecone-googles-new.html. 08.02.2019.

[4] Qubit. https://en.wikipedia.org/wiki/Qubit. 08.02.2019.

[5] ETSI White Paper No. 8. Quantum Safe Cryptography and Security. An introduction, benefits, enablers and challenges. June 2015. ISBN No. 979-10-92620-03-0 https://www.etsi.org/images/files/ETSIWhitePapers/QuantumSafeWhitepaper.pdf

[6] NISTIR 8105. L. Chen et al., Report on Post-Quantum Cryptography. National Institute of Standards and Technology. U.S. Department of Commerce.April 2016. https://nvlpubs.nist.gov/nistpubs/ir/2016/NIST.IR.8105.pdf 25.11.2018 г

[7] 9th International IEEE Conference Dependable Systems, Services and Technologies DESSERT'2018 UKRAINE, KYIV, MAY 24-27, 2018

[8] Quantum superposition. https://en.wikipedia.org/wiki/ Quantum_superposition 08.02.2019.

[9] Introduction to Quantum Computing. https://blogs.msdnmicrosoft.com/uk_faculty_connection/2018/02/06/introduction-to-quantum-computing/ 08.02.2019.

[10] Peter W. Shor. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, NM, Nov. 20-22, 1994, IEEE Computer Society Press, pp. 124-134.

[11] Shor's algorithm. https://en.wikipedia.org/wiki/ Shor%27s_algorithm 08.02.2019.

[12] K. A. Valiyev. Kvantovaya informatika: kompyutery. Svyaz i kriptografiya. Vestnik Rossiyskoy akademii nauk. Tom 70, No. 8, p. 688-695 (2000) (In Russian).

[13] Welcome to the Microsoft Quantum Development Kit Preview. https://docs.microsoft.com/ru-ru/quantum/?view=qsharp-preview 08.02.2019

[14] Quantum Fourier transform. https://en.wikipedia.org/wiki/Quantum_Fourier_transform 08.02.2019.

[15] Lucero, Erik; Barends, Rami; Chen, Yu; Kelly, Julian; Mariantoni, Matteo; Megrant, Anthony; O'Malley, Peter; Sank, Daniel; Vainsencher, Amit; Wenner, James; White, Ted; Yin, Yi; Cleland, Andrew N.; Martinis, John M. (2012). «Computing prime factors with a Josephson phase qubit quantum processor». Nature Physics. 8 (10): 719. arXiv:1202.5707. Bibcode:2012NatPh...8..719L.doi:10.1038/nphys2385

[16] Popov B. A.. Tesler G. S. Vychisleniye funktsiy na EVM. Spravochnik. Kiyev: Nauk. dumka, 1984. 59 p. (In Russian).

[17] V. V. Aristov. Integro-algoritmicheskiye vychisleniya. «Nauk. Dumka», 1980. 189 p. (In Russian).

[18] Quantum Computing Playground. http://www.quantumplayground.net/#/home 20.01.2019

[19] A Preview of Bristlecone, Google's New Quantum Processor. https://ai.googleblog.com/2018/03/a-preview-of-bristlecone-googles-new.html 20.01.2019

[20] M. Khalil-Hani, Y. H. Lee, M. N. Marsono. An Accurate FPGA-Based Hardware Emulation on Quantum Fourier Transform. Proceedings of the 13th Australasian Sympo-sium on Parallel and Distributed Computing (AusPDC 2015), Sydney, Australia, 27 - 30 January 2015. Pp. 23 - 30.

[21] Q# techniques - putting it all together | Microsoft Docs (https://docs.microsoft.com/en-us/quantum/techniques/putting-it-all-together?view=qsharp-preview) 08.02.2019

[22] An introduction to Q# - Microsoft's language for quantum computing - General - The freeCodeCamp Forum (https://www.freecodecamp.org/forum/t/an-introduction-to-q-microsoft-s-la...) 08.02.2019

[23] Microsoft's Quantum Programming Language, Q#, Could Help You Learn Quantum Physics | Digital Trends https://www.digitaltrends.com/computing/quantum-microsoft-q/ 08.02.2019

[24] Valeriy Hlukhov. «Kvantovyy kompyuter kak veroya-tnostnyy kompyuter». Shosta mizhnarodna naukova konfe-rencija «Modeljuvannja-2018». September 12-14, 2018 Kyiv, Ukraine. Zbirka pracj konferenciji, p. 111 - 114.

[25] Gushanskiy S. M., Pereverzev V. A. Simulation of Quan-tum Computing using Hardware Cores. Nauchnyy zhurnal KubGAU, No123(09), 2016. pp. http://ej.kubagro.ru/2016/09/pdf/37.pdf

[26] The Mathematics Behind Quantum Computing: Part II. http://www.ams.org/publicoutreach/feature-column/fcarc-quantum-two

[27] LFSR-Random number generator :: Overview. https://opencores.org/projects/lfsr_randgen 14.02.2019.

[28] Pseudo Random Number Generators as synthesizable VHDL code. https://github.com/jorisvr/vhdl_prng 14.02.2019

[29] Spartan-6 Family Overview. DS160 (v2.0) October 25, 2011. Product Specification. https://www.xilinx.com/support/documentation/data_sheets/ds160.pdf 14.02.2019

[30] CPLD. https://www.xilinx.com/products/silicon-devices/cpld/cpld.html 16.02.2019

[31] The D-Wave 2000Q™ Quantum Computer Technology Overview. D-Wave Systems Inc. https://www.dwavesys.com/sites/default/files/D-Wave%202000Q%20Tech%20Collateral_0117F.pdf 19.02.2019

[32] Atomic orbital. https://en.wikipedia.org/wiki/Atomic_orbital 19.02.2019

[33] Physicists control the flip of electron spin. https://phys.org/news/2005-05-physicists-flip-electron.html 19.02.2019

[34] Applying Moore's Law to Quantum Qubits https:// quantumcomputingreport.com/our-take/applying-moores-law-to-quantum-qubits/ Copyright © 2019 Quantum Computing Report, All rights reserved 19.02.2019

[35] BQP https://en.wikipedia.org/wiki/BQP 19.02.2019

[36] Google Unveils 72-Qubit Quantum Computer With Low Error Rates. https://hardware.slashdot.org/story/18/03/05/2156247/google-unveils-72-qubit-quantum-computer-with-low-error-rates 26/02/2019