Hardware implementation of digital memcomputing on small-size FPGAs
Dyk Chung Nguyen, Yuan-Hang Zhang, Massimiliano Di Ventra, Yuriy V. Pershin
TL;DR
This paper addresses solving combinatorial optimization via digital memcomputing machines (DMMs) by implementing a 3-SAT solver on a low-cost FPGA. It presents the DMM ODEs with continuous variables and memory per clause, then demonstrates a hardware realization using a hybrid forward-Euler integration scheme that partially parallelizes the computation. The authors report a 1–2 order of magnitude speed-up over a CPU-based Python implementation and provide scalability analyses suggesting that modern FPGAs could handle substantially larger problem sizes (tens to hundreds of thousands of variables) with continued hardware acceleration benefits. The work establishes hardware memcomputing as a viable approach for fast, scalable combinatorial optimization and highlights concrete roadmap steps for deployment on larger FPGA platforms and further architectural optimizations.
Abstract
Memcomputing is a novel computing paradigm beyond the von-Neumann one. Its digital version is designed for the efficient solution of combinatorial optimization problems, which emerge in various fields of science and technology. Previously, the performance of digital memcomputing machines (DMMs) was demonstrated using software simulations of their ordinary differential equations. Here, we present the first hardware realization of a DMM algorithm on a low-cost FPGA board. In this demonstration, we have implemented a Boolean satisfiability problem solver. To optimize the use of hardware resources, the algorithm was partially parallelized. The scalability of the present implementation is explored and our FPGA-based results are compared to those obtained using a python code running on a traditional (von-Neumann) computer, showing one to two orders of magnitude speed-up in time to solution. This initial small-scale implementation is projected to state-of-the-art FPGA boards anticipating further advantages of the hardware realization of DMMs over their software emulation.
