Litcius/Paper detail

FlexKA: A Flexible Karatsuba Multiplier Hardware Architecture for Variable-Sized Large Integers

Byeongmin Kang, Hyungmin Cho

2023IEEE Access11 citationsDOIOpen Access PDF

Abstract

The Karatsuba algorithm is an effective way to accelerate large integer multiplications through recursive function calls. However, existing hardware implementations of Karatsuba multipliers are limited to fixed operand sizes. To enable their application in diverse domains, including homomorphic encryption with varying multiplicative depths, it is necessary to support variable operand sizes. In this paper, we propose a novel Karatsuba multiplier design, named FlexKA, which supports variable operand sizes through a state machine that manages the dynamic call states of the operation. We evaluate FlexKA on the Xilinx ZynqMP FPGA and demonstrate that it supports variable operand sizes up to 256K bits, achieving a <inline-formula xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink"> <tex-math notation="LaTeX">$9.2\times$ </tex-math></inline-formula> speedup compared to a highly-optimized software library running on a CPU. Our results show that FlexKA is an efficient and effective solution for large integer multiplications with flexible operand sizes in hardware.

Topics & Concepts

OperandComputer scienceMultiplier (economics)Parallel computingSpeedupVariable (mathematics)ArithmeticInteger (computer science)Field-programmable gate arrayHomomorphic encryptionAdderLatency (audio)EncryptionComputer hardwareMathematicsOperating systemEconomicsTelecommunicationsMathematical analysisMacroeconomicsCryptography and Data SecurityCryptography and Residue ArithmeticCoding theory and cryptography
FlexKA: A Flexible Karatsuba Multiplier Hardware Architecture for Variable-Sized Large Integers | Litcius