Intel HEXL for FPGA
Intel Homomorphic Encryption FPGA Acceleration Library, accelerating the modular arithmetic operations used in homomorphic encryption.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Functions
hexl-fpga.h File Reference
#include <cstdint>

Go to the source code of this file.

Namespaces

 intel
 
 intel::hexl
 

Functions

void intel::hexl::acquire_FPGA_resources ()
 Function acquire_FPGA_resources Called without any parameter, reserves the FPGA hardware resources. More...
 
void intel::hexl::release_FPGA_resources ()
 Function release_FPGA_resources Called without any parameter, releases the FPGA hardware resources once we are done. More...
 
void intel::hexl::set_worksize_DyadicMultiply (uint64_t ws)
 Function set_worksize_DyadicMultiply Reserves software resources for the multiplication. More...
 
void intel::hexl::DyadicMultiply (uint64_t *results, const uint64_t *operand1, const uint64_t *operand2, uint64_t n, const uint64_t *moduli, uint64_t n_moduli)
 Function DyadicMultiply Executes ciphertext ciphertext multiplication. More...
 
bool intel::hexl::DyadicMultiplyCompleted ()
 Function DyadicMultiplyCompleted Executed after ciphertext ciphertext multiplication to wrap up the task. More...
 
void intel::hexl::set_worksize_NTT (uint64_t ws)
 Function set_worksize_NTT Reserves software resources for the Number Theoretic Transform. More...
 
void intel::hexl::NTT (uint64_t *operand, const uint64_t *root_of_unity_powers, const uint64_t *precon_root_of_unity_powers, uint64_t coeff_modulus, uint64_t n)
 Function NTT Executes in place the Number Theoretic Transform. More...
 
bool intel::hexl::NTTCompleted ()
 Function NTTCompleted Executed after the NTT to wrap up the computation No parameters. More...
 
void intel::hexl::set_worksize_INTT (uint64_t ws)
 Function set_worksize_INTT Reserves software resources for the inverse Number Theoretic Transform. More...
 
void intel::hexl::INTT (uint64_t *operand, const uint64_t *inv_root_of_unity_powers, const uint64_t *precon_inv_root_of_unity_powers, uint64_t coeff_modulus, uint64_t inv_n, uint64_t inv_n_w, uint64_t n)
 Function INTT Executes in place the inverse Number Theoretic Transform. More...
 
bool intel::hexl::INTTCompleted ()
 Function INTTCompleted Executed after the INTT to wrap up the computation No parameters. More...