IP Library Granted Patent US 12,293,188
Granted Patent B2
US 12,293,188 · App. 17/860,475 · Granted May 6, 2025

Method and apparatus for configuring a reduced instruction set computer processor architecture to execute a fully homomorphic encryption algorithm

Inventors: Morris Jacob Creeger (Santa Clara, CA); Tianfang Liu (Santa Clara, CA); Frederick Furtek (Santa Clara, CA); Paul L. Master (Santa Clara, CA)
Assignee: Cornami, Inc.
G06F9/3812G06F7/4806G06F8/4436G06F17/142
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,293,188
App. No.
17/860,475
Granted
May 6, 2025
Kind
B2
Abstract

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Claims (16)

1. A method for configuring a reduced instruction set computer (RISC) processor architecture to execute a fully homomorphic encryption (FHE) logic gate as a streaming topology, wherein the RISC processor architecture includes a plurality of primary processing cores defined by RISC processors, each primary processing core comprising a main memory, at least one cache memory, and a plurality of arithmetic logic units, each primary processing core having an associated node wrapper, the associated node wrapper including access memory associated with each arithmetic logic unit, a load/unload matrix associated with each arithmetic logic unit, the method comprising:

parsing sequential FHE logic gate code;

transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions;

creating the associated node wrapper around each code module; and

configuring at least one of the primary processing cores to implement a logic element equivalent of each element in a manner which operates in a streaming mode wherein data streams out of the corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

2. The method of claim 1 , wherein the transforming comprises:

locating a pointer in the FHE logic gate code;

backtracking through the FHE logic gate code to find data that was created and an allocated block of data that is pointed to by the pointer;

determining a size of the allocated block;

replacing the pointer with a data array corresponding to the allocated block; and

using the data array as streaming data.

3. A computer processor architecture for executing a fully homomorphic encryption (FHE) logic gate as a streaming topology, the computer processor architecture comprising:

a plurality of primary processing cores defined by reduced instruction set computer (RISC) processors, each primary processing core comprising a main memory, at least one cache memory, and a plurality of arithmetic logic units, each primary core having an associated node wrapper, the associated node wrapper including access memory associated with each arithmetic logic unit, a load/unload matrix associated with each of the arithmetic logic units;

wherein sequential FHE logic gate code has been transformed into a set of code modules that each have an input and an output that is a function of the input and which do not pass control to other functions, the associated node wrapper has been created around each code module; and

wherein at least one of the primary processing cores has been configured architecture to implement a logic element equivalent of each element in a manner which operates in a streaming mode wherein data streams out of the corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

4. The computer processor architecture of claim 3 , wherein the FHE logic gate code was transformed by locating a pointer in the FHE logic gate code, backtracking through the FHE logic gate code to find data that was created and an allocated block of data that is pointed to by the pointer, determining a size of the allocated block, replacing the pointer with a data array corresponding to the allocated block, and using the data array as streaming data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2025
From: CREEGER, MORRIS JACOB; LIU, TIANFANG; FURTEK, FREDERICK CURTIS; MASTER, PAUL
To: CORNAMI INC.
Reel/Frame 070541/0840 →
Continuity (4)
Division 16743257 · Jan 15, 2020
Continuation In Part 15970915 · May 4, 2018
Provisional Application 62883967 · Aug 7, 2019
Related Publication 20220360428A1 · Nov 10, 2022
References Cited (8)
US 20050166033A1 · Jacob · 2005 [cited by applicant]
US 20180336161A1 · Sheikh et al. · 2018 [cited by applicant]
US 20190140818A1 · Bent · 2019 [cited by examiner]
US 20190334694A1 · Chen · 2019 [cited by examiner]
US 20200394287A1 · Mucciolo · 2020 [cited by examiner]
Keith A. Campbell, Robust and Reliable Hardware Accelerator Design Through High-Level Synthesis, 2017, [Retrieved on Dec. 11, 2024]. Retrieved from the internet: <URL: https://www.ideals.illinois.edu/items/105258> 128 P… [cited by examiner]
International Searching Authority, International Search Report and Written Opinion for International Application No. PCT/US20/44944, mailed Jan. 5, 2021. [cited by applicant]
Rahman et al. “Dynamic Range Input FFT Algorithm for Signal Processing In Parallel Processor Architecture.” In: Proceedings of the World Congress on Engineering and Computer Science 2011 vol. I WCECS 2011, Oct. 19, 2011… [cited by applicant]