Iran’s unveiling of a quantum processing algorithm (according to Google translation) intended to aid its military in detecting disruptions on water surfaces was met with immediate ridicule from Western media due to the hardware showcased. The hardware in question was the Digilent ZedBoard Zynq-7000 hybrid SoC/FPGA development board, which can be purchased for under $600.
While the claim about any practical military application is undeniably preposterous, there might be a tiny bit of truth buried deep down: given that quantum computers are inherently parallel, FPGAs could potentially be suitable for small-scale quantum simulations.
Does this imply that the Iranian Navy would achieve better results by simulating quantum circuits on an FPGA board rather than on a GPU or even a second-hand laptop? Probably not. Will this hardware effectively serve the planned military application in the foreseeable future? Absolutely not! Was this a misleading and laughable moment for a photo opportunity? Yes, definitely.
But is mimicking qubits in FPGA fabric a legitimate practice? As it turns out, it is! Let’s delve deeper into this concept.
Considering that classical computers face significant challenges when running quantum computing algorithms at high speeds, integrating FPGAs might enhance performance for such tasks, as demonstrated in a 2004 publication by A. U. Khalid et al. (also available in PDF format as a master’s thesis) and in An FPGA-based real quantum computer emulator by Jakub Pilch et al.
In the latter article, featuring an insightful overview of the latest developments, Pilch and team describe this approach as a shift from time-based to spatial-based processing — moving away from slow sequential CPU operations to leveraging hardware complexity, exploiting the configurable nature and parallelism inherent to FPGAs.
What’s the catch? FPGAs have a restricted number of cells, and the tradeoff made by Pilch et al in terms of time and space confines them to two qubits. That amounts to only four states, fewer than the number of fingers on one hand. By occupying the entire FPGA, they can essentially implement a two-bit quantum XOR, rendering it impractical for real-world military operations.
Alternatively, Khalid et al’s less parallel method enables simulation of nine qubits on the same FPGA, but it significantly reduces speed and practicality. Both studies indicate that the compromise between speed and FPGA fabric space follows an exponential trend, meaning any FPGA simulation will either be minuscule or sluggish, with no middle ground. For practical simulations, Google suggests utilizing multiple GPUs instead.
The primary appeal of a genuine quantum computer lies in its ability to offer both parallelism and speed, where classical simulations inevitably fall short. This is precisely why we doubt the claims put forth by Iran. Nonetheless, discovering the concept of FPGA-based qubit simulation along the way was enlightening, and any form of simulation is invaluable for learning. If you have an interest but lack an FPGA board, you can explore this concept via your web browser or even with an Arduino if you simply need a prop for show.
Special thanks to [Andrew Wilson] for the insight and references.